Requirement Clarifier
Overview
需求澄清技能帮助在实施任务前明确模糊的需求,确保方向正确、避免返工。通过结构化的三步骤流程(询问关键问题 → 提供选项让用户选择 → 生成需求清单让用户确认)和分类的问题模板,高效地澄清需求。
判断是否需要需求澄清
需要进行需求澄清的信号:
- •需求描述模糊:用户使用了"改进"、"优化"、"完善"、"处理"等模糊词汇
- •存在多种实现方式:任务可以通过不同技术或架构方案实现
- •缺少关键细节:缺少验收标准、边界条件、约束条件等
- •影响范围不明确:不清楚改动会影响哪些模块或文件
- •优先级不清晰:不清楚哪些功能是必须的,哪些是可选的
如果需求已经清晰明确,直接实施即可,无需使用此技能。
澄清流程
遵循三步骤流程:
1. 询问关键问题
根据任务类型选择相应的澄清模板,提出针对性的问题。
2. 提供选项让用户选择
对于有多种实现方式的情况,提供清晰的选项说明。
3. 生成需求清单让用户确认
总结理解的需求并生成清单,让用户确认或修改。
选择合适的澄清模板
根据任务类型选择相应的参考文档:
| 任务类型 | 参考文档 | 适用场景 |
|---|---|---|
| 前端/UI 任务 | frontend-ui.md | 界面设计、组件开发、样式调整等 |
| 后端/服务端任务 | backend-service.md | API 开发、数据库操作、后端逻辑等 |
| 代码质量任务 | code-quality.md | 测试、重构、性能优化等 |
| 新功能开发 | feature-dev.md | 功能设计、架构决策等 |
如果不确定任务类型,先阅读 clarification-principles.md 了解通用澄清原则。
澄清的四个关键方面
无论任务类型如何,澄清过程都应覆盖以下四个方面:
范围与优先级
- •这个任务的核心目标是什么?
- •哪些功能是必须的,哪些是可选的?
- •最小可行方案(MVP)是什么?
- •是否可以分阶段实现?
技术实现
- •是否有特定的技术栈或框架要求?
- •是否有多种实现方式可选?
- •是否需要遵循现有的代码风格或架构模式?
- •是否需要考虑与现有系统的集成?
质量标准
- •验收标准是什么?
- •边界条件如何处理?
- •错误处理要求是什么?
- •是否需要测试覆盖?
约束条件
- •是否有性能要求(响应时间、内存使用等)?
- •是否有兼容性要求(浏览器、版本等)?
- •是否有安全性考虑?
- •是否有时间或资源约束?
完成澄清后
完成澄清后,生成需求清单并让用户确认。确认后再开始实施任务。
示例需求清单格式:
markdown
## 需求确认 ### 核心目标 [用户想要达成的目标] ### 实施范围 - [x] 必须完成:[列表] - [ ] 可选完成:[列表] ### 技术方案 - 选择方案:[方案名称] - 理由:[简要说明] ### 验收标准 - [ ] [验收标准 1] - [ ] [验收标准 2] - [ ] [验收标准 3] ### 约束条件 - [约束 1] - [约束 2]
Resources
references/
任务类型特定的澄清模板和通用澄清原则:
- •clarification-principles.md - 通用澄清原则、流程和需求清单模板
- •frontend-ui.md - 前端/UI 任务澄清模板(组件开发、样式调整、响应式设计等)
- •backend-service.md - 后端/服务端任务澄清模板(API 开发、数据库操作、认证授权等)
- •code-quality.md - 代码质量任务澄清模板(测试、重构、性能优化等)
- •feature-dev.md - 新功能开发澄清模板(功能设计、架构决策、第三方集成等)