1. 要件定義フェーズ
1.1 ユースケース記述の作成
- AIエージェントにユースケース記述の形式で要件を生成させる
- アクター、前提条件、基本フロー、代替フロー、事後条件を含める
- ユーザーストーリーや利用シナリオを具体的に記述する
1.2 要件の精査と修正
- 人間が要件を確認し、必要に応じて修正・追加を行う
- ビジネス要件との整合性を確認し、不明瞭な点を明確にする
- 優先順位を設定する
2. 設計フェーズ
2.1 基本設計の生成
- ユースケース記述をAIに与えて基本設計を生成させる
- システム構成、主要コンポーネント、データフロー、API設計などを含める
- 非機能要件(パフォーマンス、セキュリティなど)への対応方針を定義する
2.2 詳細設計の生成
- 基本設計をAIに与えて詳細設計を生成させる
- クラス設計、データベーススキーマ、モジュール間インターフェースなどを詳細化
- エラーハンドリング、例外処理、エッジケースへの対応を含める
3. タスク管理フェーズ
3.1 タスクの分解
- 詳細設計に基づき、実装タスクに分解させる
- タスク間の依存関係を明確にする
- 各タスクの工数見積もりと優先度を設定させる
3.2 GitHub Issuesへの起票
- 分解された各タスクをGitHub Issuesとして起票させる
- 設計ドキュメントへの参照リンクを含める
- ラベル、マイルストーン、アサイン先を適切に設定する
4. 実装フェーズ
4.1 コード実装
- 詳細設計と対応するIssueをAIに与えてコードを生成させる
- Issue番号ごとにPRを作成させる
- PR単位で「+」ボタンを押して新規コンテキストを作成し、コンテキストの無駄遣いと精度低下を防ぐ
4.2 単体テストの作成
- 実装コードに対応する単体テストをAIに生成させる
- エッジケースや異常系のテストケースも含める
5. レビューフェーズ
5.1 AIによるレビュー
- コードの技術的問題、セキュリティ問題、パフォーマンス問題の検出
- コーディング規約の遵守確認
- テストカバレッジの評価
5.2 人間によるレビュー
- ビジネス要件との整合性確認
- 全体設計との整合性確認
- ユーザー体験の評価
5.3 フィードバックの反映
- レビューに基づく修正をAIに行わせる
- 修正内容を再レビュー
6. 進捗管理と改善
6.1 進捗管理
- 定期的なプロジェクト進捗レポートをAIに生成させる
- 完了タスク、進行中タスク、ブロッカーの可視化
6.2 プロセス改善
- 各フェーズごとのAIパフォーマンスを評価
- AIへの指示や手順を継続的に改善
- 成功パターンとベストプラクティスを蓄積