1. 主要ページへ移動
  2. メニューへ移動
  3. ページ下へ移動

QES ブログ

記事公開日

AWS Kiro & Spec-Driven Development (SDD): Unlocking Certainty in AI Development

  • このエントリーをはてなブックマークに追加

Introduction

Hello, this is Matsuura from the DX Solution Division.
In this post, I will focus on Spec-Driven Development (SDD), which is adopted by Kiro, and explain how it differs from the conventional "Vibe Coding" approach to AI coding!

1. What is Kiro? An AI Editor for Spec-Driven Development

AWS Kiro is a next-generation AI editor and Integrated Development Environment (IDE) provided by Amazon Web Services (AWS).
The more accustomed developers get to AI coding, the more they face the challenge: "Can vague 'Vibe Coding' really produce production-level quality?"
In response, Kiro supports engineers in coding exactly as intended by employing "Spec-Driven Development (SDD)."

Kiro is based on Visual Studio Code (VS Code), allowing you to utilize advanced AI functions while maintaining an environment familiar to many users.

Kiro's Major Development Modes

Kiro has two main modes depending on the development purpose.
The Spec Mode below is a major feature of Kiro and best represents its philosophy.

  • Spec Mode (Spec-Driven Development): Reliable feature development assuming production use. It generates and manages detailed specification documents and implements code based on them.
  • Vibe Mode (Prompt-Driven Development): Conventional AI coding. Used for idea testing and prototyping. You interact freely with the AI to generate code instantly.

2. What is Spec-Driven Development (SDD)? Binding Design Intent to Implementation

Spec-Driven Development (SDD) is based on the principle of "spending time on design and not implementing until the design is complete." It is a new approach to guaranteeing quality and consistency in the AI-powered development process.

While traditional development often considers "the code as the single source of truth," SDD proposes a paradigm shift where "the specification is the Single Source of Truth."

The Core Process of SDD (Kiro Spec Mode)

In Kiro, natural language requirements are broken down into the following structured specification files:

  1. Requirements: Based on prompts from the user, the AI generates a requirements.md containing specific user stories and acceptance criteria.
  2. Design: Based on the requirements, it generates a design.md, which serves as a blueprint for architectural decisions and technology stacks.
  3. Tasks: It decomposes the design into granular development tasks and creates tasks.md.

After a human reviews and approves these specifications, the AI generates code based on the tasks.
Because the AI uses these structured file groups as context rather than chat history, it can maintain stable quality and consistency even in large and complex projects.

3. The Limits of Tradition: The Critical Difference from Prompt-Driven Development (Vibe Coding)

The biggest reason Kiro recommends Spec Mode (SDD) is that it solves many of the challenges that traditional Prompt-Driven Development (Vibe Coding) brings to production development.

Vibe Coding (Kiro's Vibe Mode) is suitable for prototyping, but because it generates code based on "vague" or "hunch-based" instructions, the following problems frequently occur:

  • Lack of Context: It cannot account for complex project rules or the entire existing codebase, resulting in inconsistent code.
  • "Amnesia" and Rework: Long conversations cause the AI to forget instructions, leading to unintended outputs and significant corrective work (rework).
  • Absence of Documentation: The development history gets buried in prompt logs, leaving no maintainable documentation behind.

Advantage Comparison: SDD vs. Vibe Coding

Factor Advantage of Spec-Driven Development (SDD / Kiro Spec Mode) Challenges of Prompt-Driven Development (Vibe Coding)
Development Reliability Consensus is formed via review before implementation. Ensures output matches intent. Relies on ambiguous instructions; unintended features or out-of-spec code often mix in.
Context Management Structured specs act as context. AI always refers to the latest big picture. Chat history acts as context. Quickly hits limits and loses consistency.
Rework Cost Minimal rework cost due to early detection (during review). Maximum rework cost as issues are often discovered after implementation is complete.
Deliverables Code and detailed specs are completed simultaneously. Extremely high maintainability. Often only working code is delivered, leading to siloed knowledge.

Comparison between Vibe and SDD


Screen Example: Vibe Mode

Kiro Vibe Mode Screen
↑ Example of operation in Vibe Mode. Code is modified via prompts during initial commands or after code generation. It tends to become messy if prolonged.

Screen Example: Spec Mode

Kiro Spec Mode Requirements

Kiro Spec Mode Design
↑ Example of operation in Spec Mode. Requirements definition and design are carried out before code generation to ensure the code is output exactly as intended.

4. The Shifting Relationship Between AI and IDEs: The Engineer as Supervisor

With SDD, and specifically the arrival of Kiro, the relationship between AI and IDEs (Integrated Development Environments) changes fundamentally.
Along with this, the engineer's position also shifts.

New Relationship via SDD (Kiro): AI as the Process Manager (Protagonist)

Kiro's Spec Mode elevates AI from a mere code completion tool to an agent that leads the entire development process.

Kiro Spec Mode Task Generation
↑ Code generation based on tasks derived from the design contents.

  • AI (Kiro): Acts as an "Architect" and "Project Manager," handling upstream processes from requirements definition to design and task decomposition.
  • IDE (Kiro): Acts as a "Collaboration Platform" for humans to review, edit, and approve the specs and code generated by the AI.

Through this transition, the IDE's role becomes a collaboration platform between AI and engineers,
and the engineer's role shifts from "the person writing code" to "the 'Supervisor' who accurately reviews AI-generated specs and code to decide the project's direction."

Summary

AWS Kiro is not just a "code generation tool" but an IDE that embodies a new development paradigm called Spec-Driven Development (SDD).
SDD solves the challenges inherent in traditional Prompt-Driven Development (Vibe Coding), such as context management limits and the disconnect between specs and code, balancing both quality and productivity. From "vague" development to "clearly defined" development. This is the core mission of using Kiro.

If you are interested, please check out the AWS Skill Builder course.
Kiro Getting Started (Japanese)

↓QES will be actively sharing information about Kiro, so please stay tuned!

We aim to become Japan's #1 resource for Kiro! Our mission is to evangelize this technology by empowering end-users with top-tier education and technical support.



If you have any requests such as "I want to know more about this service" or "AWS environment construction and migration," please feel free to contact us via our inquiry form. For complex inquiries, our sales team will contact you directly. Also, please check out the links below!
<QES Related Solutions / Blogs>

※Amazon Web Services, the "Powered by Amazon Web Services" logo, and other AWS trademarks used in this blog are trademarks of Amazon.com, Inc. or its affiliates in the United States and other countries.

  • このエントリーをはてなブックマークに追加

お問い合わせ

Contact

ご質問やご相談、サービスに関する詳細など、何でもお気軽にご連絡ください。下記のお問い合わせフォームよりお気軽に送信ください。

お問い合わせ

資料ダウンロード

Download

当社のサービスに関する詳細情報を掲載した資料を、下記のページよりダウンロードいただけます。より深く理解していただける内容となっております。ぜひご活用ください。

資料ダウンロード