| name | brainstorming |
| description | 结构化头脑风暴技能,在编码前生成约束、边界情况和备选方案。适用于功能规划、架构决策、技术选型等场景。当用户开始新项目、设计新功能、做技术决策时使用。 |
Brainstorming - 结构化头脑风暴
来源: obra/superpowers (142K⭐) - AI辅助开发方法论框架
参考: 苏格拉底式设计细化方法
核心价值
"在编码之前先思考" —— 大多数重构源于早期的设计缺陷
Brainstorming 帮助在动手之前系统性地思考问题,减少返工,提高代码质量。
适用场景
| 场景 | 问自己 |
|---|
| 新功能开发 | 这个功能的核心是什么? |
| 架构设计 | 有什么扩展需求? |
| 技术选型 | 有什么权衡取舍? |
| Bug修复 | 为什么会出现这个Bug? |
| 重构 | 目标是什么?风险是什么? |
头脑风暴四步法
步骤1️⃣:明确核心问题
问:
- 用户/业务真正需要的是什么?
- 什么是最小可用版本?
- 成功的标准是什么?
输出:
## 核心问题
[一句话描述真正要解决的问题]
## 成功标准
- [ ] 标准1
- [ ] 标准2
步骤2️⃣:识别约束条件
问:
- 有什么技术限制?
- 有什么时间限制?
- 有什么资源限制?
- 有什么必须兼容的要求?
输出:
## 约束条件
### 技术约束
- [技术限制1]
- [技术限制2]
### 时间约束
- [时间限制1]
### 兼容性要求
- [要求1]
步骤3️⃣:列举边界情况
问:
- 什么情况下会出错?
- 什么情况下性能会差?
- 空输入?无效输入?极限输入?
- 并发情况?竞态条件?
输出:
## 边界情况
### 输入边界
- 空输入 (null, "", [])
- 单个元素
- 极大数量
- 非法字符
### 错误场景
- 网络失败
- 超时
- 权限不足
- 资源耗尽
### 特殊场景
- 并发写入
- 数据不一致
- 历史数据迁移
步骤4️⃣:生成备选方案
问:
- 有哪些实现路径?
- 各有什么优缺点?
- 权衡取舍是什么?
输出:
## 备选方案
### 方案A: [名称]
- 优点:✅ [优点1]
- 缺点:❌ [缺点1]
- 风险:⚠️ [风险1]
### 方案B: [名称]
- 优点:✅ [优点1]
- 缺点:❌ [缺点1]
- 风险:⚠️ [风险1]
### 推荐:方案A/B
理由:[简短理由]
实用模板
功能开发模板
## 功能: [名称]
### 🎯 核心需求
[一句话描述]
### ✅ 成功标准
- [ ] 核心流程跑通
- [ ] 错误处理完善
- [ ] 性能满足要求
- [ ] 测试覆盖 ≥ 80%
### 📋 用户故事
- 作为 [角色],我希望 [功能],以便 [收益]
### ⚠️ 边界情况
| 场景 | 预期行为 |
|-----|---------|
| 空数据 | 显示空状态 |
| 加载中 | 显示loading |
| 请求失败 | 显示错误 + 重试 |
| 数据量>1000 | 分页/虚拟滚动 |
### 🔧 技术约束
- 响应时间 < 200ms
- 兼容 IE11 / 最新Chrome
- 移动端适配
### 📝 备选方案
[如有]
### ⏰ 时间估算
- MVP: X天
- 完整版: Y天
Bug修复模板
## Bug: [标题]
### 🔍 问题描述
[复现步骤和期望vs实际]
### ❓ 为什么会出现
[根本原因分析]
### ⚠️ 影响范围
- 受影响功能:[功能1]
- 受影响用户:[用户群]
- 数据影响:[如有]
### 🛠️ 修复方案
[代码改动]
### ✅ 验证方式
- [ ] 复现场景验证
- [ ] 单元测试
- [ ] 集成测试
### 📊 回归风险
- [ ] 相关功能测试
- [ ] 监控告警
苏格拉底式追问
在头脑风暴中,使用追问深入理解:
1. 追问本质
"这个需求背后的真正目的是什么?"
"如果不做这个会怎样?"
2. 追问边界
"什么情况下这个方案会失败?"
"输入的极限是什么?"
3. 追问权衡
"选择A而不是B的最大理由是什么?"
"我们愿意牺牲什么来获得什么?"
4. 追问风险
"最坏的情况是什么?"
"如何快速恢复?"
常见陷阱
| ❌ 陷阱 | ✅ 正确做法 |
|---|
| 上来就写代码 | 先明确需求和边界 |
| 追求完美方案 | 先做MVP |
| 忽略边界情况 | 头脑风暴时列出边界 |
| 忽略性能 | 提前考虑扩展性 |
| 单人决策 | 团队讨论 |
输出示例
用户说:"帮我设计一个用户登录系统"
AI执行Brainstorming:
## 用户登录系统设计
### 🎯 核心需求
安全、简单地验证用户身份
### ✅ 成功标准
- [ ] 用户名密码登录
- [ ] 记住登录状态
- [ ] 安全的密码处理
- [ ] 错误处理友好
### 📋 用户故事
- 作为用户,我希望用邮箱密码登录
- 作为用户,我希望忘记密码能找回
- 作为管理员,我希望看到异常登录
### ⚠️ 边界情况
| 场景 | 处理方式 |
|-----|---------|
| 密码错误3次 | 临时锁定 |
| 用户不存在 | 提示"用户不存在"或"密码错误"(安全) |
| 密码过期 | 强制修改 |
| 并发登录 | 允许多设备? |
| CSRF | Token验证 |
### 📐 安全考虑
- [ ] 密码加密存储 (bcrypt)
- [ ] 防止SQL注入
- [ ] 防止XSS
- [ ] HTTPS
- [ ] 限流
### 🛠️ 技术约束
- 使用JWT Token
- Token有效期7天
- 支持第三方登录扩展
### ⏰ 初步估算
- MVP: 3天
- 含找回密码: 5天
何时跳过
某些简单任务不需要完整头脑风暴:
- 简单的CRUD操作
- 已有的模式重复
- 紧急Bug修复
- 纯UI调整
- 小型重构
判断标准:如果预判这个问题你能在10分钟内想清楚,就不需要。