ナレッジ・ノウハウ

AI駆動開発を阻む「3つの障壁」をどう乗り越える? 成功のために必要な環境づくりとは

生成AIの進化によって、最も大きく変わったと言っても過言ではないのがソフトウェア開発のあり方でしょう。

生成AIが人のコーディングを補完する形から、人とコラボレーションする形を経て、今はAIエージェントが“自律的に”設計、実装、テストを行い、人が監修する形へと変化しています。それを象徴するのが「AI駆動開発」というキーワードです。

開発の生産性を高め、コストカットも目指せる手法として注目が集まる一方で、開発の主役を人からAIに移すには、開発チーム全体のワークフローを見直す必要があるなど、大きな変革が必要になります。

エンジニアのナレッジコミュニティ「Stack Overflow」の調査によれば、約7割の開発者がAIエージェントによるソフトウェア開発の効率化を実感している一方で、チームのコラボレーションが改善したと考える開発者は2割に満たないなど、あくまで個人レベルの活用にとどまっている、つまり「AI駆動開発」のあるべき姿までたどり着いていない姿が見て取れます。

そこでグッドパッチは、2026年6月にウェビナー「AI導入で終わらせない デザインの力で実現するAI駆動開発」を開催しました。本記事では、ウェビナーのダイジェストとして、AI駆動開発の取り組みで起きがちな失敗とその原因を解説しつつ、壁を乗り越え方やAI駆動開発を自社の組織、チームで実践するための3つの観点を解説します。

今注目の「AI駆動開発」とは?

本題に入る前に、改めて「AI駆動開発」という言葉をおさらいします。

冒頭でも触れたように、生成AIが普及し始めた2022年以降、ソフトウェア開発におけるAIの使い方、いわば人間とAIとの付き合い方は急速に変わっていきました。

人間がコードを書き、AIがその先を予測する「補完型」、AIがコードベース全体を理解し、自然言語での指示に基づいて開発を進める「協働型」、そして人間が行った設計に基づき、AIエージェントがタスク単位で自律的に計画、実装、テスト、修正を行う「エージェント型」へ。

人が指示を出して回答を出すというこれまでの生成AIとは異なり、AIエージェントは、自分で実行と評価を繰り返して、目標の達成まで自律的に動いていきます。この特徴を開発の中心に据えた仕組みが「AI駆動開発」です。

複数人でチームを組み、ドキュメントを作り、コードを書いて、相互にレビューをしていく従来の開発スタイルとは異なり、AI駆動開発は、人間が異なる役割を持つ複数体のAIエージェントに指示を出して、AIエージェントがドキュメント作成やコード生成を行い、そのアウトプットを人に返し、人間がレビューをしていきます。

AIエージェント側が与えられた目的・目標を達成するために自律的にコードを書き、人はそのアウトプットのレビューを行うという役割の変化が大きな特徴です。

【関連記事】AIエージェントとは?生成AIとの違い・活用事例(部門別と業界別)・代表的なツール・導入手順まとめ

AI駆動開発を阻む「3つの壁」

注目を浴びているAI駆動開発ですが、実現するのは簡単ではありません。グッドパッチでは、クライアントワークや自社での実践を通じて、AI駆動開発の実現には3つの障壁があると考えています。

導入の壁

最初に当たるのは「導入の壁」です。AI駆動開発のメリットやリスク、変革のプロセスが描けず、既存のスタイルからなかなか脱却できないというものです。

AIを導入すると漫然と「生産性が上がる」というイメージが先行していますが、具体的に「既存システムとAI環境をどう接続するのか」「自分たちの開発プロセスにAIを入れても問題がないのか」「自分たちの業務がどう変わるのか、自分たちは何をすればいいのか」といったことがイメージできない、もしくは「何から始めて、どう進め、どこを目指すのか」といったロードマップがなければ、投資の判断に結びつかないでしょう。

また、リスクが整理されていないというのもよくある話です。AIが生成するコードの大体4割〜6割にセキュリティの脆弱性があると言われることもあります。不安材料が漫然としたままでは、導入の決断に踏み切れません。

運用の壁

導入の意思決定をし、AI駆動開発を始めてからぶつかるトラブルを「運用の壁」と呼んでいます。AIを開発プロセスの主体にするためには、AIが自律的に判断するための情報が必要になりますが、その情報が足りず、フローが回らないというものです。

具体的には、人間の判断や意思決定、レビューの結果などのデータがAIに渡る仕組みが整っていなかったり、AIの出力にどうフィードバックし、改善していくかという循環構造が作れていなかったりといった、情報の流れがうまく設計されていないことが原因です。

また、例えばエンジニアはCodex、デザイナーはFigma Make、PDMはChatGPTといった形で、各職能がバラバラのAIツールを使っているというケースもよくありますが、これでは情報の連携が難しくなります。チームでAI駆動開発を進める場合は、ツールが別だったとしても、横断して使えるような情報基盤、連携基盤が必要になるのです。

品質の壁

最後は「品質の壁」です。これは「AIエージェントが生み出した成果物の品質を担保できるか」という視点の問題です。生成物の精度を高めるという話だけでなく、成果物を確認する人間側にも対応すべき点が出てくるのがポイントです。

AIの性能が上がり、短時間で大量のアウトプットが出てきたときに人間がすべてを確認するというのは難しくなってきています。しかし「何となく良さそう」という感覚で、成果物を受け入れて進めてしまうと、品質を担保しているとは言い難いですし、チームとしてAI駆動開発を進める際には、属人的な部分として運用の障壁になってしまいます。

この問題の原因は「品質の基準が定義されていない」ことと「検証の仕組みがない」と大きく2つに分けられます。特に後者については、AI駆動のプロセスをモニタリングする仕組みがない、人間のレビューが追いつかないなど、実際にAI駆動開発を始めてみるまで気付きにくい点が多く、注意が必要です。

→「デザインの力で実現するAI駆動開発」のアーカイブ動画を視聴する

壁を突破するために仕組みを「再設計(リ・デザイン)」する

ここまで紹介してきた、AI駆動開発の壁を突破するにはどうすればいいのか。ポイントはツールの導入ではなく「仕組みの再設計(リ・デザイン)」にあります。

自分たちの開発スタイルやチームの運営、プロダクトのデザインプロセス、開発プロセスといった全体を再設計するという視点が必要なのです。ここからは、仕組みの再設計について3つの観点で説明していきます。

意図のデザインと「ハーネスエンジニアリング」

まずは意図のデザインです。プロジェクトやチーム、個人が抱える意図や目的がAIエージェントに伝わる、つまりAIと連携できるような状態、仕組みを作るというものです。

AI駆動開発に関わるのはエンジニアだけではありません。PdMやUIデザイナーなど、他職種の人も含めて全員が安全に、そして効率的にAIエージェントを活用できる環境を作るのが大事なポイントになります。

意図や目的がAIエージェントに正しく伝わることが、生成物の精度を高めることは海外の研究でも実証されていますが、「正しく伝える」という観点で、最近では「ハーネスエンジニアリング」という言葉が注目されています。

これはAIエージェントが意図しない挙動を極力起こさないよう、環境や行動規範などをしっかりと指定し、動きを制御、統制しながら開発を進める手法です。「お願い」という形ではなく、AIエージェントが判断に迷わないような「仕組みをつくる」というのが大事なポイントです。

ハーネスエンジニアリングで大事にしたい観点は大きく3つあります。まずは、AIにどのように振舞ってほしいのか、どこまでの権限を渡すのかという、行動規範と権限管理の設計。次に人とAIがどのようにフィードバックをし合うのかというループの設計。そして最後は引き継ぎ内容であったり、作業内容をどう記憶しておくかという設計です。

これらの設計を含め、グッドパッチでは、ハーネスエンジニアリングは大まかに4つのステップで進めていくのが良いと考えています。

ステップ1:AIの境界を定める

AIに対して、推奨するアクションと禁止するアクションなどを定義し、権限、責任の範囲を設計します。AIに余計な権限を与えていないか、データベース削除のような不可逆の操作をする前には、人間が確認するステップを入れられているか、といった挙動に関する「重要なガードレール」をまずは整備しましょう。

ステップ2:指示書を整える

ガードレールの整備が終わったら、指示書を整えましょう。具体的には、AIの振る舞いを制御する指示書や規約、ルール、リファレンスを設計します。AGENTS.mdやClaude.mdといったAIエージェントの全体の動きを定義するものを作るのはもちろん、細かなルールやスキルも必要なときに呼び出せる形にできていると理想的です。

ステップ3:センサを設置する

センサというのは、要するに品質をチェックし、担保するための仕組みです。一例ですが、AIエージェントが生成したコードが正しい形で記述されているかのチェックやエラーケースの検知、テストケースの検証などをしっかり行う状態ができているかを確認します。

セキュリティやデータの取り扱いがコードレビューの範囲に含まれているか、機密・脆弱性の審査をコミットやCIのパイプラインの中に組み込んでいるか──エンジニアではないと、なじみの薄い領域かもしれませんが、意識してみると良いでしょう。

ステップ4:ループを育てる

1〜3のステップができたら、最後に生成物の精度を高めるための仕組みづくり、フィードバックループを育てていきます。AIエージェントが自分で失敗パターンを見つけ、指示書に加えて自己改善をしていくことを目指すわけですが、そのためにも、まずは繰り返し起きる失敗を検知する仕組み(レビュー指摘やログの集約)から構築していくのがオススメです。

→「デザインの力で実現するAI駆動開発」のアーカイブ動画を視聴する

文脈のデザイン

ハーネスエンジニアリングにおいても「AIに十分な情報を渡すのが大切」というのは何度も触れていますが、渡す情報の質を高めようというのが「文脈のデザイン」の視点になります。

開発現場やプロジェクトの情報をどのようにして解像度高く共有できるか。報告書や会議の議事録といったプロジェクトに関連する情報をすべてAIにも共有するというのはもちろん、情報を入れた後にAIが自動的にアウトプットを作れるフローの構築も大事です。

ここで大切なのは、AIに情報を渡す際は、MarkdownやHTML、CSSなどAIが理解しやすいデータ形式にすること。こうすることで、リサーチや要件定義、システム設計といった複雑な情報も必要な場面に応じて情報を呼び出しやすくなります。

AIエージェントが参照する情報を、常にブレなく最新に保つことが大切(SSoT)

とはいえ、開発プロジェクトに関する情報というのは膨大であり、毎日増えていくものですが、AIが参照する情報については、正しさや新しさを保たなければなりません。

そのためには、プロジェクトの中で、AIが常に参照できる「唯一の真実(Single Source of Truth、SSoT)」を保持して更新していく。コード管理で使われるGitHubでドキュメントやコードを管理するときも、コードが採用された経緯や内容を場所を決めて記録しておくことが重要です。

これらの情報が管理されず、個々のドキュメントで分散してしまっていると、AIエージェントが読み込む際にも、採用されていない誤った情報を参照してしまう可能性が高まります。コンテキストを健全に保つためにも、SSoTの設計とメンテナンスが必要になるのです。

そのときに管理するものは、ソースコードやシステム設計の意思決定を記録していく「ADR(Architecture Decision Record)」、加えてデザインやユーザー体験に関する意思決定を集めた「DDR(Design Decision Record)」などが良いでしょう。

→「デザインの力で実現するAI駆動開発」のアーカイブ動画を視聴する

品質のデザインを進めるための「3つの観点」

最後の「品質のデザイン」は、AIのアウトプット、そしてAI駆動開発の仕組みそのものを評価するための仕組みを構築することを指します。

そのためには、人間が求める品質の指標を明確にし、言語化することが必要です。品質のレベルを設定することで、コードの書き方など軽微な事柄はAIが確認し、データベースの扱いなど、重要度が高い事柄は人間が精査するというようなワークフローを設計することができるのです。AI駆動開発で意識すべき品質は大きく3つあり、それぞれ詳しく説明していきます。

アウトプットの品質

まずは「アウトプットの品質」です。これは、AIが生成した成果物が受け入れられる状態になっているかを確認します。現場での採用率や受け入れテストの通過率などを通じて、どの程度採用されたかを定量、定性の面で測定できるようにします。

AI駆動開発の効果というのは効率化、つまりスピードやコストに注目されがちではありますが、より良いソフトウェアを作れるかという点も大切です。ソフトウェア開発における品質というのは、国際規格にもなっており(ISO/IEC 25010)、ここで挙げられている8つの要素が改善、向上しているかという面でも評価をしてみると良いでしょう。

アウトカムの品質

AI駆動によって、どのような価値が生まれたかを判断するのが「アウトカムの品質」です。AIと人が組み合わさったプロセスによって、実際に開発が効率化されているのか、付加価値が創出されているのかを考えます。

特に付加価値の視点は大切です。例えば、AIでプロトタイプを作る速度が上がった結果、得られる示唆が増える、プロジェクトにおける意思決定や合意の精度が高まる──。速度の話と異なり数値化はしにくいものの、プロジェクトの成否を左右する要因にもなるので、その価値をしっかりと測れる仕組みを作ることが大切です。

ガバナンス・安全性

ガバナンスや安全性という視点は、どのように品質を担保しているのか、AIに生成をさせるリスクを低減しているのかを説明可能にするということです。「Human in the Loop」と言われるような、人とAIが共同でレビューをする体制、トレーサビリティの整備など、AIの説明責任を果たせる形になっているかを見極めていく必要があります。

仕様駆動開発

品質の向上に取り組む際に「仕様駆動開発」というキーワードがあります。サービスの機能や振る舞いなどを言語化、構造化したものをAIに命じる指示書として、しっかりと管理をするということです。文書として残しておくことで、過去の成功や失敗などもAIが判断し、次に生かしやすくなります。

条件と動作を明示した要件、開発の実装タスクというのをリストアップした上で仕様を整え、AIにインプットしていくわけですが、実際に運用をすると、データが膨大になって管理できなくなることも起こり得ます。

そのため、このプロセスをそのまま取り入れるよりも、「テスト駆動開発」など別のアプローチも含め、考え方やエッセンスを組織やチームに合わせて取り入れていくのが大切です。

【まとめ】AI駆動開発の課題を解決する「仕組み」を作れるか

今後も生成AIを活用したプロダクト開発は進み、手法も進化していくと思われますが、記事冒頭で触れたように個人レベルでの効率化と、開発チーム全体の効率化は必ずしも比例するものではありません。

AI駆動開発には導入、運用、品質という3つの壁があり、これらの障壁を越えるにはツールを整えるだけでは不十分で、仕組みを作る、リデザインするというアプローチが有効です。

プロジェクトのチームメンバー個人が、AIエージェントに正しく意図を伝えられる仕組みを作る、プロジェクトの情報を文脈としてAIが読み込みやすいような仕組みを作る、そして、AIのアウトプットやAI駆動開発の仕組みそのものを評価するための仕組みを作る。

AI駆動開発に限った話ではありませんが、新しい技術を取り入れる際には、既存のワークフローの一部に適用する形では、そのポテンシャルは十分に発揮されません。勇気を持ってフロー全体を見直しにかかる、それが生産性の向上を含めた成否を分けるポイントになるでしょう。

グッドパッチからのお知らせ

グッドパッチでは、AI活用に向けたさまざまなソリューションを展開しています。

本セミナーのテーマであったAI駆動開発については、デザインと開発のプロセスにAIを組み込み、開発組織全体でAI駆動デザイン、AI駆動開発の定着を実現できる「AI駆動デザイン・開発ソリューション」を提供しています。

アドバイザリーという立場で入る形のほか、実際にPoCを実行する形、本番の実装を支援する形といったさまざまなプランを用意していますので、ぜひご検討ください。

また、社内全体のAI活用を進めるという観点で「AIワークショッププログラム」も提供しています。単にAIツールやプロンプトの書き方を学ぶという研修ではなく、組織やチームに合ったAIとの共創スタイルを探求していくコンテンツです。

自らの業務に照らし合わせ、どういうふうにAIを使うのか、どのようにデザイン思考を活用するか、チーム内で共通認識をどう作るかといったトピックをワークショップで1日かけて学んでいきます。

1日まるっと、どういうふうにAIを使うのか、デザインの思考だったり、先ほどの共通認識ってどういうふうに作っていくのかっていうところを、ワークショップ形式で学んでいくようなソリューションになっております。AI活用のレベルを高めるためにご活用ください。