# 头脑风暴阶段 Prompt 模板 ## 问答策略 主Agent作为问答引导者,通过系统性提问收集足够开发的信息。 ### 问答维度 1. **项目定位** - 这是什么项目?解决什么问题? 2. **目标用户** - 谁会使用?使用场景是什么? 3. **功能需求** - 核心功能有哪些?优先级如何? 4. **技术约束** - 技术栈?平台?依赖? 5. **非功能需求** - 性能?安全?可扩展性? 6. **边界条件** - 不做什么?已知限制? 7. **验收标准** - 怎样算完成?如何测试? ### 问答流程 ``` ┌─────────────────────────────────────────────────────────────┐ │ 头脑风暴问答循环 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 1. 开放式启动 │ │ "请描述您想要开发什么?" │ │ ↓ │ │ 2. 跟进深挖 │ │ 根据回答,选择下一个维度深入提问 │ │ - 功能细节 → "具体来说,[功能]应该如何工作?" │ │ - 技术选择 → "为什么选择[技术]?有其他选项吗?" │ │ - 边界条件 → "如果[场景],应该如何处理?" │ │ ↓ │ │ 3. 确认理解 │ │ "我理解是...,对吗?" │ │ ↓ │ │ 4. 继续或结束 │ │ - 有遗漏 → 回到步骤2 │ │ - 足够完整 → "我认为信息足够了,准备生成需求摘要" │ │ - 用户说"够了" → 生成需求摘要 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### 问题模板 #### 项目定位 ``` - "请描述您想要开发什么?" - "这个项目解决什么问题?" - "为什么现在要做这个?" - "成功后是什么样子?" ``` #### 目标用户 ``` - "谁会使用这个产品?" - "他们的主要使用场景是什么?" - "他们目前是如何解决这个问题的?" - "这个产品对他们最大的价值是什么?" ``` #### 功能需求 ``` - "核心功能有哪些?请按重要性排序" - "[功能]具体应该做什么?" - "用户如何使用[功能]?请描述完整流程" - "[功能]有什么特殊情况需要处理?" - "有没有可选功能或未来扩展?" ``` #### 技术约束 ``` - "您希望使用什么技术栈?" - "有什么必须使用的库或框架?" - "需要支持哪些平台?" - "有什么性能要求?" - "有现有的代码库需要集成吗?" ``` #### 非功能需求 ``` - "对性能有什么要求?响应时间?并发量?" - "有什么安全要求?" - "需要支持多大规模的数据/用户?" - "对可维护性有什么期望?" ``` #### 边界条件 ``` - "有什么是明确不做的?" - "有没有已知的限制?" - "有什么技术难点或风险?" - "有没有时间或资源限制?" ``` #### 验收标准 ``` - "怎样算开发完成?" - "如何验证功能正确?" - "需要什么样的测试?" - "交付物应该包含什么?" ``` ### 需求摘要模板 问答结束后,生成需求摘要并保存: ```markdown # 需求摘要 ## 项目概述 - **名称**: [项目名] - **描述**: [一句话描述] - **核心价值**: [最重要的价值] ## 功能需求 ### 核心功能 (Must Have) 1. [功能1] - [描述] 2. [功能2] - [描述] ### 可选功能 (Nice to Have) 1. [功能1] - [描述] ## 技术要求 - **语言**: [编程语言] - **框架**: [框架] - **依赖**: [依赖库] ## 非功能需求 - **性能**: [要求] - **安全**: [要求] - **其他**: [要求] ## 约束条件 - [约束1] - [约束2] ## 验收标准 - [ ] [标准1] - [ ] [标准2] ## 不在范围内 - [排除1] - [原因] ``` ### 结束条件 满足以下条件时可以结束头脑风暴: 1. **功能清晰** - 核心功能明确,每个功能有具体描述 2. **技术确定** - 技术栈已确定或有明确选择方向 3. **边界清晰** - 做什么和不做什么已明确 4. **可验收** - 有明确的验收标准 ### 保存结果 将需求摘要保存到: - `.planning/dev-workflow/requirements.json` (结构化数据) - `.planning/dev-workflow/requirements.md` (可读文档) 更新状态: ```json { "phases": { "1": { "status": "completed", "data": { "questions_asked": 10, "requirements_collected": true } } } } ```