跳到主要内容

BMAD 方法论

概述

BMAD(Breakthrough Method for Agile AI-Driven Development)是一种通过 AI 代理模拟完整敏捷开发团队的框架,旨在实现人机协作的高效软件开发流程。

核心理念

1. 最大化 AI 利用

  • MAXIMIZE AI LEVERAGE:让 AI 在开发中发挥最大价值
  • 通过专业化的 AI 角色处理不同阶段的任务
  • 减少人工重复工作,专注创造性决策

2. 质量控制

  • QUALITY CONTROL:开发者作为质量的最终裁决者
  • AI 提供建议和方案,人类做出最终决定
  • 确保代码质量和架构合理性

3. 迭代优化

  • ITERATIVE REFINEMENT:强调步骤的反复优化
  • 每个阶段都有检查点和验证机制
  • 持续改进直到满足质量标准

核心组成

1. 专业化 AI 代理

BMAD 包含 19 种专业角色,覆盖软件开发生命周期的各个方面:

规划阶段角色

  • Business Analyst(业务分析师)

    • 市场调研和竞品分析
    • 需求收集和整理
    • 创建项目简报
  • Product Manager(产品经理)

    • 创建 PRD(产品需求文档)
    • 定义功能和非功能需求
    • 编写 Epic 和 User Stories
  • UX Expert(用户体验专家)

    • UI/UX 设计规范
    • 用户体验流程设计
    • 交互设计指导
  • Architect(架构师)

    • 系统架构设计
    • 技术选型
    • 制定开发规范

开发阶段角色

  • Scrum Master(敏捷教练)

    • 任务分解和规划
    • 迭代进度管理
    • 团队协调
  • Developer(开发者)

    • 功能实现
    • 代码编写
    • 单元测试
  • QA Engineer(质量工程师)

    • 测试策略设计
    • 质量保证
    • 缺陷跟踪

支持角色

  • Product Owner(产品负责人)
    • 文档一致性检查
    • 需求优先级排序
    • 验收标准定义

2. 自适应工作流

BMAD 提供了 50+ 个引导流程,支持:

  • 需求定义标准化
  • 设计文档模板化
  • 开发流程规范化
  • 测试流程体系化

3. 双重部署模式

  • IDE 集成:在开发环境中无缝使用
  • Web 平台:通过浏览器界面操作
  • 自然语言控制:通过对话定义 AI 代理行为

BMAD 开发流程

阶段一:规划阶段

步骤 1:需求分析(可选)

使用 Business Analyst 进行前期调研:

@analyst *help
@analyst *brainstorm

输出成果:

  • 市场分析报告
  • 竞品分析文档
  • 项目简报(Project Brief)

步骤 2:创建 PRD

使用 Product Manager 创建产品需求文档:

@pm *help
@pm *create-prd

PRD 包含:

  • 功能需求(Functional Requirements)
  • 非功能需求(NFRs)
  • Epic(史诗)
  • User Stories(用户故事)

步骤 3:UX 设计(前端项目)

@ux-expert *help
@ux-expert *create-spec

输出:

  • 设计规范文档
  • UI 组件库
  • 交互流程图

步骤 4:架构设计

@architect *help
@architect *create-full-stack-architecture

可选架构类型:

  • *create-backend-architecture - 后端架构
  • *create-front-end-architecture - 前端架构
  • *create-full-stack-architecture - 全栈架构

步骤 5:文档对齐

使用 Product Owner 验证文档一致性:

@po *help
@po *validate

步骤 6:文档分片

将大文档拆分为可执行的小单元:

@po *shard

生成结构:

docs/
├── epics/ # Epic 文档
└── stories/ # Story 文档

阶段二:开发阶段

步骤 7:创建 Story

@sm *help
@sm *create

Scrum Master 会:

  • 查看之前的开发记录
  • 从 Epic 创建 Story 草案
  • 定义任务列表和验收标准

步骤 8:风险评估(推荐)

对于复杂功能,使用 QA 进行风险评估:

@qa *help
@qa *risk docs/stories/story-001.md
@qa *design docs/stories/story-001.md

输出:

  • 风险档案(Risk Profile)
  • 测试策略(Test Design)

步骤 9:实现 Story

@dev *help
@dev *develop-story

Developer 负责:

  1. 读取并理解 Story 任务
  2. 逐个实现任务和子任务
  3. 编写和执行测试
  4. 更新 Story 进度

步骤 10:QA 评审

@qa *review docs/stories/story-001.md

QA 执行:

  • 需求追溯分析
  • 测试覆盖率评估
  • 代码质量检查
  • 生成质量门(Quality Gate)

步骤 11:问题修复(如需要)

@dev *review-qa

应用 QA 的修复建议。

步骤 12:提交代码

git add .
git commit -m "Implement story XXX"

步骤 13:继续循环

返回步骤 7,处理下一个 Story。

快速开始示例

创建待办事项应用

# 1. 规划阶段
@pm *create-prd
@architect *create-full-stack-architecture
@po *validate
@po *shard

# 2. 开发阶段
@sm *create
@dev *develop-story
@qa *review docs/stories/epic-1.story-1.md

# 3. 提交并继续
git commit -m "Implement story 1"
@sm *create

最佳实践

1. 规划阶段

  • 充分调研:使用 Business Analyst 深入了解需求
  • 详细文档:确保 PRD 和架构文档的完整性
  • 对齐检查:通过 Product Owner 验证文档一致性

2. 开发阶段

  • 小步快跑:保持 Story 小而专注
  • 持续集成:每个 Story 完成后立即提交
  • 质量优先:高风险功能必须进行 QA 风险评估

3. 团队协作

  • 明确角色:每个 AI 代理有明确的职责范围
  • 有效沟通:通过结构化的文档和检查点确保信息同步
  • 持续改进:根据项目经验调整工作流程

适用场景

1. 个人开发者

  • 通过 AI 代理团队替代多人协作
  • 降低人力成本
  • 提高开发效率

2. 小型团队

  • 补充团队成员技能短板
  • 标准化开发流程
  • 提高交付质量

3. 企业项目

  • 快速原型验证
  • 大规模代码重构
  • 复杂系统集成

常见问题

Q: 如何选择合适的 AI 代理?

根据任务类型选择:

  • 需求分析 → Business Analyst
  • 产品设计 → Product Manager + UX Expert
  • 技术实现 → Developer + Architect
  • 质量保证 → QA Engineer

Q: Story 太大怎么办?

使用 Scrum Master 进一步分解:

@sm *split-story

Q: QA 发现大量问题如何处理?

  1. 先修复关键问题
  2. 更新开发流程
  3. 加强前期风险评估

进阶技巧

1. 自定义工作流

根据项目特点调整标准流程:

  • 增加特定的检查点
  • 定制文档模板
  • 优化角色分工

2. 性能优化

  • 并行处理多个 Story
  • 缓存常用文档
  • 优化 AI 代理调用

3. 质量门定制

根据项目要求定制质量标准:

  • 代码覆盖率要求
  • 性能指标标准
  • 安全检查清单

总结

BMAD 方法论通过:

  1. 专业化分工:让每个 AI 代理专注自己擅长的领域
  2. 标准化流程:确保开发过程的一致性和可预测性
  3. 质量保证:通过多重检查和验证确保交付质量
  4. 持续迭代:不断优化和改进开发流程

帮助开发团队:

  • 提高开发效率
  • 降低沟通成本
  • 保证交付质量
  • 加速产品迭代

相关资源