プロジェクトマネジメントファーム「JQ」では、予算5-30億円、人数30-150名規模のプロジェクトのPM/PMOを請け負うことが多いのですが、その規模でも最近はAIを活用したシステム開発プロジェクトが増えてきてました。
ただ、生産性があがあらないことも多く、まだまだAIが生成するコードの出来がいまいちなところがあります。いまいちならレビューが必要なので、どうしてもエンジニアもそれなりの数が必要であると。
加えて、要件を出したり設計をする、いわゆる上流工程の作業をするのは変わらず人間なので、そもそもAIにインプットするドキュメントがイケてない、というところもあります。
もっとAIが対応できる範囲が広がったら
冒頭の上流工程は人間がやる、コーディングはレビューが必要という前提に立つと、別の記事でも触れている通り、どうしてもミッションクリティカルで、一定規模以上ある開発プロジェクトでは、顧客側の業務部門(要件を出す人)、そしてコードをレビューするエンジニアの頭数がどうしても必要であると考えます。
そして、人が多く必要になり、人がいればマネージメントが必要なので、結果的にPM/PMOも一定数必要になると考えています。
しかし、例えば、こんな思考実験もしてみたいと思います。
- 業務を一番知っているのがAIだとしたら、要件定義や設計もAIが担えるので、
業務部門の人をゼロにできるのでは? - コーディングの精度がレビューが必要のないくらい上がったとしたら、エンジニアはいらないのでは?

思考実験① 業務を一番知っているのがAIだとしたら?
業務上発生しうる、あらゆる情報を生成AIが得ていれば、業務の担当者よりAIのほうが詳しいという時代は来ると思います。
ただし、世の中全部をAIが回している時代であればよいですが、実際はそんなことにはならない気がします。
例えばFAXで来た(小売りや製造業ではいまだにFAX注文もあります)注文をAIがシステムに入力したとします。その内容にミスがあって、それが注文として受け付けられて、間違った金額での決済が発生したとします。
この時にだれが責任を負うのかというと、やはりその業務を管掌する人間ということになると思います。この場合、入力はAIが行うものの、やはりレビューは人間ということになると思います。
また、業務には必ずイレギュラーケースというのが発生しますので、その場合、どう判断するかも人間がやらざるを得ないと思います。AIは判断パターンを提案はしてくれると思いますが、最終決定は人間が下す必要があります。
システムへの要件提示も同様で、AIが要件や仕様記述をできるとしても誰かがそれをレビューしなければならず、それなりの大きい会社の業務になると、レビューする人もそれなりの人数が必要ということになります。
結果的に、業務部門の人たちはAIサポートの下で多少は要件整理が楽になるかもしれませんが、レビューが必要な以上、劇的には変わらないのではないかと思います。

思考実験② コード生成の精度が上がったら
実装フェーズでAIを使っても、なかなか良いコードができない大きな原因として、インプットとなるドキュメントの問題があります。例えば、仕様記述がすべてマークダウンで構造的に行われ、画面レイアウト設計もFigmaなどAIが食いやすい構造的なツールだけで行われたとしたら・・・
AIによるコード生成の精度もかなり上がるのではないでしょうか。
しかし、ここでもやはり責任論が出てくると思います。精度が高いからといって、ノーレビューでリリースをしたとします。例えば、その結果、金額計算のロジックに致命的なバグがあったとします。
それによってトラブルが起きた時に誰が責任を取るのかという話になると思います。やはり、その開発を行った会社が一義的には責任を負うでしょう。そして、そうでないとしても発注元のビジネス・業務担当者または情報システム部門が責任を負う可能性があると思います。
やはり結局、責任論が出てきてしまう以上、コードやテストケース、テスト結果に対してレビューが必要になってしまうのではないでしょうか。結果的に、レビューができるエンジニアの数は大きく減らないのではないかと思います。

結論
AIが業務を担ったり、コード生成の精度が劇的に上がったとしても、上記のような責任論がある以上は、どうしても人間によるレビューが必要で、レビューが必要になると人数が必要ということになると思います。
そして、人数が一定数いると、マネジメントが必要ということで、ミッションクリティカルで一定規模以上のITプロジェクトの場合、PM/PMOがやっぱり必要ということになるのではないでしょうか。
しかし、上記の考察に反する考えとして、もし業務の中で、AIが決断を下して、それでトラブルが起きても、「AIが判断したなら仕方ないね」という世の中になっていれば、すべての業務をAIが自律的に判断してこなすということになると思います。
例えば、AIはミスをしても、”誰かがそれをミスと指摘する/どこかで不整合が起きたりすれば”、自律的に解決していき、同じミスは減っていくでしょう。
そうなってくると、AIがすべて自律的に業務を行う世界になります。もはや人間は不要です。
AIは自分が業務を行う上で必要なシステムを自律的に作るようになるでしょう。そうすると、IT業界の人たちは誰もいらなくなるでしょう。バグですら、AIが自分で見つけて自分で解決するでしょう。
とはいえ、人間が誰も見ていません、AIがどう業務を処理しているか、わかりません、人間が誰も仕様を理解していない中でシステムが勝手にできていく、という世界線は、個人的にはなかなか想像できませんが・・・
