銀の弾などない
プログラマにまったく新しい思考法 (オブジェクト指向の考え方) で考えるよう再教育しなければならないなど、事前に多額の投資が必要であり、さらに効果が目に見える形で現れるまで時間がかかる。 「オブジェクト指向テクニックは、最初や二度目のプロジェクト開発を速めるのではない。そのファミリーで五度目にあたるものなら、猛烈に速く進むことだろう」(ジェームズ・コギンズ) とはいえ、多くの組織でC++をCの代わりに採用する動きがあり、ゆっくりとではあるが着実に情況は前に向けて進んでいるようである。 再利用可能なプログラムコードの開発には、1回限りのプログラムコードの開発と比べて、2倍、3倍の労力がかかる。 再利用可能なプログラムコードの開発には、優れた設計と優秀な文書の両方が必要である (デイビッド・パーナス) 。 再利用可能なプログラムコードを利用するためには、そのプログラムコードについて学習する必要がある。 プログラムコードの再利用は、企業内では特に大規模な企業において精力的に行われている傾向がある (ケーパーズ・ジョーンズ) 。 市場では再利用可能なプログラムコードがいくつか流通している (ケーパーズ・ジョーンズ) 。
プログラム検証には労力がかかる。そのため、全ての開発対象を検証することはできず、一部の重要なプログラムを検証することしかできない。 また、たとえプログラムを検証したとしても、それは、プログラムが仕様書通りに実装されていることを証明するだけであり、仕様書にバグがないことを証明するわけではない。
プログラム開発の本質の多くの部分は、仕様書のデバッグである。
完全で一貫した仕様書に到達することは、非常に難しい作業である。
購入できるものをあえて構築しないようにするために、市場を活用するべきである。