この前、A氏と単体テストと結合テストの話をしたんですが。
楽譜=仕様書
演奏=コーディング
って前から思ってたんですが、もうちょっと敷衍して
楽譜=仕様書
演奏者=単体クラス
合奏=アプリ
みたいな。
正しい仕様書があって、演奏者個人個人が完璧に楽譜をさらっていれば、合奏したとき一発であうはずじゃん! 的な。でも実際にはそうならなくて。合奏してみたらリズムがずれたとか、少し解釈が間違っていたとか、そういったことで、指揮者や指導者に演奏ストップされて注意されて。
ソフト開発でも一緒だよなー。単体テストが通っていても、結合テストでうまくいかないとか。だから、指揮者みたいな、マネージャとかが必要なのだが。肥大化したアプリを全部把握できる人って、必要なんだよね。