SuperAPI AI 工具集

spec-driven-development

编程与开发

查看项目

更新于 10-15 22:41

技能介绍

用途:Spec-Driven Development 是一套系统化的软件功能开发方法论,通过需求、设计、任务三个阶段的结构化规划,保证质量、可维护性与交付成功率,把模糊的功能想法转化为定义清晰的规格。

适用场景:适合包含多组件、集成或用户交互的复杂功能;返工成本高的高风险项目;需要团队共享理解与知识留存的项目;以及 AI 辅助开发中需要清晰结构提升输出质量的场景。不太适合有明显解决方案的简单缺陷修复、快速迭代的实验原型、时间紧迫的紧急热修,以及歧义极少的成熟模式。

三阶段流程:

  1. 需求收集:把模糊想法转为清晰可测试的需求,编写用户故事,用 EARS 格式定义验收标准,识别边界情况与约束,并验证完整性与可行性。EARS 模式包括 WHEN [event] THEN [system] SHALL [response]、IF [precondition] THEN [system] SHALL [response]、WHEN [event] AND [condition] THEN [system] SHALL [response]。
  2. 设计文档:研究技术方案与约束,定义系统架构与组件交互,明确数据模型与接口,规划错误处理与测试策略。文档结构包含 Overview、Architecture、Components and Interfaces、Data Models、Error Handling、Testing Strategy,并用决策记录(Context、Options Considered、Decision、Rationale)记录关键选择。
  3. 任务规划:把设计拆解为可执行的顺序实现步骤,将设计元素转为具体编码任务,按依赖排序,定义目标与完成标准,并引用需求保持可追溯。任务采用清单结构,每个任务建议控制在 2-4 小时。排序策略有 Foundation-First、Feature-Slice、Risk-First 与 Hybrid。

质量清单:需求需覆盖所有用户角色、正常/边界/错误情况,可测试可度量,无冲突且一致使用 EARS;设计需覆盖全部需求、明确组件职责与接口、处理预期失败并考虑安全;任务需覆盖所有设计组件、尊重依赖顺序、每个任务产出可测试代码并包含需求引用。

与 AI 工作流集成:先提供项目背景、约束与目标,按阶段推进(需求完成后再设计,设计完成后再任务),通过对话迭代而非单次请求,让 AI 对照清单审查输出,并维护需求、设计、任务之间的链接。

常见陷阱:跳过阶段、需求模糊、在需求中写实现细节、过度设计、任务粒度过大、遗漏错误情况。

完成规格后:按任务顺序开始实现,标记任务完成跟踪进度,若实现暴露缺口则更新规格,对照需求验证已完成工作,并记录经验供后续规格参考。

限制:资料未提供具体安装命令、平台支持、收费方式或价格信息。