概述

Birgitta Böckeler在本文中深度解析了当前颇受关注的“Spec-Driven Development(SDD,规范驱动开发)”理念,结合最新三款SDD代表性工具——Kiro、spec-kit和Tessl,阐释了SDD在AI辅助编程领域的核心流程、不同工具实现思路及实际应用体验,并对方法论和工具面临的挑战进行了批判性反思。作者指出,SDD核心在于“先写规范再写代码”,让“规范”成为人与AI的协作基础和可信源。不同行业工具对SDD的实现层次和可持续性存在极大差异,现实应用中还需警惕流程繁复、控制感弱化等问题。最终,她强调,SDD理念很有前景,但工具和经验尚未成熟,需持续探索多种规模和类型项目的最佳实践。

Understanding Spec-Driven-Development: Kiro, spec-kit, and Tessl


主题梳理

1. Spec-Driven Development定义与核心理念

SDD(Spec-Driven Development)作为AI编码和软件工程新潮流,强调在代码编写前应先行构建详细“规范”(spec),由规范来指导AI生成代码开发需求。作者梳理发现,现阶段SDD理念尚无统一定义,业界处于快速变化和语义扩散阶段。主要的实现层次分为:

2. 规范(Spec)与“内存库”概念辨析

规范本身指以自然语言撰写、面向行为的结构化文档,用于表达软件功能、指导AI开发。规范的具体结构和粒度随工具不同而异,通常类似详细的产品需求文档。与规范不同的“内存库”(memory bank)包含对于整个项目和代码库始终相关的高层规则文件,如架构说明、设计理念等。规范仅针对单一功能或需求,而内存库则为所有AI开发环节提供背景知识。各工具通过划分“规范”与“内存库”文件,支持多层次开发上下文。

3. SDD工具实操对比

Kiro

Kiro以轻量级流程见长,主要满足“规范优先”层级: