💡
AIによるシステム開発支援のレベル分類
AIコーディングツールについて調べていた所、自動車の自動運転に似ていると思ったのでGeminiさんに聞いてみました。
以下が結果。
レベル0:手動支援(No Automation)
このレベルでは、AIによる支援はほとんどなく、人間が全てのコーディング作業を行います。ツールは主に基本的なテキスト編集機能を提供します。
特徴
- AIの介入なし
- 開発者がすべてのコードを自分で書く
Webシステム開発におけるツール
-
基本的なテキストエディタ
- Notepad、Sublime Text(AI機能なし)
- HTML、CSS、JavaScript、サーバーサイド言語(Python, Node.js, PHPなど)のコードを記述する際
-
手動でのGit操作
- AIの支援なしで、バージョン管理コマンドを直接実行
レベル1:部分的なアシスト(Driver Assistance / Feature-Specific Automation)
AIがコードの文脈を理解し、推論や学習に基づいた「知的」な支援を提供し始めます。コードの品質向上や開発効率化を目的とした提案が中心です。AIは開発者の「副操縦士」として機能し始めます。
特徴
- AIによる限定的な知的支援
- コードのコンテキストを理解し、次の行動を推測・提案
Webシステム開発におけるツール
-
IDE内蔵の高度なコード補完・静的解析
- Visual Studio Code (IntelliSense)
- React、Vue、AngularなどのWebフレームワークにおけるコンポーネントプロパティ、イベントハンドラー、API呼び出しの補完
- JetBrains WebStorm/IntelliJ IDEA Ultimate
- 高度なコードインスペクション(例: Reactフックの依存関係不足検出)
- 自動的なリファクタリング支援(例: コンポーネント抽出、変数名変更)
- Visual Studio Code (IntelliSense)
-
コード品質・フォーマットツール
- ESLint, Stylelint, Prettier
- JavaScript/TypeScript、CSS/SCSSのコードスタイル統一と自動修正
- 潜在的なバグ警告
- ESLint, Stylelint, Prettier
レベル2:条件付きの自動化(Partial Automation)
AIが自然言語の指示などに基づいて、まとまったコードブロックや機能を自動生成・最適化します。AIの提案はより具体的で大規模になりますが、最終的な判断や承認は人間が行います。
特徴
- AIによる具体的なコード生成と最適化
- 人間の承認が必須
Webシステム開発におけるツール
-
AIコード生成・補完ツール
- OpenAI Codex
- 自然言語からのコードスニペットや関数生成
- GitHub Copilotの初期の基盤モデル
- 現在はレベル3の機能も提供している
- GitHub Copilot
- コメントや既存コードから、Reactコンポーネントのロジック、Vueのテンプレート、HTML構造、REST APIエンドポイント、データベースCRUD操作などを提案
- Amazon CodeWhisperer
- 同様の機能に加え、AWS関連のWebサービス(Lambda関数、API Gateway設定など)のコード生成に強み
- Tabnine
- 高度なコード補完とWeb関連のコード生成
- OpenAI Codex
-
汎用LLMのチャットインターフェース
- Google Gemini / OpenAI GPT-4
- 自然言語でのWebシステム要件から、フロントエンドやバックエンドのコードスニペット、データベーススキーマ定義、簡単なデプロイスクリプトの提案
- Google Gemini / OpenAI GPT-4
-
AI統合型IDE
- Cursor
- AIチャットとWebコード編集が統合され、より高度なWebコード生成やリファクタリングを支援
- VS Code + Cline
- 様々なAIモデルを選んで利用でき、コード生成、リファクタリング支援、テストコード生成などを行う
- IntelliJ IDEA + Junie
- 開発者のWebコーディング作業に深く寄り添い、Webフレームワーク特化のコード生成、文脈認識型支援を行う
- Cursor
レベル3:特定のドメインにおける高度な自動化(Conditional Automation / High Automation in Specific Domains)
AIが特定のドメインやタスクにおいて、自律的にコードを生成、デバッグ、修正します。AIは一連の作業を計画・実行し、人間は主に監視役となります。
特徴
- AIによる特定の領域での自律的な開発作業
- 人間は監視と最終承認
Webシステム開発におけるツール
-
AI強化型ノーコード/ローコードプラットフォーム
- Microsoft Power Apps / Power Pages (Copilot機能)
- 自然言語でWebアプリケーションの目的を記述すると、AIがWebページのレイアウト、入力フォーム、データベース構造、ビジネスロジックを自動生成
- OutSystems AI Forge
- エンタープライズWebアプリ開発において、特定のビジネス要件やデータモデルから、Web UI、API、データベース連携コードを自律的に生成
- Google AppSheet AI
- スプレッドシートやデータベースのデータから、AIがWebベースの業務用アプリケーションを自動生成
- Bubble (AI機能)
- ノーコードWebアプリ構築で、AIが複雑なワークフロー、データベース連携、UI要素の生成を支援
- Microsoft Power Apps / Power Pages (Copilot機能)
-
AIを活用したWebテスト自動生成・修正ツール
- Applitools Autonomous
- Web UIテストスクリプトをAIが自動生成し、UIの変更に追従してテストケースを自律的に修正
- Cypress (AI統合機能)
- WebアプリケーションのE2Eテストにおいて、AIがテストケースの生成や、UI変更に対するテストスクリプトの適応を支援
- Applitools Autonomous
-
要件定義からのWebシステム生成に特化したAI
- JITERA
- Webアプリケーション開発に特化しており、要件定義からコード生成、テストまでAIが支援
- Anthropic Claude Code
- プロジェクト全体のコンテキストを理解し、コードの編集、リファクタリング、バグ修正、テストコードの自動生成・実行、Git操作などを自律的にこなす
- JITERA
レベル4:完全な自律コーディング(Full Automation in Defined Operational Design Domain)
定義された運用設計領域(ODD)内であれば、AIが人間による介入なしに、設計、実装、テスト、デプロイメントまでの一連のコーディングプロセスを完遂します。人間は最終的な承認やシステムの運用・監視を行うのみです。
特徴
- AIによる特定領域での開発プロセスの完全な自律化
- 人間は最終承認と監視のみ
Webシステム開発におけるツール
-
Google Jules
- GitHubリポジトリ内のWebシステムに対し、バグ修正、新機能実装、依存関係の更新といったタスクを自律的に計画・実行
-
Devin (Cognition AI)
- 自然言語の指示からWebアプリケーションのプロトタイプ作成、特定の機能の実装、デバッグ、テスト、デプロイまでを一貫して自律的にこなす
-
Autonomous AI Agents
- GPT-Engineer, MetaGPT, ChatDevなど
- Webシステム開発のシナリオを与えると、AIが開発チームの役割分担、設計からコード実装、テストまでを自律的に行う
レベル5:汎用的な完全自律コーディング(Full Automation - All Driving Conditions / General AI Coder)
あらゆる種類のソフトウェア開発、特にあらゆる複雑なWebシステム開発において、人間と同等かそれ以上の能力で、完全な自律性を持ってコーディングを行います。人間は目標設定や高レベルな戦略に関与するのみです。
特徴
- あらゆるWebシステムの開発を人間なしで完遂できる
Webシステム開発におけるツール
- 現在のところ、該当する実用的なツールは存在しません
- これはSFの世界や、汎用人工知能(AGI)の実現が待たれる、研究段階の最終目標です
まとめ
現在はレベル2が浸透している段階だと思いますが、1年後どうなっているか楽しみです。
Discussion