様々なソフトウェア開発を経験してきた視点から、開発、マネジメント、経済などについて書いています。タイトルは、あるレトロゲームからのオマージュ。ツイッターアカウントはこちら。小難しいソフトウェア工学の知識がなくても読める開発プロジェクトの運営に役立つ情報を書いていきたいと思います。ソフトウェアの開発の現場では、実に様々な問題が起きますが、マネージャたちの開発規模への不理解に由来する問題は、意外に多いと感じています。開発規模が大きく変われば、開発手法、プロジェクトの運営方法などを変えないといけません。ソフトウェア開発は見積もりが非常に難しく、ひとつ前のプロジェクトを参考に、計画を立ててしまうことがよくあります。(私が以前働いていた職場では、計画も立てずに見切り発車してしまうプロジェクトさえありました。製造業には、規模の経済という言葉があります。「規模が大きくなるほど製造単価が下がり、生産性が上がる」というものです。ソフトウェア開発では、その逆に、規模の不経済が働きます。開発規模が大きくなると、生産性が下がるのです。過小見積もりになってしまいます。IBMサンノゼ研究所が調査したデータに基づくものです。以下の書籍に掲載されていたものを、グラフに書き起こしてみました。生産性も各プロジェクトチームごとに異なるものです。数値は当てになるものではありません。規模の不経済を表すグラフとしては、今でも参考になるものだと思います。グラフを見て、なんだ、コストを少し多めに見積もっとけばいいのか(*'-')・・・と思ったかもしれませんが、そう単純ではありません。前出のグラフを見ると、「生産性の低下」以外に以下のことが分かります。小規模なプロジェクトでは「開発者の能力の差」が最も影響が大きい規模が大きくなるに従い「開発者の能力の差」の影響は小さくなる規模が大きくなると開発者の数も多くなるんだから、当たり前じゃないか(*'-')もちろんそれもあります。ひとつ要因があります。これは単なるイメージ図ですが、開発規模が大きくなるにつれて、プロジェクト全体に占める「実装コストの割合」が減ってくる、ということを表しています。小規模なプロジェクトでは、開発コストの半分以上が「実装コスト」になります。̄)=3と言ってくれれば小規模プロジェクトは安泰です。経験豊富な開発者の「実装コスト」の見積もりは大体当たるというのがあります。(いや、ほんとに)ですので、私は、開発者が「ムリです」と答えたら、無理強いすることはしません。「じゃぁ、ここを削ったらできる?」など、交渉に入ります。逆に、開発者には以下の傾向があります。「実装コスト」のみを見積もってしまうなぜなら、見積もりやすいからです。最終的には、吸収できないほどにスケジュールをオーバーすることになります。品質の劣化、プロジェクトの中止、開発者の離職などを招くことになります。私の経験則をもとに、その辺の疑問に役立つ話を、今後も書いていきたいと思います。記事を気に入っていただけた方は、クリックしていただけると励みになります。職業:元ソフトウェアエンジニア自己紹介:東京のゲーム会社でゲームプログラマ。家電メーカーで組み込みエンジニア。今は東京に戻って暮らしています。詳細な自己紹介は、こちら。