はじめに
本書籍は、ざっと本質的な事項を知るには良い書籍だと思います。
ポイント
第Ⅰ部 55の真実
真実1 ソフトウェアの開発で最も重要なことは、プログラマが使うツールや技法ではなく、プログラマ自身の質である。
真実2 最も優秀なプログラマは最悪に比べ、28倍優れている。
真実3 遅れているプロジェクトに人を追加すると、もっと遅れる。
「ブルックスの法則」
真実4 作業する環境は、プログラムの生産性や品質に極めて大きく影響する。
真実8 プロジェクトが大失敗する原因には2つある、一つは見積りミスだ。
真実11 プロジェクトが進むに従って、見積りを調整することは、まずない。従って、不適切な時期に不適切な人間が実施した見積りを修正することは、ほとんどない。
真実21 対象となる問題の複雑度が25%増加するたびに、ソフトウェアによる解法の複雑度は100%上昇する。
真実23 プロジェクトが失敗する2つの原因のうち、もう一つは、仕様を確定(仕様を凍結)できないことだ。
真実33 100%のテスト網羅が可能でも、完全テストとは言えない。バグの約35%は、パスの抜けが原因であり、40%はパスの特定の組み合わせを実行したときに起きる。このバグは、バスを100%カバーしてお検出できない。
真実41 保守には、ソフトウェアのコストの40%~80%(平均60%)がかかる。従って、ソフトウェア・ライフサイクルの最重要フェーズである。
真実42 ソフトウェアのライフサイクルの保守期間におけるバグ修正は17%に過ぎない。その他は不良修正ではなく、新しい機能を追加する作業である。
真実49 バグは固まって存在する。
真実52 プログラムの処理効率には、よいコーディングよりも、よい設計が大きく影響する。
真実54 プログラムの大きさと処理時間には、トレードオフがある。片方をよくすると、片方が悪くなる。
第Ⅱ部 5+5のウソ
ウソ1 計測できないものは管理できない。
正しくは「計測できないものは制御できない」
ウソ2 ソフトウェア製品の品質は管理できる。
ウソ4 ツールや技法は、どんな状況でも適用できる。
ウソ6 コストやスケジュールを予測する場合、まずソースコードの行数を見積もる。
ウソ7 ランダム・テストにより、テストを最適化できる。
ウソ8 多くの目にさらせば、バグは枯れる。
ウソ10 プログラムをどう書くのかを見せれば、プログラムの方法を教えられる。
書誌情報
- 書籍名:ソフトウェア開発 55の真実と10のウソ
- 著者:ロバート・L・グラス
- 出版社:日経BP社
- ISBN:4-8222-8190-6