Anthropic社のCEOであるDario Amodei氏が、興味深い予測を発表しました。
AIモデルが6〜12ヶ月以内にソフトウェアエンジニアの作業の「ほとんど、おそらく全て」をエンドツーエンドで実行できるようになり、エンジニアの役割は「作業者」から「編集者」へシフトするというものです。
この予測が現実のものとなれば、システム開発のプロセスは根本的に変わっていくと思います。
これまでウォーターフォール型で進めてきた開発が、より柔軟なアジャイル型へと移行していく可能性があります。
AIが瞬時に実装を行うため、厳密な要件定義や仕様決定を前提としなくても、大まかな方向性を示してAIに実装させ、画面を見ながら要件や仕様をブラッシュアップしていくという進め方が現実的になってくると考えられます。
このような変化は、プロジェクトマネジメントのあり方にも大きな影響を与えるように思います。PMの役割や求められるスキルは、これからどう変わっていくのでしょうか。
参考記事:Wes Roth氏のX投稿(https://x.com/WesRoth/status/2013693268190437410)
これまで:厳密な要件定義と変更管理を重視するウォーターフォール型開発
従来のシステム開発プロジェクトでは、人間が設計・開発を行うことを前提とした体制とプロセスが組まれていました。
それがウォーターフォール型の開発です。
この手法では、要件定義や外部仕様(画面仕様、帳票仕様など)を発注者側がしっかりと決め、詳細設計開始前に仕様を確定させることが重視されてきました。
要件が漏れていたり変更が発生したりすれば、それは仕様変更として扱われ、追加のコストやスケジュール調整が必要になります。
このような進め方をしていた理由は、人間が詳細設計や開発を担当する以上、たびたび要件や仕様が変更されると、その対応に追われてしまい、プロジェクトのQCD(品質、コスト、納期)を守れなくなるリスクがあったからです。
変更管理は、プロジェクトマネージャーにとって最も重要な業務の一つでした。
また、大規模なプロジェクトでは、多数の作業者を抱える体制が一般的でした。
大人数をマネジメントするため、PMには以下のような役割が求められていました。
第一に、ウォーターフォールを前提としたプロジェクトの開発計画を立てて、プロセスを設計するという役割です。
例えば、要件変更や仕様変更を抑えるために、要件定義や基本設計をどういうプロセスで進めるか、どのようなスケジュールを立てるか、大量の作業がある前提で下流工程のプロセス、スケジュールを組み立てていました。
第二に、人間がたくさんいるという前提で、プロジェクトの管理ルールを設計し、そのルールが守られているかをチェックすることです。
進捗管理、品質管理、変更管理といった各種管理プロセスを定義し、メンバーがルール通りに作業を進めているかを監視する役割が重要でした。
コミュニケーション面でもトップダウン的な色合いが強かったと思います。
ルールを定めて、遵守してもらう、何かリクエストがあれば手続きを踏んで上にあげていく、人がたくさんいるとこのようなコミュニケーションにならざるを得ませんでした。
ウォーターフォール型開発におけるPMの役割は、いわば「管理者」としての色合いが強かったと言えるでしょう。
これから:AIによる開発自動化がもたらすアジャイル型への移行
一方で、AIがソフトウェアエンジニアリングの大部分を担うようになれば、この状況は大きく変わっていくと思います。
最も本質的な変化は、要件や仕様の変更に対応するコストが劇的に減少する点です。
人間が詳細設計や開発を行わなくなれば、変更が発生しても、AIに指示を出し直すだけで済むようになります。
これまでのように、変更の影響範囲を詳細に分析し、複数の作業者に再作業を依頼し、進捗への影響を計算する、といった手間が大幅に削減されるでしょう。
この変化は、ウォーターフォール型開発の前提そのものを揺るがすと思います。
厳密に要件を固める必要性が薄れ、より柔軟な進め方が可能になるからです。
具体的には、大まかな要件や仕様を決めた段階でAIに実装させ、実際の画面や動作を確認しながら、要件や仕様をブラッシュアップしていくというアプローチが現実的になってきます。
これは、まさにアジャイル開発の考え方です。
ただし、ここで声を大にして述べておきたいのは、大まかな要件や仕様のレベルが本当に雑なものではダメであるということです。
AIによる開発であっても、データを管理するシステムである以上重要なのはデータモデルです。
このモデルが業務の要求や要件をしっかり反映したものでないと、さすがにAIも適切な機能整理や実装はしてくれません。
どのレベルで必要かというと、例えば以下のようなレベルの整理が必要です。
~JQ社内での案件管理システムをAIに作ってもらうときに整理したデータモデル案~
アジャイル開発では、短いサイクルで開発と検証を繰り返し、段階的にシステムを作り上げていきます。
これまでは、人間が開発を担当するため、頻繁な変更に対応するコストが高く、アジャイル開発を導入できるプロジェクトは限られていました。
とはいえ、AIが開発を担うようになれば、この制約は大きく緩和されると考えられます。
また、プロジェクトの体制も少人数での運営に変わっていきます。
参考記事:AIで単純作業が消えた未来におけるPMO、プロマネの役割
(https://www.j-q.co.jp/jq-note/analysis-idea02/)
人数が減れば、プロジェクトマネジメントのあり方も変わります。
多数の作業者に動いてもらうためのプロセスやスケジュール、多くの作業者を管理するための複雑なルールやプロセスは必要なくなり、より少人数の専門家(発注サイド、SE、ハイエンドエンジニア)とAIを、プロジェクトマネージャーがコーディネートする形になっていくでしょう。
コミュニケーション面では、トップダウンというよりもフラットな合意形成になっていくと思います。
ルールがないことはないですが、ルールも少人数なので話し合いながら柔軟に変更していくことができるようになります。
ウォーターフォール型からアジャイル型へ、大人数体制から少人数体制へ。
この二つの変化が同時に進行することで、プロジェクトマネジメントの姿は大きく様変わりしていくように思います。
PMへの影響:管理者からファシリテーターへの役割転換
こうした変化の中で、PMに求められる役割はどう変わっていくのでしょうか。
第一の変化は、大まかな要件や仕様を詰めて、アジャイルに移行し、最後はシステムテストやUATで総チェックするというプロセスを前提とした、作業設計やスケジュールを立てる必要があるというところです。
ウォーターフォールの特性を理解しつつも、ここからはアジャイルでいくという線引きができるようになる必要があります。
第二の変化は、大きな変化は、PMの役割が「管理者」から「ファシリテーター」へとシフトしていく点です。
具体的には、アジャイル開発におけるスクラムマスターのような役割が中心になっていくと考えられます。
スクラムマスターは、開発チームが円滑に作業を進められるよう支援する役割です。
ルールを守らせることよりも、チームが自律的に動けるよう障害を取り除き、コミュニケーションを促進することが求められます。
また、コミュニケーションという面では、
AIが開発を担うプロジェクトでも、同様のアプローチが有効になるでしょう。
PMは、発注サイドやレビュワーであるSEやハイエンドなエンジニアをとりまとめ、要件や仕様について議論を深め、タスクの整理や優先度付けを柔軟に行っていくことが重要になります。
これを行うためには、要件や仕様に対する深い理解力と、柔軟な調整力が必要になります。
アジャイル型の開発では、短いサイクルで要件を見直し、優先度を変更していくことが前提となります。
PMは、ビジネス側の意図を正確に理解し、それを技術的な実装に落とし込む橋渡し役として機能する必要があります。
要件を提示する発注サイド、アーキテクチャを設計する人、AIに指示したりレビューできるエンジニア、これらの人たちの仲立ちができるような人というイメージです。
なお、JQではもともと、社員に対して、要件や技術をしっかりと理解し、中身を抑えた管理をすることを推奨(義務付け)してきました。
そういった意味では、このような時代が来たとしても、そこまでリスクは感じません。
まとめ:プロジェクトマネジメントの本質的な変化を捉える
AIによるソフトウェア開発の自動化は、単に作業の効率化をもたらすだけではありません。
プロジェクトマネジメントのあり方そのものを変える可能性を秘めています。
変化の核心は、「変更対応コストの劇的な低下」にあると言えるでしょう。
これまでは、変更を避けるためにウォーターフォール型の開発を採用し、厳密な要件定義と変更管理に多大なリソースを投入してきました。
しかし、AIが開発を担うようになれば、変更は恐れるべきものではなく、システムを改善するための自然なプロセスになっていきます。
この変化に伴い、PMに求められる役割とスキルも大きく変わっていくでしょう。
ウォータフォール的なプロセス・スケジュールの設計、管理ルールの設計とチェックから、アジャイルなプロセス設計と、要件理解とタスクの優先度付けへ。
多数の作業者の管理から、少数の専門家とAIのコーディネートへ。
トップダウン型のコミュニケーションから、フラットな合意形成へ。
もちろん、この変化がすぐに全てのプロジェクトに波及するわけではありません。
業界や企業規模、プロジェクトの性質によって、移行のスピードは異なるでしょう。
とはいえ、長期的な方向性としては、こうした変化が進んでいくように感じます。
PMとして、これからの時代にどう対応していくべきか。
まずは、AIを活用した開発がどのように進むのか、その実態を理解することが第一歩になるでしょう。
そして、自身のスキルセットを見直し、管理者としての能力だけでなく、ファシリテーターとしての能力を高めていくことが求められます。
変化を恐れるのではなく、変化を前向きに捉え、新しいプロジェクトマネジメントのあり方を探求していく。そうした姿勢が、これからのPMには必要になっていくのかもしれません。