Q. いつできるの?
A. ぶっちゃけ、よくわからない (見積りは間違える)
そもそも、ソフトウェア開発には不確実性がつきものです。
まず、仕様が不確かな場合が多い。
合わせて、技術的に不確かなことがあります。
上記の都合を無視して、開発スケジュールを強行すると、品質が犠牲になります。
つまり、とても使いづらく、保守性が低いソフトウェアになります。
また、チームの誰かが徹夜でバグだらけのプログラムを作るようになります。
トレードオフの構造
- スコープ (コードの大きさ/機能の多さ)
- 費用 (チームの人数/エンジニアのレベル)
- 期間 (開発期間)
この3つのバランスで、ソフトウェアの品質は決まります。
今回の「いつできるの?」については、期間の話をしています。
期間は、スコープと費用に依存します。
期間を優先すると、品質が犠牲になります。
The “Broken Iron Triangle” Software Development Anti-pattern
最大のリスク
ソフトウェア開発において最大のリスクは、間違ったプロダクトを作ることです。
つまり、誰も望まないものを作ることです。
おすすめ
できるだけ早く「できあがる」ほうがいいわけです。
そのためには、トレードオフの構造を理解し、スコープを小さくし、小さいチーム(費用)で開発するべきです。