ソフトウェア危機
ソフトウェア危機は(少なくとも一部は)様々な手法や方法論の開発によって解決されてきつつある。
オブジェクト指向、カプセル化
構造化プログラミング
ガベージコレクション
アジャイルソフトウェア開発
マルチスレッド・プログラミング
ソフトウェアコンポーネント
ソフトウェアプロトタイピング
デザインパターン
統合開発環境、RAD
バグ管理システム、バージョン管理システム
反復型開発
Model View Controller
しかしフレデリック・ブルックスが『銀の弾などない』で記している通り、「本質的な複雑性」に対して生産性を向上させるような技法は存在しないと言われている。