rights reserved. AI 駆動開発 AI によるタスクの解決をプロセスに 組み込んだソフトウェア開発⼿法 AI-Driven Development • どうすれば AI が ⾃律的にコーディングできるか︖ • どうすれば AI が プロジェクト固有の課題を解決できるか︖ AI を中⼼に考える という変化 Context コンテキストに合った課題解決を⾃律的に⾏う AI
rights reserved. AI 駆動開発における課題 コンテキストの⽋如 Everything as Code 解決策の例 要求と品質の⾔語化 要求定義フレームワーク ソフトウェア設計技法の学習 解決策の例 AI エージェントの管理 AI 駆動開発への習熟 コンテキストエンジニアリング 解決策の例 いずれも習得が必要; ⼀朝⼀⼣で⾝につくものではない
rights reserved. AI 駆動開発における課題 コンテキストの⽋如 Everything as Code 解決策の例 要求と品質の⾔語化 要求定義フレームワーク ソフトウェア設計技法の学習 解決策の例 AI エージェントの管理 AI 駆動開発への習熟 コンテキストエンジニアリング 解決策の例
rights reserved. Listen Define Invent Refine Test & Iterate Working Backwards Plan Design Code Test Deploy Main- tain Software Development Lifecycle ソフトウェア開発における 2 つのサイクル
rights reserved. Listen Define Invent Refine Test & Iterate Working Backwards Plan Design Code Test Deploy Main- tain Software Development Lifecycle Vibe Coding と仕様駆動開発が有効な場⾯ Vibe Coding at Prototyping Spec-Driven Development for Production
rights reserved. Plan Design Code Test Deploy Main- tain Software Development Lifecycle AI-DLC ウォーターフォール アジャイル AI-Driven Development Lifecycle (AI-DLC) ⼈が主体のソフトウェア開発⼿法 ⼈と AI が協働するソフトウェア開発⼿法 Drive 開発プロセスや コラボレーション モデルも含む
rights reserved. Everything as Code Everything as Code は、バージョン管理、テスト、デプロイという 同じ原則を適⽤して、 ネットワークインフラストラクチャ、ドキュメンテーション、構成など、 開発ライフサイクルのあらゆる側⾯の 保守性とスケーラビリティを⾼めることを⽬的とした ソフトウェア開発⼿法です。 https://docs.aws.amazon.com/wellarchitected/latest/devops-guidance/everything-as-code.html
rights reserved. Everything as Code が⼈と AI の協働を促進する • あらゆるものをコードで管理することで 変更を追跡可能にする • 再現性と⼀貫性を⽬的とする ... etc. • プレーンテキストで書かれたコードは ⼈間にも AI にも理解しやすい • ⼈間しか知らないことをなくす • ⼿動での設定変更 • 暗黙的なルールやオフラインの会話 Infrastructure as Code Configuration as Code Policy as Code Security as Code Documentation as Code Operation as Code Observability as Code Database as Code
rights reserved. AWS Cloud Development Kit (CDK) 使い慣れたプログラミング⾔語で クラウドリソースを定義できる オープンソースのフレームワーク "Meeting developers where they are" TypeScript JavaScript Python Java .NET Go アプリ全体をコードで管理 Everything as Code