生成AI時代の見積もりの意義

ソフトウェアエンジニアとして、ある程度の規模のプロジェクトに携わるなら「見積もりをするのが当たり前」と思われています。 でも、生成AIが実用的になった今、その見積もりに本当に意義はあるのでしょうか? この記事のすべては2025年2月27日時点での個人の見解です。

生成AIが実用的になる前と今とでは、見積もりの内容も大きく変わっているはずです。 もはやコードは「書くもの」ではなく「生成されるもの」になったので、推定されるコード行数をベースにした見積もりは意味をなさなくなっています。

たとえば、あるタスクを1日(8時間)かかると見積もったとき、そこにはコーディングやデバッグに充てる時間がかなり含まれていたはずです。 ところが、コーディングやデバッグが生成AIのプロンプトに投げるだけで大半が片付くようになったら、その見積もりに含まれていた時間はいったい何のために必要なのでしょう?

「不確実性があるから見積もりをする」というのはもっともらしい理由です。 しかし、今はとりあえず生成AIに投げれば何かしらの成果物が出てきて、その不確実性はどんどん下がります。 このプロセスを繰り返せば、着実に不確実性は減っていくわけです。 そうなると、生成AIにプロンプトを投げないまま机上で将来を見積もる意義って何でしょうか?

さらに、生成AIに「とりあえず何か」を作ってもらうコストは、人間に「とりあえず作って」と指示するコストよりも圧倒的に低くなっていくはずです。 そう考えたとき、人間が作業する前提であれこれ時間をかけて見積もりを組み立てることに、どれほどの必然性や必要性があるのでしょう。

何かものをつくるとき、それが価値を生まない可能性は常につきまといます。 だからこそ、これまで私たちは「本当に価値があるか」を検証するために、作る前に時間と労力を費やしてきました。 しかし今や、生成AIを活用すれば、ものをつくる前にかかる時間・コスト以上に短時間・低コストで実際の試作品が作れてしまいます。 だったら「さっさとつくってみて、ダメだったらすぐ撤退する」ほうが合理的ではないか、と思うわけです。

そもそも、生成AIをそれなりに使い込んで肌感覚をつかんでいないと、生成AIを前提とした見積もり自体ができません。 そして、この差はおそらく今後どんどん開いていくのだろうなと思います。