# SDD 规格驱动落地:文档管理策略 ## 研讨会背景与目的 本次分享是 AI 编程相关话题的延续,主要聚焦 **SDD(Spec-Driven Development,规格驱动开发)** 的文档管理策略。 ### 研讨会机制 - **目的**:让参会者能够参与达成社区共识,分享各公司在 AI 编程实践中的经验 - **形式**:咨询师分享观察到的公司实现方案、架构设计、系统设计等内容 - **价值**:对个人和团队帮助都非常大,通过集体讨论形成共识 > 特别感谢卡尼克老哥在研讨会期间贡献了大量分享思想,受益颇多。 --- ## AI 编程发展历程回顾 ### 时间线概览 | 时间 | 分享内容 | 核心概念 | |------|----------|----------| | 2025年6月 | 早期 AI 编程实践 | DPER5 方法论 | | 后续 | MCP 等工具整合 | MCP、Scales | | 5月9日 | Plan 和 Build 模式 | 新因子(吸引子)概念 | | 本次 | SDD 文档管理策略 | 规格驱动落地 | --- ## DPER5 方法论 ### 核心思想 DPER5 将软件工程中使用 AI 进行开发的过程分为 **5 个弱阶段(Weak Stages)**: ``` Discover → Plan → Execute → Review → Refine ↓ ↓ ↓ ↓ ↓ 发现 规划 执行 评审 优化 ``` ### 阶段特性 - 不同阶段 AI 会按照不同的模式运行 - 例如在 **Design** 模式或 **Discover** 模式下,AI **不会修改代码** - 这种分阶段约束是驯服 AI 的简单有效方法 ### 实践应用 - 在早期阶段(2025年),演讲者已经在公司内部领先应用 - 采用 `Design → Plan → Execute` 的流程驱动开发 - 该方法使用了较长时间,有效规范了 AI 辅助开发流程 --- ## MCP(Model Context Protocol)工具生态 ### 工具整合 后续随着 MCP 以及相关工具套件的出现,形成了完整的 AI 编程工具生态: - **MCP(Model Context Protocol)**:模型上下文协议 - **Scales**:扩展工具 - **SDD**:规格驱动开发方法论 这些工具被整合到一份 PPT 手册中,作为团队 AI 编程的指南或手册参考。 --- ## SDD(规格驱动开发) ### SDD 的核心模式 SDD 提供了多种工作模式,适用于不同的开发场景: | 模式 | 适用场景 | AI 行为特征 | |------|----------|-------------| | **Design** | 需求分析、架构设计 | 不修改代码,仅提供设计建议 | | **Discover** | 探索发现、方案调研 | 不修改代码,专注于信息收集 | | **Plan** | 规划分解、任务拆解 | 生成实现计划 | | **Build** | 代码实现、具体开发 | 执行代码编写和修改 | ### 新因子(吸引子)概念 由 countic 大佬在 5月9日的分享中引入: **物理学的概念解释**: - 在混沌系统中,存在两种震荡反馈的系统 - 这种系统最终会收敛到一个稳定状态 - 这个收敛点被称为 **吸引子(Attractor)** **在 AI 编程中的应用**: - 通过引入新因子,可以引导 AI 的输出趋向于预期的稳定状态 - 帮助控制 AI 在复杂任务中的发散性 - 实现更可控的 AI 驱动开发流程 --- ## SDD 文档管理策略 > 本次分享的核心主题,聚焦于规格驱动开发的文档管理方法 ### 文档在 SDD 中的作用 1. **规格定义**:明确需求和设计规范,作为开发的基准 2. **上下文传递**:在不同阶段之间传递上下文信息 3. **版本控制**:记录规格的变更历史 4. **团队协作**:统一团队对需求的理解和实现方式 ### 文档管理最佳实践 (基于 SDD 方法论,文档管理应遵循以下原则) - **规格优先**:在开发前先完成规格文档的编写 - **增量迭代**:规格文档随项目进展逐步完善 - **双向追溯**:规格与实现之间保持可追溯性 - **工具集成**:将文档管理与 AI 编程工具链整合 --- ## 工具链整合方案 ### 推荐的 AI 编程工具栈 ``` ┌─────────────────────────────────────────────────────┐ │ 规格层 (Spec) │ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ Design │ │ Discover │ │ Plan │ │ │ └─────────────┘ └─────────────┘ └─────────────┘ │ ├─────────────────────────────────────────────────────┤ │ 工具层 (Tools) │ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ MCP │ │ Scales │ │ SDD │ │ │ └─────────────┘ └─────────────┘ └─────────────┘ │ ├─────────────────────────────────────────────────────┤ │ 执行层 (Execution) │ │ ┌─────────────┐ ┌─────────────┐ │ │ │ Build │ │ Review │ │ │ └─────────────┘ └─────────────┘ │ └─────────────────────────────────────────────────────┘ ``` ### MCP 的核心功能 - 提供标准化的上下文协议 - 实现 AI 与外部工具的无缝集成 - 支持多工具协同工作 --- ## 社区贡献者致谢 | 贡献者 | 贡献内容 | |--------|----------| | 卡尼克 | 大量分享思想,研讨会核心参与者 | | countic | 引入新因子(吸引子)概念,分享 Plan/Build 模式 | | 少个分号 | SDD 方法论整理,工具链整合,文档管理策略分享 | --- ## 后续话题预告 本次分享的议程安排: 1. **SDD 文档管理策略**(当前内容) 2. **AIGC 模板相关话题**(由卡尼克老哥分享) --- ## 参考资源 - 本次分享的 PPT 资料(可作为团队 AI 编程手册/指南) - 搜索关键词:`AI编程`、`MCP`、`SDD`、`DPER5`、`规格驱动开发` - 相关标签:`人工智能`、`规格驱动开发`、`AI编程`