開発ポリシー

ソフトウェア設計書は書くべきか


私は職業柄、いろんなソフトウェア開発の現場を見てきました。
その経験で強く思うのは、まともな設計書作成ができる、あるいはやろうとする組織が極めて少ないということです。
まあ、ソフトウェアによっては設計書は不要というものはあるでしょう。 ただ、大部分のソフトウェアはバージョンアップなどの保守がつきものです。 よほど小規模のソフトウェアでない限り、その時になって困ることになります。 機能拡張や保守のために、多大な労力を費やしているところが非常に多いと感じています。
ここで、多大と言っているのは私の目から見ての話で、実際に作業している人物にはその意識がないのかもしれません。 効率的な組織を見た経験がないためにソフトウェア開発とはこんなもんだと思っている、 あるいは前任者がやったことだから仕方がないと諦めています。
本当にしょうがないんでしょうか。少なくとも自分ができるところから始めれば…と思います。

こういうことを言うと、役にも立たないドキュメントを無理やり作らせる、口やかましい品質保証部門の人間のような印象を持たれるかもしれません (すみません、私、実際に品質保証部門にいたこともあります)。
決してそういうことではなく、不要なものは作成しない、本当に必要な文書のみを着実に作成するということです。 その意味で、私のポリシーには以下に示すように一見相矛盾するように見えます。しかし、良く読んでいただければおわかりいただけるかと思います。

■ ソースにコメントは書くな

■ ソースにコメントを書け。ソースコードもドキュメントだ

■ 設計書は書くな

■ 設計書を書け