システム開発Agentがもたらす新たな可能性と課題
自然言語での要求を元にUIやWebページ、アプリケーションを生成する「システム開発Agentサービス」(以下システム開発Agentと呼称)が話題を集める中、SIerとしての視点でいくつかのサービスを実際に試してみました。本記事では、生成AIを活用した具体的な事例とともに、ユーザー企業やSI業界への影響や課題、そしてその可能性について掘り下げます。
サマリはこちらのスライドをご覧ください。(この頁を元にプレゼン生成AIサービスのGannmaで作成しました)
サンプル開発としてBoltとReplit Agentでトライ
弊社のようなSIer企業における組織内の受託実績やナレッジを集積して共有するためのシステムを想定しました。
ChatGPTで想定される機能を出してもらい、それをBolt、ReplitAgentで作ってみました。Boltはフロントエンドに特化していますが、Replit AgentはバックエンドやDBまで実装できます。
最初のUI検討にはv0も使ったのですが、初手で良いイメージが出てこなかったので、Boltに注力しました。
Boltで作成したUIや要件を基に、ReplitAgentを用いてバックエンドも含めた実装を開始しました。最初は設定や依存関係の調整に苦労しましたが、試行錯誤を重ねることでコツを掴み、1週間で基本機能の一部を実現しました。具体的には、データ登録機能を半日程度で動作する状態に仕上げました。
Bolt
https://tiny-mochi-9b92f5.netlify.app/
各サービスの操作イメージ等は他のブログ記事を参考にしていただければと思います。
使ったみた所感:もう一歩なところもあるが、新しい世界の到来を予感させる体験だった
元々Replit Agent自体も「Replit」という開発環境をクラウドで提供するサービスの一部として提供されています。0→1開発を行う際の最初のたたき台として、フロントエンドからバックエンド、DBまで一連のスタックをまとめてを提供し、そこから後はエンジニアが直接コードを触り「いい感じにする」ことを期待されているサービスです。決してシステムを全自動で作ってくれるサービスというわけではありません。この記事が個別のサービス評価が目的でもないため、その前提に以下を読み進めていただければと思います。
The Replit Agent is an AI-powered tool designed to assist users in building software projects. It can understand natural language prompts and help create applications from scratch, making software development more accessible to users of all skill levels.
その前提においても、現在の機能では相当手間をかけてAgentの出力に対してインプットが必要でした。たとえば、出力されたコードの品質確認や、手動での調整作業が不可欠であり、完全な自動化にはまだ課題が残っています。システム開発の自動化という表現をするのは大きな誤解を生みます。
また大きな要求を一気に投げて作らせるとその修正に相当手間取ることがありました。何度修正しても期待する修正が帰ってこず、最初から作り直したこともありました。例えば認証なども最初は除き、本当に小さな機能を作らせて、そこから拡張してく形が良さそうです。これは本番の実装でも同じですね。
その時にどこから依頼するかは依頼側のセンスが求められるかなと感じます。ある程度DBのモデルなどがイメージできた場合は、主要エンティティに絡むところから作っていくのがよいかなと感じました。
そういう意味では、ある程度アプリケーションの設計開発経験のある人がより有効に使えるかと思います。
Replit Agentではテストデータの作成も、プロンプトからいい感じのサンプルデータを適当に作っておいての指示でやってくれました。この辺はChatGPT等の生成AIサービスやGithub Copilot/Cursor等でも、ダミー登録用のCSVデータやInsert文の生成はできますが、命令一つで既存レコードを削除しつつスキーマにちょうどいいデータ登録までしてくれるのが非常に楽でした。実行環境丸ごと提供するメリットだとは思います。
現時点でのシステム開発Agentの真価:要求要件の具体化
システム開発Agentは、曖昧な要求や要件を具体的なUIとして可視化し、要件を固めるプロセスにおいて非常に有効だと感じました。特に、技術スキルが十分でないユーザ部門のメンバーが、自らシステムイメージを他人に頼らず一人で形にできることは画期的だといえるでしょう。
例えば、これまでもFigmaのようなデザインツールを使ってUIイメージを開発メンバーに提示するケースも見られました。それでも最初の叩き台を作る作業には大きな負担が伴いました。システム開発Agentは、その初期負担を大幅に軽減し、業務要件からUI、データベース設計までの橋渡しを容易にします。
システム開発Agentはユーザ企業でこそ活用されるべき
そういう意味で、システム開発Agentがもたらす真の価値は、ユーザ企業側での活用にあると感じました。自社で実装までを内製化している企業だけでなく、特にシステム開発をSIer等に依頼している企業、もっと言えばシステム部門だけでなく業務部門の方も巻き込んで共に活用してもらいたいと思いました。システム要求や要件定義の曖昧さが解消されることで、以下のメリットが生じます。
-
精度の高いIT企画と要求開発の実現
内容により部分的にはITの専門家の力を借りなければならない可能性はありますが、システム生成AIの活用により、ユーザ企業は企画段階から具体的な検討を主体的に進めることができます。 -
開発費用の圧縮
システム実現イメージが早期に可視化されることで、ユーザー企業内での要求と合意形成不足による不確実性が極力減ることに繋がり、ベンダーコストが圧縮できる可能性が高まります。
システム開発プロジェクトのトラブルの多くは、要件の曖昧さに起因します。そもそも誰のために、何のためにそのシステムを作るのかを業務部門とシステム部門、更には経営陣も加わって、こうして作成したシステムのたたき台を元に徹底的に議論できることが理想です。
もう一方の課題:技術負債への対応
非常に夢が広がる生成AI活用ですが、実際の企業活動においてド新規でシステムを立ち上げるというのはそこまで多くありません。むしろ多くの現場の方々が困っているのは現状システムの維持保守、特に手がつけにくいシステムや詳しい人がいなくなってしまったシステム、世にいう「技術負債」への対応です。
こちらも生成AIの活用が注目されています。
システム生成AIは、現行システムの機能や構造を視覚的に把握する手段としても有効です。これにより、運用保守体制の最適化や技術負債の解消に向けた意思決定をサポートします。
こちらも更に検証を続け、実際の活用方法を模索していきたいと思います。
今後想定される展開:アプリプラットフォーマーの参画、アプリケーション開発の民主化実現へ
大手ノーコード・ローコードベンダーや業務パッケージベンダーは、自社のプラットフォーム上での機能開発を自然言語で実現させるAgent機能をリリースしています。まだ本格展開はこれからだと思いますが、要注目です。
開発したアプリケーションを自然言語でしか修正できないのも、実はまどろっこしい部分もあります。自然言語でのラフな要求提示、UIの自由度、修正が非エンジニアでもできる―このあたりの最適解を導くちょうどよいソリューションが登場すればティッピング・ポイントを超えるのではないかと思慮します。
一方で、商用システムを本番環境で安定的に維持運用できる形で完成させるための「ラストワンマイル」までをAIに託すにはもう少し時間が掛かる気はします。全体をコーディネートしつつも最後の砦として実行責任を持てる存在は不可欠であり、その役割を自社では賄えないユーザー企業にとって、SIerの存在価値は依然として残るでしょう。ただその場所にあぐらをかいているわけにはいきません。
オープン化やクラウド化によりインフラ領域はかなり民主化されましたが、一部を除きアプリケーションはまだベンダーにロックインされてしまっている企業がほとんどです。エンジニアやシステム部門の要員を運用や保守改修的作業から解放し、より挑戦的かつ高い技術要求への対応を可能にすることが、日本企業の更なる発展に不可欠だと考えます。
システム開発Agentの登場は業界構造を変える変化であり、DXを進化させるドライバー
システム生成AIはまだまだ発展途上ではありますが、業務要件を可視化し、ユーザ企業が主体的にシステム開発を進めるための強力なツールとなり得ると直感しました。更に生成AIの価値を最大限に引き出し活用することで、現状維持コストを最小化し、より戦略的なIT投資が可能になります。ベンダーの提案内容への精査や牽制にも効果を発揮するでしょう。何より現状IT資産への解像度と理解度を高めることで、ベンダー選定のキャスティングボードを確実にすることができます。
一方でそうしたメリットを得るために、はユーザ企業側の知識習得への投資と努力も必要です。情勢が定まってからではなく、試行錯誤をする中で得られる知見も重視し、積極的に各種サービスの活用にトライする必要があります。逆に言えば、生成AIサービスの活用を前提とした上流工程の内製化支援の需要は高まりそうです。
我々SIベンダーにとっては、アプリケーション開発からシステム全体のアーキテクチャ設計や信頼性、性能の担保へと役割がシフトしていく中で、新たな付加価値を模索する必要があるでしょう。開発工数や納期見積に対してもこれまで通りの感覚ではユーザーの期待に答えられなくなるでしょう。
DXブームやコロナで近年需要を拡大させ成長したSI業界ですが、大きな企業のほうが慣性力の大きさからこの変革に追随が遅れる可能性もあります。この技術革新を掴んだ新たなプレイヤーの登場も予想されます。
生成AIが切り拓く新たなシステム開発の時代は、ユーザ企業とベンダー双方にとって大きな変革をもたらすことは間違いないと思いました。ChatGPTの登場以降、加速度的に破壊的な革新性を持ったプロダクトが日々登場しています。不確実性を受け入れつつも、変化を見極めながらそれぞれの立場で戦略補正を行っていく必要があります。