BMAD-METHOD实战笔记_20260213112550

一、中大型多端项目的 BMAD 实操全步骤

BMAD 官方仓库 :https://github.com/bmad-code-org/BMAD-METHOD(Breakthrough Method for Agile AI Driven Development,文档与更新以仓库为准。)



0. 前置准备(适配中大型多端项目)

先完成基础环境和 BMAD 配置,适配多端技术栈:

  1. 安装 Cursor(推荐 AI 开发环境):

    • 下载:打开 Cursor 官网 下载并安装 Cursor 编辑器(基于 VS Code,内置 AI 能力);
    • 打开项目:用 Cursor 打开你的项目根目录(File → Open Folder);
    • 使用 BMAD:在项目内执行 npx bmad-method install 后,Cursor 会识别 _bmad 及 .cursor 下的命令,在聊天或命令面板中可使用 /bmad-help、/product-brief、/dev-story 等;
    • 若命令未出现:确认安装路径为项目根目录,且存在 _bmad 与 .cursor/commands 目录,必要时重启 Cursor。
  2. 环境准备:

    • 本地安装:Node.js ≥20(BMAD 基础)、JDK 17+(SpringBoot)、Vue CLI/Vite(Web 端)、HBuilderX(Uniapp)、Maven/Gradle(后端构建);

    • BMAD 增强安装:除核心 BMAD Method 模块外,安装 Test Architect (TEA)(企业级测试)、BMAD Builder(自定义多端工作流);

      bash 复制代码
      npx bmad-method install --modules BMM,TEA,BMB
  3. BMAD 初始化多端项目 :

    在空项目根目录(建议按「前端/后端/小程序」分目录)执行:

    bash 复制代码
    npx bmad-method init --project-type multi-end --tech-stack vue-ts,springboot,uniapp

    该命令会生成 BMAD 多端项目配置文件(bmad.config.json),自动关联对应技术栈的智能体(前端架构师、Java 后端工程师、Uniapp 开发、测试工程师等)。

1. 项目全局规划(BMAD 完整规划流起点)

核心目标:明确多端项目的核心目标、边界、架构原则,替代传统「需求文档+架构设计」环节。

  • 执行 BMAD 命令:

    复制代码
    /product-brief

    按 AI 提问回答(示例,可根据你的实际项目调整):

    AI 提问 回答示例(多端电商后台+小程序为例)
    产品名称? 多端电商管理系统(Web 运营端+小程序用户端+SpringBoot 接口层)
    核心目标? Web 端供运营管理商品/订单,小程序供用户下单,后端提供统一接口,数据互通
    多端核心诉求? Web 端(Vue+TS):权限管理、商品CRUD、订单统计;小程序(Uniapp):下单、支付、个人中心;后端(SpringBoot):接口统一、权限校验、数据持久化
    技术约束? Web 端用 Vue3+Pinia+TypeScript,后端用 SpringBoot 3+MyBatis-Plus,小程序基于 Uniapp 适配微信/支付宝
    非功能需求? 接口响应时间<500ms,小程序兼容微信基础库≥2.30,Web 端适配主流浏览器
  • 接着执行架构设计命令(调用多智能体协作):

    复制代码
    /create-architecture --party-mode "前端架构师,Java架构师,测试架构师,PM"

    ✅ 预期输出:

    • 多端整体架构图(前端→后端接口→数据库的交互流程);
    • 各端技术架构细节(Web 端:Vue3 组件拆分、路由设计;后端:分层架构(Controller/Service/Mapper)、接口规范;小程序:页面结构、分包策略);
    • 数据流转规则(比如用户登录态在多端的同步方式、接口统一返回格式);
    • 数据库设计(核心表:用户表、商品表、订单表,含字段及关联关系)。
2 中大型项目基础设施(数据库、缓存、工作流)

中大型项目除多端与接口外,通常需要明确数据库 、缓存 与流程引擎的选型与落地方式,并在 BMAD 的架构与 Story 中体现。

  • 数据库:

    • 选型与规范 :在 /create-architecture 或 /create-prd 中明确主库选型(如 MySQL 8 / PostgreSQL)、字符集、命名规范(表/字段)、是否分库分表、读写分离等;输出「数据库设计」小节或独立文档(表结构、索引、迁移策略)。
    • 落地方式 :在 Epic/Story 中拆分为「建表与迁移脚本」「核心 CRUD 接口与 SQL」「数据一致性约束」等;/dev-story 开发后端时引用架构中的表结构,生成 MyBatis-Plus 实体/Mapper 或 JPA 实体,并编写 Flyway/Liquibase 迁移脚本,保证库表与代码一致。
    • 性能与安全 :在 /code-review 中关注慢查询、缺失索引、SQL 注入;TEA 测试可覆盖关键查询与事务场景。
  • 缓存:

    • 选型与策略:架构中明确缓存方案(如 Redis 单机/集群)、使用场景(会话、热点数据、分布式锁、接口防重等)、过期与更新策略(Cache-Aside、过期时间、与 DB 一致性)。
    • 落地方式 :在 Story 中拆出「Redis 配置与连接」「某业务缓存封装」「缓存失效与 DB 回源」等;/dev-story 生成 SpringBoot + Redis(或 Spring Cache + Redis)配置及业务侧缓存代码,并在架构文档中记录 Key 命名规范、序列化方式。
    • 运维与监控:部署阶段配置 Redis 高可用与监控;代码审查时检查缓存穿透/击穿/雪崩的防护(空值缓存、互斥锁、限流等)。
  • Flowable 工作流:

    • 选型与定位:适用于审批流、业务流程(请假、报销、订单状态机、工单流转等)。在架构中明确:使用 Flowable 作为流程引擎、部署方式(内嵌/独立服务)、与现有用户/权限体系的集成方式(用户组、候选人、网关表达式)。
    • 流程设计 :在 /create-architecture 或需求阶段输出核心流程的 BPMN 2.0 描述(或流程图),定义流程 Key、节点、网关、监听器;可单独建「流程定义」仓库或目录,与业务代码一起纳入版本管理。
    • 与 BMAD 的配合 :将「流程定义部署」「流程实例发起与查询」「任务认领/完成」「历史与报表」拆成 Epic/Story;/dev-story 时指定技术栈含 Flowable,生成流程部署接口、任务列表/办理接口、与前端联调所需 API;测试覆盖关键流程分支与边界(驳回、转办、超时等)。
    • 扩展点:若涉及复杂业务规则(如多级审批、会签、动态候选人),在架构中预留扩展点(监听器、委托表达式、服务任务),并在 Story 中明确实现方式,便于 AI 生成一致代码。

✅ 预期产出:架构文档中具备「数据库设计」「缓存策略」「流程引擎与 Flowable 使用规范」;Epic/Story 列表中包含对应开发与测试任务;开发与评审阶段有据可依。

3. 需求拆分与迭代规划(适配敏捷开发)

核心目标:将全局需求拆分为可迭代的「大功能(Epic)」和「小任务(Story)」,明确迭代周期。

  • 执行命令:

    复制代码
    /create-epics-and-stories

    AI 会自动拆分出多端对应的 Epic 和 Story,示例:

    • Epic 1:用户模块(Web 端用户管理 + 小程序用户登录 + 后端用户接口);
    • Epic 2:商品模块(Web 端商品CRUD + 小程序商品展示 + 后端商品接口);
    • 每个 Epic 拆分为 Story(如「Web 端实现商品列表查询」「后端编写商品列表接口」「小程序展示商品列表」)。
  • 迭代规划(确定 Sprint 周期,比如 2 周/迭代):

    复制代码
    /sprint-planning --sprint-number 1 --duration 2w --stories "用户登录(多端),商品列表(多端)"

    ✅ 预期输出:Sprint 1 任务清单、负责人(按端划分)、交付标准、测试要点。

4. 分端模块化开发(核心开发阶段)

按「后端接口 → Web 端 → 小程序端」的顺序开发(后端先行,避免前端等接口),每个端用 BMAD 针对性提效:

4.1 SpringBoot 后端 API 开发
  • 执行命令(调用 Java 后端智能体):

    复制代码
    /dev-story --story "开发用户登录接口" --tech-stack springboot --language java

    告诉 AI 具体要求:「基于 SpringBoot 3 + MyBatis-Plus,开发用户登录接口,包含参数校验、JWT 生成、密码加密,接口返回格式统一为 {code:xx, msg:xx, data:xx}」。

    ✅ 预期输出:

    • 完整的 Controller/Service/Mapper 代码(含 TypeScript 类型定义,供前端复用);
    • 接口测试用例(Postman 脚本);
    • 核心注释(适配团队协作)。
  • 批量生成核心接口:对「商品列表、订单创建」等核心接口,重复上述命令,或用 BMAD Builder 自定义「SpringBoot 接口生成工作流」,批量生成符合规范的代码。

4.2 Vue+TypeScript Web 端开发
  • 执行命令(调用前端智能体,关联后端接口):

    复制代码
    /dev-story --story "开发Web端用户登录页面" --tech-stack vue3-ts --api-spec "后端用户登录接口文档路径/内容"

    告诉 AI 要求:「基于 Vue3 + Element Plus + TypeScript,开发登录页面,包含表单校验、调用后端登录接口、Token 存储、路由守卫」。

    ✅ 预期输出:

    • 完整的 Vue 组件(.vue 文件)、TypeScript 类型定义(.d.ts);
    • 接口请求封装(axios 拦截器);
    • 样式适配(Element Plus 主题)。
  • 组件复用与规范:对「商品列表、分页组件」等通用组件,执行 /create-shared-components 命令,生成可复用的组件库,统一 Web 端代码规范。

4.3 Uniapp 小程序开发
  • 执行命令(调用 Uniapp 智能体,适配多端兼容):

    复制代码
    /dev-story --story "开发小程序用户登录页面" --tech-stack uniapp --adapt-wechat --adapt-alipay

    告诉 AI 要求:「基于 Uniapp,开发小程序登录页面,支持微信授权登录,调用后端登录接口,适配微信/支付宝小程序的样式差异」。
    ✅ 预期输出:

    • Uniapp 页面代码(.vue 文件)、manifest.json 配置(适配多平台);
    • 小程序授权登录逻辑(兼容不同平台的 API 差异);
    • 分包加载配置(避免小程序体积超限)。
5. 多端联调与集成测试(保障多端一致性)

中大型项目的核心风险点在多端联调,需用 BMAD 的测试能力全覆盖:

  1. 代码审查(多端统一):

    复制代码
    /code-review --multi-end --check-consistency "接口参数,数据格式,错误码"

    AI 会对比 Web 端、小程序端调用的接口参数、后端返回的错误码是否统一,指出不一致问题(比如 Web 端用 code:200 表示成功,小程序端用 code:0)。

  2. 企业级测试(TEA 模块):

    复制代码
    /tea-test --scope multi-end --test-type "接口测试,UI测试,兼容性测试"

    ✅ 预期输出:

    • 后端接口自动化测试代码(JUnit 5);
    • Web 端 E2E 测试代码(Cypress);
    • 小程序兼容性测试用例(覆盖不同微信版本);
    • 测试报告(指出接口超时、小程序样式错乱等问题)。
  3. 多端联调排查 :

    若联调出现问题(比如小程序调用接口跨域、Web 端 Token 失效),执行:

    复制代码
    /debug-story --issue "小程序调用后端接口提示跨域" --tech-stack uniapp,springboot

    AI 会定位问题(如后端未配置跨域),并给出修复代码(SpringBoot 跨域配置类)。

6. 迭代发布与监控
  1. 构建部署脚本生成:

    复制代码
    /create-deploy-script --deploy-type "web:nginx,backend:docker,mini:wechat-ci"

    AI 会生成:

    • Web 端打包脚本(npm run build)+ Nginx 配置;
    • 后端 Dockerfile + docker-compose 配置;
    • 小程序上传脚本(微信开发者工具 CI 命令)。
  2. 监控告警配置:

    复制代码
    /create-monitor-config --tech-stack springboot --monitor-type "日志,接口耗时,错误率"

    生成 SpringBoot 日志配置(Logback)、接口耗时监控(Micrometer + Prometheus)配置,及时发现线上问题。

二、中大型多端项目的核心风险与应对策略

风险类型 具体表现 应对方案(结合 BMAD 特性)
多端技术栈适配风险 Web/Vue+TS、后端/SpringBoot、小程序/Uniapp 的代码规范、接口格式不一致 1. 用 /create-architecture 生成多端统一规范文档 ;2. 用 /code-review --multi-end 自动校验一致性;3. 自定义 BMAD 工作流,强制接口参数/错误码统一
架构膨胀与失控 中大型项目迭代中,后端分层混乱、前端组件冗余、小程序分包不合理 1. 每个迭代前执行 /architecture-review 校验架构合规性;2. 用 BMAD 的「规模自适应智能」,自动提醒架构冗余点;3. 拆分微模块(如后端按业务拆微服务)
多智能体协作混乱 调用多个智能体(前端/后端/测试)时,需求理解偏差、代码衔接断层 1. 用 --party-mode 让多智能体在同一会话协作,共享上下文;2. 执行 /requirement-sync 同步多端需求理解;3. 指定「主智能体(PM)」统一协调
测试覆盖不足 多端场景多,手动测试漏测(如小程序支付场景、Web 端权限边界) 1. 启用 Test Architect 模块,生成多端全场景测试用例 ;2. 执行 /auto-test 生成自动化测试代码,覆盖接口、UI、兼容性;3. 用 /QA --full 做全量回归测试
迭代进度失控 中大型项目需求多,迭代周期内无法完成多端任务,延期风险高 1. 用 /sprint-planning 自动拆分最小可交付任务(MVP);2. 执行 /progress-tracking 每日生成进度报告,识别阻塞点;3. 优先开发核心接口/页面,非核心功能后置
小程序兼容/性能风险 小程序在不同微信版本、设备上样式错乱、加载慢、体积超限 1. 用 /dev-story --adapt-wechat --performance 生成适配代码;2. 执行 /mini-program-check 自动检测体积/性能问题;3. 生成分包加载、图片懒加载优化代码
后端接口性能风险 中大型项目数据量增加,接口响应慢、数据库查询卡顿 1. 用 /code-review --performance 检测后端慢查询、冗余代码;2. 生成数据库索引优化建议、接口缓存(Redis)代码;3. 监控接口耗时,及时预警
数据库与缓存一致性风险 缓存与 DB 不一致、缓存穿透/击穿、迁移脚本与代码不同步、Flowable 流程与业务状态不一致 1. 在架构中明确缓存更新策略与 Key 规范,Story 中实现 Cache-Aside 与防护;2. 用 Flyway/Liquibase 管理迁移,/dev-story 生成的实体与脚本与架构文档对齐;3. Flowable 流程变更与业务 Story 同步评审,测试覆盖关键分支与回滚场景

三、总结

  1. 核心开发流程 :中大型多端项目需放弃轻量的「快速流」,采用 BMAD 「完整规划流」:安装 Cursor 与 BMAD → 初始化多端配置 → 全局产品/架构规划 → 基础设施(数据库、缓存、Flowable 工作流)设计 → 迭代拆分 → 分端模块化开发 → 多端联调测试 → 发布监控,核心是利用 --party-mode 多智能体协作和 Test Architect 模块保障多端一致性。
  2. 基础设施先行:数据库(表结构、迁移、索引)、缓存(Redis 策略与 Key 规范)、Flowable 工作流(流程定义、集成方式)应在架构阶段明确,并拆成可执行的 Epic/Story,与后端开发、代码评审和测试闭环。
  3. 风险防控核心:围绕「多端一致性」(规范+自动校验)、「架构可控」(定期评审)、「数据库与缓存一致性」(策略+迁移+防护)、「测试全覆盖」(自动化+全场景)展开,用 BMAD 的自定义工作流和规模自适应能力提前规避风险。
  4. 提效关键 :重复的多端代码(如接口类型定义、通用逻辑)通过 BMAD Builder 自定义工作流批量生成;数据库实体与迁移、缓存封装、Flowable 流程接口也可按规范由 /dev-story 生成,减少重复开发,聚焦核心业务逻辑。
相关推荐
Li_RuiQi9 小时前
DAgger方法演进_独立学习笔记
笔记·学习·计算机视觉
Li_RuiQi13 小时前
DAgger与交互式模仿学习_ACT学习笔记
笔记·学习
He BianGu13 小时前
【笔记】C# 中BindingFlags的详细作用
笔记·c#
AI视觉网奇13 小时前
turtle 入门教程笔记
笔记
跨知易知识产权14 小时前
美国专利确权是什么,和专利诉讼有什么不一样?
笔记
杨逢昌工厂6S管理14 小时前
126-杨逢昌6S三环体系:越做越乱的现场熵增机理与基准化治理——一线现场诊断笔记
经验分享·笔记·职场和发展·学习方法
悟道书生14 小时前
若依 RBAC 权限控制学习笔记
java·网络·笔记·sql·学习·vue
陈哈哈111115 小时前
折腾了半天,总算把 Vim 9.2 装明白了
笔记
陈哈哈111115 小时前
折腾了半天,总算把 OpenGL 的开发环境给装明白了
笔记
深圳老胡16 小时前
STM32F103 硬件 SPI 与软件 IO 模拟 SPI 最高速度差异详解
笔记·stm32·单片机·代码规范·1024程序员节