技術
「人月の神話から学ぶ」人員を増やしても開発スピードはあがらない本当の理由
2025/08/26
人員を増やしても開発スピードは上がらない本当の理由
こんにちわ!
QuestBoardでテックリードをしている上原です。
当社が行っている事業のシステム受託開発サービス「ジッソウ」では、
開発以外にすでに動いてるプロジェクトで、
いま進めている開発プロジェクトの進捗が悪く、
人員をふやしてリリースに間に合わせたいという相談もあります。
今回はこちらについて経験則とブルックス氏が書いた『人月の神話』もふまえて
記事を書きたいと思います。
たしかに人を増やせばスピードがあがると考えるのは当たり前だと思います。
「プロジェクトの納期が迫っているから、人を増やして開発を加速させよう!」
この考え、実はソフトウェア開発の世界では逆効果になることが多いってご存知ですか?
一見、単純な足し算のように思えますが、現実ではそう簡単にはいきません。
今回は、なぜ人員を増やしても開発スピードが上がらないのか、その核心に迫る「ブルックスの法則」について掘り下げていきます。
ブルックスの法則とは?
ブルックスの法則とは、IBMの伝説的なプロジェクトマネージャー、フレデリック・ブルックス氏が提唱した、ソフトウェア開発の真理を表す法則です。
その内容は非常にシンプルかつ示唆に富んでいます。
「遅れているソフトウェアプロジェクトに人員を追加すると、さらに遅れる」
ブルックス氏が著書『人月の神話』で述べたこの法則は、一見すると矛盾しているように聞こえますが、その背景には、ソフトウェア開発特有の複雑な要因が隠されています。
なぜ人員を増やすと遅れるのか?
では、具体的に何が原因で開発が遅れてしまうのでしょうか?主な理由は以下の2つです。
1. 新しいメンバーの教育コストとコミュニケーションのオーバーヘッド
プロジェクトに新しく参加するメンバーは、すぐに戦力にはなれません。
キャッチアップ期間: 新しいメンバーは、既存のコードベース、プロジェクトの仕様、チームのルールなどを理解するための時間が必要です。
教育コスト: 既存のメンバーは、新しいメンバーの質問に答えたり、ペアプログラミングで教えたりする**「教育係」**としての役割も担うことになります。これにより、既存メンバーの作業効率が一時的に下がります。
さらに、メンバーが増えれば増えるほど、チーム内のコミュニケーションは爆発的に増加します。
例えば、4人チームでのコミュニケーション経路は6通りですが、6人チームでは15通りに増加します。 これは、単純に人数の二乗に近い形で増えていくため、情報共有や意思決定に時間がかかり、無駄な調整が増えてしまうのです。
2. 作業の分割が難しい
ソフトウェア開発は、必ずしも単純なタスクの集まりではありません。
例えば、「家を建てる」というプロジェクトなら、基礎工事、壁塗り、屋根作りなど、担当者を分けて並行して進めることができます。
しかし、ソフトウェア開発では、一つの機能やモジュールが複雑に絡み合っていることが多く、簡単に分割することができません。
1つの機能を2人で担当すると、作業の統合(マージ)や調整が必要になり、そこでコンフリクト(衝突)が発生する可能性が高まります。 特に、既存の複雑なシステムに手を入れる場合は、複数のメンバーが同時に作業することで予期せぬバグや副作用が起きやすくなります。
じゃあ、どうすればいいのか?
ブルックスの法則は、人員追加が「銀の弾丸ではない」ことを教えてくれます。
では、開発スピードを上げるためにはどうすればいいのでしょうか?
タスクの再評価と優先順位付け: 本当に重要な機能は何かを再確認し、無駄な作業を削ぎ落とす。
自動化と効率化: ビルドやテスト、デプロイなどのプロセスを自動化し、開発者が本来のタスクに集中できる環境を整える。
チームのスキルアップ: メンバーが互いに助け合い、知識を共有することで、一人ひとりの生産性を高める。
スコープの調整: 納期が厳しい場合は、機能のスコープを縮小し、最低限の機能(MVP)でリリースを目指す。
もちろん、チームによっては人員追加が効果的な場合もあります。 しかし、「なぜ遅れているのか」を根本的に分析せず、安易に人員を増やすことだけは避けたいものです。
ブルックスの法則を理解することは、プロジェクトを成功に導くための第一歩と言えますね。
ぜひシステム開発に関わる方は、『人月の神話』は読んでもらいたいですね。
当社ではどうしているのか?
当社では様々なAIツールを活用しています。
プロジェクトのソースコードを管理しているツールに
プロジェクト単位でAIエージェントを導入しています。
今回の記事の文脈でいえば、
人員を増やすと開発が遅れる原因の1と2の両方に対応できてるといえます。
人員を増やすと開発が遅れる原因
1.新メンバーの教育コスト
2.作業分担が難しい
ではAIエージェントを活用したら開発スピードはアップするのか?
という話ですが、こちらは過去に書いた記事のこちらを参考にしてもらえると助かります。
GeminiのAIコードレビューを使って開発スピードが落ちた体験談
品質管理とレビューの負荷増大
意思決定の遅延と責任の分散
という問題は、作業分担が難しいレビュワーの負荷増大につながる可能性もありますので、
最少人数からスタートして少しずつ人員を追加していくというやり方をおこなっております。