BMAD方法论实战
实验步骤:BMAD 方法论实战演练
本实验指导学生使用 BMAD(Business Model Architecture and Development)方法论框架,在 AI IDE 中完成从创意构思到代码交付的完整产品开发流程。
======================================== 第一部分:理解 BMAD 方法论
Section titled “======================================== 第一部分:理解 BMAD 方法论”BMAD 是一套专为 AI 辅助开发设计的结构化产品开发框架。它将传统软件工程流程拆分为多个专业”角色”(Agent),每个角色由 AI 驱动,人类开发者负责决策和审核。
BMAD 四阶段工作流:
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ Phase 1 │───>│ Phase 2 │───>│ Phase 3 │───>│ Phase 4 │ │ 分析/构思 │ │ 规划/设计 │ │ 方案细化 │ │ 实施/交付 │ │ │ │ │ │ │ │ │ │ • 头脑风暴 │ │ • PRD 文档 │ │ • 架构设计 │ │ • 冲刺规划 │ │ • 领域调研 │ │ • UX 设计 │ │ • 史诗拆分 │ │ • 故事创建 │ │ • 市场调研 │ │ • PRFAQ │ │ • 用户故事 │ │ • 代码开发 │ │ │ │ │ │ │ │ • 代码审查 │ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
BMAD 核心角色一览:
角色 代号 职责 ───────────── ───────── ────────────────────────────────────── Business Analyst Mary 业务分析、需求挖掘、利益相关者调研 Product Manager John 产品规划、PRD 编写、需求优先级 UX Designer Sally 用户体验设计、交互规范、设计系统 System Architect Winston 技术架构、系统设计、技术选型 Senior Developer Amelia 代码实现、测试编写、代码审查 Tech Writer Paige 技术文档、API 文档、用户手册
BMAD 核心理念:
- 人类决策,AI 执行 —— 所有关键决策由人类做出,AI 负责细化、生成和执行
- 渐进式细化 —— 从粗略构想逐步细化为精确规格,每一步都经人类确认
- 上下文即一切 —— AI Agent 的输出质量取决于输入的上下文质量
- 每个阶段可独立运行 —— 可从任意阶段切入,也可跳过不需要的阶段
======================================== 第二部分:安装 BMAD 框架
Section titled “======================================== 第二部分:安装 BMAD 框架”前提:已完成「实验详细步骤 使用cnm同步项目库」中的环境准备(Python 3.12、Node.js LTS、Git 已安装)。
步骤 1:安装 BMAD Method
在你的项目根目录下打开终端(在 Trae CN 或 Qoder 中按 Ctrl + ` 打开终端),执行:
npx bmad-method install
安装过程中会交互式地询问以下问题:
问题 推荐选择 ──────────────────────────────── ────────────────────────────── Which modules to install? 选择 bmm(核心模块) Communication language? 选择 Chinese(中文) Document output language? 选择 English 或 Chinese Project name? 输入你的项目名称 Output folder? 保持默认 _bmad-output
安装完成后,项目中会生成以下目录结构:
你的项目/ ├── _bmad/ # BMAD 配置与脚本 │ ├── _config/ # 内部配置(勿修改) │ ├── bmm/ # 核心模块配置 │ ├── core/ # 核心脚本 │ ├── custom/ # 自定义覆盖(可选) │ ├── scripts/ # 自动化脚本 │ └── config.toml # 主配置文件 └── _bmad-output/ # 产出物目录
├── brainstorming/ # 头脑风暴结果├── planning-artifacts/ # 规划产出(PRD、架构、UX)└── implementation-artifacts/ # 实施产出(故事、冲刺状态)步骤 2:验证安装
在终端执行以下命令确认安装成功:
ls _bmad/config.toml 应能看到该文件存在 ls _bmad-output/ 应显示 brainstorming、planning-artifacts 等目录
提示:如果你的 AI IDE 中已经安装了 BMAD 相关的 Skills(如本教程仓库), 可以直接在 AI 对话中输入 “bmad help” 来确认 BMAD 已就绪。
步骤 3:安装 Skills 工具(如果尚未安装)
如果在前一个实验中已经安装了 skills 命令行工具,可以跳过此步。否则执行:
npm install skills -g
======================================== 第三部分:Phase 1 — 头脑风暴与创意构思
Section titled “======================================== 第三部分:Phase 1 — 头脑风暴与创意构思”本阶段目标:从一个模糊的想法出发,通过结构化头脑风暴,生成丰富的产品创意。
实验场景:我们要设计一个”智能排队管理系统”——帮助银行网点减少客户等待时间。
步骤 1:启动头脑风暴
在 AI IDE 的对话窗口中输入以下指令:
请帮我进行头脑风暴,我想设计一个银行网点的智能排队管理系统, 目标是减少客户等待时间、提升服务体验。
或者使用命令: help me brainstorm 智能排队管理系统
步骤 2:与 AI 互动发散
AI 会引导你进行发散式思考。在此过程中:
(1) 先进行”脑倾泻”(Brain Dump)
把你的所有想法告诉 AI,不要在意格式:- 客户可以通过手机预约排队- 系统能预测等待时间- VIP 客户有优先队列- 柜台分配要智能化...(2) AI 会使用创意激发技术
AI 可能会使用逆向思维、跨领域类比、约束移除等方法帮你产生更多创意。例如 AI 可能问:"如果完全没有柜台,这个系统会怎么运作?"(3) 目标:产生 10-20 个有价值的想法
不需要全部采纳,关键是充分发散后再收敛。步骤 3:收敛与总结
当讨论充分后,AI 会生成一份头脑风暴总结文档,保存在:
_bmad-output/brainstorming/brainstorming-session-YYYY-MM-DD-HHMM.md
打开该文件,确认关键想法已被记录。此文档将作为后续 PRD 的输入。
实验要点: • 头脑风暴的目标是”发散”,不要过早收敛到具体方案 • AI 会尽量让你保持在”生成模式”,避免过早下结论 • 你可以随时说”换个方向思考”或”这个方向深入一下”
======================================== 第四部分:Phase 2 — 产品需求文档(PRD)
Section titled “======================================== 第四部分:Phase 2 — 产品需求文档(PRD)”本阶段目标:将头脑风暴的结果转化为结构化的产品需求文档(PRD)。
步骤 1:启动 PRD 创建
在 AI 对话中输入:
请根据头脑风暴的结果,帮我创建 PRD
或者: bmad-prd create
AI 会以产品经理(John)的角色与你对话。
步骤 2:PRD 协作流程
AI 会引导你完成以下环节:
(1) 上下文加载
AI 会自动读取之前的头脑风暴文档。你也可以补充:- 竞品分析资料- 用户调研数据- 任何已有的需求文档(2) 选择工作模式
AI 会提供两种模式供你选择:模式 适用场景────────────── ──────────────────────────────────快速路径 (Fast) 已有清晰想法,让 AI 快速生成 PRD 草稿辅导路径 (Coach) 想学习 PM 思维,逐步与 AI 讨论每个需求实验建议选择"辅导路径",以便理解 PRD 的思考过程。(3) 需求细化
AI 会引导你逐节讨论 PRD 内容:- 产品愿景与目标用户- 核心功能特性(按优先级排列)- 用户旅程(User Journeys)- 非功能性需求(性能、安全、兼容性)- 成功指标(KPI)每一节 AI 会先提问,你回答后 AI 整理成规范的需求描述。(4) 审查与定稿
AI 会对 PRD 进行质量评审,检查是否有遗漏或矛盾。确认后,PRD 文档保存至:_bmad-output/planning-artifacts/prd.md步骤 3:查看 PRD 文档
打开 _bmad-output/planning-artifacts/prd.md,了解文档结构:
典型 PRD 包含: ├── 产品概述与愿景 ├── 目标用户与画像 ├── 功能需求(FR-1, FR-2, …) ├── 非功能需求(NFR-1, NFR-2, …) ├── 用户旅程 ├── 成功指标 └── 开放问题与待确认事项
实验要点: • PRD 中每个需求都有唯一编号(如 FR-1),便于后续追溯 • AI 会用”[ASSUMPTION]“标签标记它的假设,你需要逐一确认 • 决策日志(.decision-log.md)会记录所有关键决策及理由
======================================== 第五部分:Phase 3 — 方案细化(架构 + UX + 史诗拆分)
Section titled “======================================== 第五部分:Phase 3 — 方案细化(架构 + UX + 史诗拆分)”本阶段包含三个并行或顺序进行的子流程。
======================================== 5A. 架构设计(Architecture)
Section titled “======================================== 5A. 架构设计(Architecture)”步骤 1:启动架构设计
在 AI 对话中输入:
请根据 PRD 创建技术架构设计
或者: lets create architecture
AI 会以系统架构师(Winston)的角色与你对话。
步骤 2:架构决策流程
AI 会与你讨论以下方面:
(1) 技术选型
- 前端框架选择(React/Vue/小程序)- 后端框架选择(Spring Boot/FastAPI/Express)- 数据库选型(PostgreSQL/MySQL/MongoDB)- 消息队列、缓存等中间件(2) 系统架构
- 整体架构风格(微服务/单体/Serverless)- 模块划分与职责- API 设计规范- 数据模型设计(3) 关键技术决策
- 每个决策都会记录:选择了什么、为什么选择、放弃了什么替代方案- 这些决策会写入架构文档,指导后续开发架构文档保存至: _bmad-output/planning-artifacts/architecture.md
======================================== 5B. UX 设计
Section titled “======================================== 5B. UX 设计”步骤 1:启动 UX 设计
在 AI 对话中输入:
请帮我设计 UX
或者: lets create UX design
AI 会以 UX 设计师(Sally)的角色与你对话。
步骤 2:UX 设计流程
AI 会与你讨论:
(1) 信息架构(IA)—— 页面结构和导航逻辑 (2) 关键页面设计 —— 核心页面的布局与交互 (3) 用户旅程细化 —— 以具体角色走通关键流程 (4) 设计系统规范 —— 颜色、字体、间距等设计 Token
UX 产出两个文档: _bmad-output/planning-artifacts/DESIGN.md (视觉设计规范) _bmad-output/planning-artifacts/EXPERIENCE.md (交互体验规范)
======================================== 5C. 史诗与故事拆分(Epics & Stories)
Section titled “======================================== 5C. 史诗与故事拆分(Epics & Stories)”步骤 1:启动史诗拆分
在 AI 对话中输入:
请根据 PRD 和架构创建史诗和用户故事
或者: create the epics and stories list
步骤 2:拆分流程
AI 会将 PRD 中的需求拆分为:
层级关系:
PRD 需求 → Epic(史诗) → Story(用户故事) → Task(任务)示例拆分:
Epic 1: 客户预约系统 ├── Story 1.1: 客户可以通过微信小程序预约排队 ├── Story 1.2: 客户可以查看实时排队情况 └── Story 1.3: 客户可以取消或修改预约
Epic 2: 智能排队引擎 ├── Story 2.1: 系统能根据客户等级智能分配队列 ├── Story 2.2: 系统能预测并显示等待时间 └── Story 2.3: 系统能动态调整柜台分配
每个 Story 包含:
- 用户故事描述(As a… I want… So that…)
- 验收标准(Given/When/Then 格式)
- 技术约束与依赖
文档保存至: _bmad-output/planning-artifacts/epics.md
步骤 3:实施就绪检查
在进入开发前,执行就绪检查:
请检查实施就绪性
或者: check implementation readiness
AI 会检查 PRD、架构、UX、史诗文档是否完整且一致, 如果发现问题会列出清单供你补充修正。
======================================== 第六部分:Phase 4 — 实施与交付
Section titled “======================================== 第六部分:Phase 4 — 实施与交付”本阶段目标:将用户故事逐个转化为可运行的代码。
======================================== 6A. 冲刺规划(Sprint Planning)
Section titled “======================================== 6A. 冲刺规划(Sprint Planning)”步骤 1:生成冲刺计划
在 AI 对话中输入:
请生成冲刺计划
或者: run sprint planning
AI 会根据 epics.md 生成冲刺状态跟踪文件: _bmad-output/implementation-artifacts/sprint-status.yaml
该文件记录每个故事的当前状态:
状态流转: backlog → ready-for-dev → in-progress → review → done
示例输出:
development_status:
epic-1: in-progress1-1-appointment-booking: backlog1-2-real-time-queue: backlog1-3-cancel-appointment: backlogepic-1-retrospective: optionalepic-2: backlog2-1-smart-queue-allocation: backlog...======================================== 6B. 创建故事详情(Create Story)
Section titled “======================================== 6B. 创建故事详情(Create Story)”步骤 1:创建第一个故事的详细规格
在 AI 对话中输入:
请创建下一个故事
或者: create the next story
AI 会自动: (1) 从 sprint-status.yaml 中找到第一个 backlog 状态的故事 (2) 分析 PRD、架构、UX 文档中与该故事相关的所有内容 (3) 分析前一个已完成故事的经验教训(如果有) (4) 生成详细的故事规格文件
故事文件保存至: _bmad-output/implementation-artifacts/1-1-appointment-booking.md
故事文件包含: ├── 故事描述与验收标准 ├── 任务/子任务清单(含复选框) ├── 开发注意事项(Dev Notes) │ ├── 架构合规要求 │ ├── 文件结构要求 │ ├── 测试要求 │ └── 来自前序故事的经验 ├── 文件清单(File List) ├── 变更日志(Change Log) └── 状态(Status: ready-for-dev)
实验要点: • 故事文件是开发者(Amelia)的实施指南,越详细越好 • AI 会自动关联架构规范和前序故事的经验 • 每次只创建一个故事,以便融入最新的项目上下文
======================================== 6C. 开发故事(Dev Story)
Section titled “======================================== 6C. 开发故事(Dev Story)”步骤 1:启动故事开发
在 AI 对话中输入:
请开发这个故事
或者: dev this story
AI 会以高级开发者(Amelia)的角色开始编码。
步骤 2:开发流程
AI 按照严格的流程执行开发:
(1) 加载上下文
读取故事文件、项目上下文、架构规范(2) 更新状态
将故事状态从 ready-for-dev 改为 in-progress更新 sprint-status.yaml(3) 按任务顺序实施
对每个任务/子任务执行"红-绿-重构"循环:- 红:先写失败的测试- 绿:写最小代码使测试通过- 重构:优化代码结构(4) 标记完成
每完成一个任务,在故事文件中打勾 [x]更新文件清单(File List)(5) 完成验收
所有任务完成后:- 运行全量测试确保无回归- 验证所有验收标准- 将故事状态改为 review步骤 3:查看开发结果
开发完成后,你会看到:
- 源代码文件(根据架构规范组织)
- 测试文件(单元测试 + 集成测试)
- 故事文件中记录了完整的开发日志
======================================== 6D. 代码审查(Code Review)
Section titled “======================================== 6D. 代码审查(Code Review)”步骤 1:启动代码审查
在 AI 对话中输入:
请审查这段代码
或者: run code review
建议使用与开发不同的 LLM 进行审查,以获得更客观的结果。
步骤 2:审查流程
AI 使用三层对抗式审查:
审查层 关注点 ────────────── ────────────────────────────────── 盲点猎人 (Blind) 不看需求文档,纯粹从代码质量角度找 bug 边界猎人 (Edge) 遍历每个分支和边界条件,找未处理的边界情况 验收审计 (Accept) 对照验收标准,检查是否每个 AC 都被正确实现
审查结果按严重程度分级:
- Critical(严重):必须修复,否则不能上线
- High(高):强烈建议修复
- Medium(中):建议修复
- Low(低):可以后续处理
步骤 3:处理审查反馈
审查发现的问题会写入故事文件的”Senior Developer Review”章节。 重新运行 dev-story 时,AI 会优先处理审查反馈。
======================================== 第七部分:快速开发模式(Quick Dev)
Section titled “======================================== 第七部分:快速开发模式(Quick Dev)”如果你想跳过完整的 BMAD 流程,直接让 AI 快速实现一个功能:
在 AI 对话中输入你想要实现的功能描述,例如:
帮我实现一个简单的排队叫号功能,客户取号后显示排队位置, 柜台可以叫下一位客户
或者使用命令: /bmad-quick-dev
Quick Dev 会自动分析你的需求,生成简化的规格文档,然后直接编码。 适合小型功能、bug 修复、原型验证等场景。
======================================== 第八部分:辅助工具
Section titled “======================================== 第八部分:辅助工具”BMAD 还提供了多个辅助工具,可在任意阶段使用:
工具 触发方式 用途 ────────────────── ────────────────────────── ────────────────────── bmad-help “bmad help” 查看当前阶段和推荐下一步 bmad-party-mode “party mode” 多角色讨论(头脑风暴升级版) bmad-advanced-elicitation “deeper critique” 深度推敲某个方案或文档 bmad-retrospective “run a retrospective” 史诗完成后的回顾总结 bmad-correct-course “correct course” 开发过程中需求变更管理 bmad-document-project “document this project” 为已有项目生成文档
======================================== 验收清单(BMAD)
Section titled “======================================== 验收清单(BMAD)”完成以下全部检查项,截图保存作为实验报告交付物:
Phase 1 - 分析: [ ] 完成一次头脑风暴,生成了 brainstorming-session-*.md 文件 [ ] 头脑风暴文档中记录了至少 10 个有价值的想法
Phase 2 - 规划: [ ] PRD 文档已生成(_bmad-output/planning-artifacts/prd.md) [ ] PRD 中包含至少 3 个功能需求(FR)和 2 个非功能需求(NFR) [ ] PRD 中包含至少 1 个用户旅程
Phase 3 - 方案: [ ] 架构文档已生成(architecture.md) [ ] 史诗文档已生成(epics.md) [ ] 至少包含 2 个 Epic,每个 Epic 包含至少 2 个 Story [ ] 实施就绪检查通过
Phase 4 - 实施: [ ] 冲刺计划已生成(sprint-status.yaml) [ ] 至少创建了一个故事的详细规格文件 [ ] 至少完成了一个故事的代码开发 [ ] 代码审查已执行
======================================== 常见问题速查
Section titled “======================================== 常见问题速查”问题 原因 解决方法 ──────────────────────────────────── ──────────────────────────────── ────────────────────────────────── npx bmad-method install 报错 Node.js 版本过低 确保 node —version >= v20 AI 不认识 BMAD 命令 Skills 未安装或加载 确认 _bmad/ 目录存在,重启 IDE PRD 生成内容太简略 脑倾泻输入不够充分 提供更多上下文和细节,AI 会据此丰富内容 架构方案不合理 未提供足够技术约束 在对话中明确技术栈偏好和限制条件 故事粒度太大或太小 未在 PRD 中明确需求粒度 调整 PRD 中的功能需求拆分方式 dev-story 执行中断 故事规格不够详细 先运行 create-story 生成更详细的故事 代码审查发现大量问题 架构或故事规格不够明确 回到 Phase 3 补充架构细节和验收标准 sprint-status.yaml 状态不同步 手动修改了状态文件 重新运行 sprint planning 刷新状态 AI 输出是英文但想要中文 配置中 communication_language 修改 _bmad/config.toml 中的语言设置
未设置为 Chinese 或在对话中明确要求"用中文回复"======================================== 实验报告要求
Section titled “======================================== 实验报告要求”- 截图记录每个阶段的关键对话过程(至少 4 张,对应 4 个 Phase)
- 附上生成的核心文档:PRD、架构文档、史诗文档、至少一个故事文件
- 回答以下思考题: (a) BMAD 的四阶段流程与传统瀑布模型有何异同? (b) AI 在头脑风暴阶段使用了哪些创意激发技术?效果如何? (c) 对比 PRD 和代码实现的差距,分析”规格-实现鸿沟”的原因 (d) 代码审查发现了哪些问题?这些问题在人工开发中是否常见? (e) 你认为 BMAD 框架最大的优势和局限分别是什么?
======================================== 附录:BMAD 完整命令速查表
Section titled “======================================== 附录:BMAD 完整命令速查表”阶段 命令 / 触发语 产出文件 ───────── ──────────────────────────────────────── ────────────────────────────── 分析 “help me brainstorm” brainstorming-session-*.md 规划 “bmad-prd create” 或 “创建 PRD” prd.md, .decision-log.md 规划 “lets create UX design” DESIGN.md, EXPERIENCE.md 方案 “lets create architecture” architecture.md 方案 “create the epics and stories list” epics.md 方案 “check implementation readiness” 就绪检查报告 实施 “run sprint planning” sprint-status.yaml 实施 “create the next story” {story-key}.md 实施 “dev this story” 源代码 + 测试 实施 “run code review” 审查报告 辅助 “bmad help” 当前状态与推荐步骤 辅助 “party mode” 多角色讨论记录 辅助 “run a retrospective” 回顾总结文档 快捷 “/bmad-quick-dev” 规格文档 + 源代码