BMAD 角色分析在嵌入式系统中的应用(STM32)
BMAD 角色分析及其在嵌入式开发中的适用性
本文档分析了在 .cursor/rules/bmad 中找到的 BMAD(行为模型自适应)角色,以及它们在嵌入式系统开发中的具体应用(特别是 STM32/32位微控制器)。
角色分析
1. 架构师 (Winston) - 🏗️
角色: 整体系统架构师和技术负责人。
一般职责: 系统设计、技术选型、API 设计、基础设施规划。
对 STM32 的重要性: 关键
嵌入式特定职责:
- 硬件抽象: 根据性能需求,在 HAL(硬件抽象层)、LL(底层)或直接寄存器访问之间做出选择。
- RTOS 策略: 在 FreeRTOS、ThreadX、Zephyr 或裸机架构之间进行选择。
- 资源管理: 内存映射(Flash/RAM 分区)、DMA 通道分配、中断优先级分组。
- 电源架构: 设计睡眠模式和唤醒策略以满足功耗预算。
- 通信协议: 定义基于 UART/SPI/I2C/CAN 的自定义协议。
2. Dev (James) - 💻
角色: 全栈开发工程师(在此上下文中为固件工程师)。
一般职责: 实现、调试、重构。
对 STM32 的重要性: 关键
嵌入式特定职责:
- 驱动实现: 编写与 STM32 外设(定时器、ADC、GPIO)交互的代码。
- 业务逻辑: 实现设备状态机和传感器处理算法。
- 调试: 分析栈使用情况、堆碎片和硬件故障(HardFault_Handler)。
- 优化: 针对大小(Flash)或速度(MIPS)优化代码。
3. QA (Quinn) - 🧪
角色: 测试架构师和质量顾问。
一般职责: 测试架构、质量门禁、风险评估。
对 STM32 的重要性: 高
嵌入式特定职责:
- HIL 测试: 定义硬件在环测试。
- 单元测试: 实现目标板或基于主机的单元测试(例如 Ceedling、GoogleTest)。
- 非功能性需求: 验证实时约束(延迟/抖动)、功耗曲线和栈溢出保护。
- 可靠性: 长时间运行测试(浸泡测试)以检测内存泄漏。
4. PO (Sarah) - 📝
角色: 产品负责人。
一般职责: 待办事项管理、用户故事细化、验收标准。
对 STM32 的重要性: 高
嵌入式特定职责:
- 需求转换: 将”设备必须使用电池运行 2 年”转换为”平均电流 < 10uA”。
- 故事定义: “作为用户,我希望电池电量低时 LED 闪烁红色。”
- 验收标准: 定义传感器读数的精确容差。
5. PM (John) - 📋
角色: 产品经理。
一般职责: PRD(产品需求文档)、产品策略、功能优先级、路线图规划。
对 STM32 的重要性: 中等/高
嵌入式特定职责:
- 硬件生命周期: 将固件功能与硬件板版本(Rev A、Rev B)对齐。
- 合规性: 确保固件符合监管标准(FCC/CE/IEC)。
6. UX 专家 (Sally) - 🎨
角色: UX 设计师。
一般职责: UI/UX 设计、线框图。
对 STM32 的重要性: 取决于项目(GUI 项目高,无头设备低)
嵌入式特定职责:
- GUI 设计: 如果 STM32 有显示屏,为 TouchGFX/Embedded Wizard/LVGL 设计界面。
- 人机交互: 设计 LED 闪烁模式和按键行为(短按与长按)以提供用户反馈。
7. 分析师 (Mary) - 📊
角色: 业务分析师。
一般职责: 市场研究、头脑风暴。
对 STM32 的重要性: 中等
嵌入式特定职责:
- 传感器选择: 研究满足成本/性能要求的可用传感器。
- 竞争分析: 分析竞争对手设备的拆解和功能集。
8. SM (Bob) - 🏃
角色: Scrum Master。
一般职责: 流程指导、故事准备。
对 STM32 的重要性: 中等
嵌入式特定职责:
- 工作流管理: 帮助团队管理硬件依赖(例如,”开发板尚未到达”)。
9. BMAD 编排器和主控 - 🎭/🧙
角色: 协调和任务执行。
重要性: 元级别(用户工具)
- 功能: 帮助开发者在项目期间有效地在这些角色之间切换。
结论:STM32 开发中的关键角色
对于典型的 STM32 嵌入式项目,最常用和关键的角色是:
- Architect:确保受限资源(Flash/RAM/MIPS)得到正确使用,系统健壮可靠。
- Dev:编写底层 C 代码。
- QA:验证代码与物理世界的正确交互。
- PO:定义硬件的具体行为。
BMAD 角色分析在嵌入式系统中的应用(STM32)
http://example.com/2025/12/15/bmad_roles_analysis_stm32/