4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AI駆動開発の方法論とツールを整理する

4
Posted at

はじめに

CursorやClaude Code、DevinなどのAIコーディングツールが増えた今、「AIにどう作らせるか」という手法論の側も大きく変わってきていると思います。構造化されたアプローチが登場し、Spec KitやBMAD、OpenSpec、cc-sdd、Kiro、AI-DLCなど、それを支えるフレームワークやツールも次々と出てきました。

まず背景にある抽象的な手法・方法論を整理し、その上で具体的なフレームワーク・ツールがどう対応するかをまとめてみたのがこの記事です。

AI駆動開発の手法

AI駆動開発には、ざっくりすると以下の主要なアプローチがあります。

  • Prompt Engineering : AIに対して効果的な指示を与える
  • Context Engineering : AIに与える文脈や知識を管理する
  • Spec-Driven Development(SDD) : 仕様を中心に開発を進める
  • Agentic Development : 複数のAIエージェントが協調して開発を進める

Vibe Coding(仕様を書かずにAIと会話しながら直感的にコードを作るスタイル)は、Prompt Engineeringの延長と解釈します

この4つは全く別物というよりは、前段の手法が元となった進化形になっていると私は捉えています。

Prompt Engineering

AIツールを使った開発の始まりは、Prompt Engineeringだったと言えるでしょう。「どのようにAIに指示を与えるか」が関心事でした。

しかし、段々と悩みも出てきます。過去の設計判断を共有できない、プロジェクト固有のルールを覚えられない、セッションを跨ぐと前提知識が飛ぶ、といった問題です。

Context Engineering

AIに正しく指示を与えても、必要な情報を持っていなければ適切な判断はできません。そこで出てきたのがContext Engineeringです。プロンプトの工夫ではなく、AIが参照すべき文脈や知識を体系的に管理しようという考え方です。

Contextとは

Contextは言葉の通り、AIに与える背景情報です。そこには「なぜ・何を使って・どうやって作るのか」がドキュメント化されます。

  • Business Context : プロジェクトの目的・ユーザー課題
  • Technical Context : アーキテクチャ・ADR・技術的制約
  • Project Context : コーディング規約・ディレクトリ構成・開発ルール

これによって、設計の一貫性維持や仕様に沿った開発がやりやすくなるので、現在のAI駆動開発の基盤になっている考え方だと思います。

つまり、「AIにいい指示を与える」→「AIが仕事しやすい環境を作る」という移り変わりだと見て取れます。

Spec-Driven Development (SDD)

Context Engineeringによって、AIを使った開発は格段に高速化しました。しかし、AIの実装速度が上がっても、「動くけど意図と違うものが量産される」という品質の問題が出てきます。
この問題の要因は、要件や意図が曖昧なままAIに渡してしまうことにあります。その結果重要になったのが、仕様そのものを中心に管理するという考え方でした。

そして登場したのが仕様駆動開発、Spec-Driven Development(SDD)です。

SDDとは

SDDは実装をする前にまず仕様を仕様を整理します。それがAIに渡すコンテキストとなるので、仕様が開発の中心になります。

RequirementsDesignTasksImplementation

実装の前にRequirements(要件)、Design(設計)、Tasks(タスク)を作成し、その仕様を基にAIや開発者が実装を行います。

SDDから分かる開発の変化

従来のソフトウェア開発では、実装そのものが大きなコストを占めていました。しかし、AIの実装速度が圧倒的に上がったことで、「どう実装するか」は以前ほど大きな課題ではなくなりつつあります。
一方で、AIは要求の曖昧さや設計上の曖昧さを解決してくれるわけではありません。その結果、開発のボトルネックは実装から仕様定義へと移ったと考えられています。

Agentic Development

システム規模が大きくなると、要件整理・設計・実装・テスト・ドキュメント作成を単一のAIだけでこなし続けるのは厳しくなります。

Agentic Developmentは、複数のAIエージェントに役割を分担させるアプローチです。AnalystやPM、Architect、Developer、QAといった専門ロールを持つエージェントが協調して開発を進めます。

PM Agent:ユーザー要求をヒアリングしPRDを生成
    ↓
Architect Agent:PRDをもとに技術設計・API設計を行う
    ↓
Developer Agent:設計に従ってコードを実装する
    ↓
QA Agent:実装をレビューし、テストを生成・実行する
    ↓
問題があれば該当エージェントに差し戻し

SDDとの関係

SDDが「何を作るか」、Agentic Developmentが「誰が担当するか」を整理するので関心事が違います。
といっても、SDDとは競合しません。両者は相互補完的な関係で、SDDで整理した仕様を複数のエージェントが分担して実装するように、実際には組み合わせて利用されます。

フレームワーク・ツール

これまで挙げた方法論は、実際にはフレームワークやツールとして実装された形で利用することになります。
近年はGitHubのSpec KitやAWSのKiro、マルチエージェント開発を実現するBMADなど様々なアプローチが登場しています。

ここからは、先程までの話を踏まえて、代表的なフレームワークやツールの特徴を具体的に整理していきます。

Spec Kit

概要

GitHubが公開しているオープンソースの Spec-Driven Development(SDD)実践キット。SDDで開発を進めるためのワークフローやテンプレート、CLIを提供している。

特徴

Spec Kitでは、Spec → Plan → Tasks → Implementと開発プロセスを定義している。最小限の仕組みでSDDを始められ、ツール依存が少ないため既存の開発プロセスにも組み込みやすい。

OpenSpec

概要

こちらもオープンソースの Spec-Driven Development(SDD)フレームワーク。AIコーディングアシスタントとの協調を前提に、仕様をコードと同じリポジトリで管理することを重視している。
Spec Kitよりも軽量で反復的な仕様管理のフレームワークという位置づけ。

特徴

Proposal → Specs → Design → Tasksを通じて仕様を段階的に整理する。また、specs/changes/フォルダを使って現在の仕様と変更提案を分離して管理する。

Kiro

概要

AWSが提供するAIネイティブなIDE。単なるコード補完ツールではなく、自然言語で表現されたアイデアから要件定義・設計・タスク分解・実装までを一貫して支援できる。
SDDの考えが中核になっており、並列エージェントによる実装支援も提供。

特徴

Requirements → Design → Tasks → Implementationという流れをIDEに統合している。Steering Filesによるコンテキスト管理やAIエージェントを使ったHooksによる自動化機能もある。

cc-sdd

概要

Kiro流のSDDワークフローを実践できるようにするオープンソースのフレームワーク。
汎用的なSDDフレームワークと違い、複数のAIエージェントを利用した開発(Agentic Development)の実践基盤にも近づいている。

特徴

Discovery → Requirements → Design → Tasks → Implementationという流れを採用し、Steering Documentsによるコンテキスト管理も提供している。

また、マルチエージェント指向であり、自律実装・レビューエージェントを活用した長時間実装で、単に仕様を作るだけでなく仕様から実装までをエージェント主導で回せる点が特徴。

BMAD

概要

BMAD(Build More, Architect Dreams) は、Agentic Developmentを最も分かりやすく実践できるオープンソースのフレームワーク。単なるプロンプト集ではなく、アイデア創出から要件定義・設計・実装・テストまでを体系的に進めるための役割別エージェントとワークフローを提供する。

特徴

Analyst → PM → Architect → UX Expert → Scrum Master → Developer → QAのような、役割を分離した複数のAIエージェントを協調させる考え方を採用。
Claude Code、Cursor、Codex CLI、GitHub Copilotなど複数のAIコーディング環境で利用できる。

AgentOS

概要

AgentOSは、Agentic Developmentのために必要なAIエージェントを構築し調整する仕組みを提供するオープンソースのフレームワーク/ランタイム。
つまり、開発プロセスの支援ではなく、AIシステムそのものを作る汎用エージェント基盤を提供する。

特徴

  • マルチエージェント協調
  • 長期記憶
  • 専門エージェントの自動生成
  • RAG
  • ガードレール

などの機能を統合している。

AI-DLC Workflows

概要

AWSが提唱するAIネイティブな開発ライフサイクルであるAI-DLCを実践するためのオープンソース実装。AI-DLCを実践できるようにするルールセット・ワークフレームワークを提供する。

AI-DLCもSDDやAgentic Developmentと同じような、AI中心の新しいソフトウェア開発方法論。「AIが計画・実装を主導し、人間は意思決定と監督を行う」というアプローチ。

特徴

Inception → Construction → Operationsというライフサイクルで構成されており、Unitという作業単位で要求を管理する。
また、Adaptive Workflowによる工程の自動選択やHuman Approval Gateという重要な意思決定は人間の承認を求める機能も備えている。

フレームワーク比較

Context Engineering SDD Agentic Development
Spec Kit ×
OpenSpec ×
Kiro
cc-sdd
BMAD
AgentOS
AI-DLC

まとめ

Prompt Engineeringから始まり、AI駆動開発の手法は日々進化しています。
ツールを使い、今後のソフトウェア開発に最新の手法を取り入れていきたいと思います。

参考

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?