masayuki5160's diary

滋賀県大津市に住むソフトウェアエンジニアの日常

ドキュメントって、どこまで書けば良いの? ━ ソフトウェア工学チャンネル

はじめに

ソフトウェア開発の現場でよく議論されるテーマ、それは「ドキュメントをどこまで書くべきか?」ではないでしょうか。[00:02] この記事では、この永遠の課題に対するヒントを、現場での経験を基に考察していきます。

なお、本記事は以下Youtubeチャンネルの内容をもとに、Geminiに動画の内容をまとめてもらったことを記載しています。

 

www.youtube.com

現場でよくある課題

  • 設計書の範囲: 外部設計、内部設計、どこまで詳細に書くべきか? [01:03]
  • ドキュメント作成にかける時間: どこまで時間をかけるべきか? [01:17]
  • リソースの制約: 時間や人員が限られている中で、どこまでドキュメントに割くべきか? [02:51]
  • リスクの認識: ドキュメント作成を怠った場合のリスクをどう評価するか? [04:02]

背景と問題点

  • リソースの制約: 時間や人員の制約がある中で、ドキュメント作成にどこまでリソースを割くべきか。 [02:51]
  • プロダクトと事業の状況: プロダクトのフェーズや事業規模によって、必要なドキュメントの範囲は変わる。[03:09]
  • リスクの認識: ドキュメント作成を怠った場合、認識の齟齬による不具合発生のリスクがある。[04:13]

アンチパターン

  • チームのスキルに依存したドキュメント: チームのスキルが高い場合、簡易な設計書で済ませてしまうことがあるが、チームに新しいメンバーが加わった場合などに、認識のずれが生じやすい。[05:35]
  • ドキュメント作成のスケジュール不足: ドキュメント作成に必要なリソースを確保せずにスケジュールを立ててしまうと、後々問題が発生する。[07:42]

どうすればいいのか?

絶対的な正解はありません。プロダクトの状況、事業のフェーズ、チームのスキルなどを総合的に考慮し、バランスを取りながら判断する必要があります。[08:45]

  1. プロダクトと事業の状況: プロダクトのフェーズ、規模、事業の状況によって、必要なドキュメントの範囲は変わります。 [09:00]
  2. チームの状態: チームのスキルレベルや経験によって、必要なドキュメントの粒度は異なります。 [09:11]
  3. 将来の運用: 今後どのようにソフトウェアが運用されていくかを考慮して、ドキュメントの範囲を決める必要があります。 [09:44]

改善策

  • ドキュメント作成はソフトウェア開発の重要な工程: ドキュメント作成は、ソフトウェア開発における必須の作業であることを関係者と共有し、スケジュールに組み込むようにしましょう。[10:51]
  • ドキュメント作成を軽視することのリスク: ドキュメント作成を軽視すると、将来的に技術的負債となる可能性があります。 [11:19]

まとめ

ドキュメントをどこまで書くべきかという問題に、明確な答えはありません。 しかし、ドキュメント作成はソフトウェア開発において不可欠な作業であり、軽視すると将来的に負債となる可能性があることを理解しておく必要があります。[12:15] プロダクトや事業の状況、チームのスキルなどを考慮し、バランスを取りながらドキュメントの範囲を決めるようにしましょう。

masaytan.com