こちらから持ってきました
Google のソフトウェア・エンジニアリング
「書く」のは特別な道具
[例:作成するライブラリの名前は]
[何を実現するの?]
[どんな背景があるから実現するの?]
[コードだけでは分からない作成物のアーキテクチャを画像などで]
[連絡先が大切。誰が参加するのかを明らかにしよう]
[事前に仕様が決まっていたら]
[既存のものと何が違うのか、比較対象の仕様があれば言えるだろう。]
[関連する仕様があれば]
[各クラスの概要を書く。]
[各クラスのインターフェイスの概要。hファイルや、javadocやpod形式かな。関数や構造体を定義するコードとコメント。]
[「どのように処理をおこなうか」を各関数内の処理フローを上記で説明したインターフェイスに基づき、自然言語で詳細に書く]
[おもにサンプルコード]
[考えられる問題と、それに対する対処方法]
[事前にわかっている様々な課題]
[思いついたテストを思いついただけ書く] [テストケースの記述] [運用時の考慮。障害の発見方法や、復旧方法など]
[参考文献を書く]
[サーバのアドレスや位置]
[編集日、編集者、何をしたのか、の3つ組を書く]