关于 gap-analysis-worksheet
面向业务分析师的需求分析技能,可从初始需求文档中找出缺失、歧义和不完整信息,并生成定向问题工作表,为正式需求访谈做准备。
主要功能
- 01检查需求缺口与歧义
- 02评估 11 类缺口
- 03生成结构化 Markdown 工作表
- 04编写具体且可回答的问题
- 05按类别汇总发现
适用场景
- 01为需求访谈整理利益相关者笔记
- 02澄清范围、用户角色和成功标准
- 03发现缺失的约束或依赖项
- 04记录供业务分析师审阅的问题
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ validkeys/ sherpy --skill gap-analysis-worksheet安装后在 Claude Code 中输入/gap-analysis-worksheet确认已加载。
附带文件references/example.yamlreferences/output-spec.md
详细介绍
差距分析工作表
分析初始需求文档中的差距、歧义和缺失信息。生成 gap-analysis-worksheet.md,这是一份结构化工作表,供业务分析师在继续进行 /business-requirements-interview 前填写。
目的
利益相关方提供的初始需求通常包含:
- 模糊或含糊的陈述
- 缺失的角色或用户类型
- 未定义的范围边界
- 未说明的假设
- 缺失的非功能性需求
- 未定义的成功标准
此技能会将这些差距转化为有针对性的问题,确保正式需求访谈以经过验证且完整的输入为基础。
前置条件
- 任意格式的初始需求文档:纯文本、Markdown、YAML、PDF 摘要、会议记录、产品简介或类似文档
用法
/gap-analysis-worksheet path/to/requirements [base-directory]
如果未提供基础目录,则通过查找当前目录中的 requirements/ 文件夹自动检测。
如果找不到,则提示用户:“应在何处创建差距分析工作表?”
等待用户提供路径后再继续。将路径存储为 base_directory。
流程
第 1 步:加载并阅读需求
完整阅读输入文档。识别所有明确提出的需求、目标、角色、约束和假设。
第 2 步:按类别分析差距
针对以下每个类别,扫描文档并识别差距。差距包括:
- 缺失 — 应当提供但完全未提及的信息
- 含糊 — 可有多种解读方式的陈述
- 不完整 — 仅部分说明的需求
- 矛盾 — 相互冲突的陈述
- 假设 — 有所暗示但从未明确说明的内容
差距类别(评估全部十一项):
- 问题与目标 — 核心问题是否定义明确?目标是否具体且可衡量?
- 角色与用户 — 是否识别了所有用户类型?是否描述了他们的需求和痛点?
- 范围 — 明确属于范围内和范围外的内容分别是什么?边界在哪里?
- 功能需求 — 是否对所有功能进行了足够详细的描述,以便实现?是否考虑了边缘情况?
- 非功能性需求 — 对性能、安全性、可扩展性、无障碍性和可靠性的预期是什么?
- 成功标准 — 如何衡量成功?怎样才算“完成”?
- 假设 — 有哪些未明说的假设?隐含了哪些依赖关系?
- 约束 — 有哪些技术、时间、预算、法规或团队方面的约束?
- 依赖关系与集成 — 涉及哪些外部系统、API、第三方服务或团队依赖关系?
- 风险 — 可能出现什么问题?是否需要制定缓解策略?
- UI/UX 影响 — 项目是否涉及面向用户的界面?是否识别了所有屏幕/页面?是否描述了交互模式?是否说明了无障碍要求?是否有设计系统或组件库?是否考虑了响应式/移动端需求?发现差距时,添加建议:“检测到 UI 工作 — 实施规划后将触发线框图规划(第 6 步)。”
跳过没有差距的类别 — 不要在输出中包含空章节。
第 3 步:编写 gap-analysis-worksheet.md
编写 {base_directory}/requirements/gap-analysis-worksheet.md。
如果目录不存在,则创建:
mkdir -p {base_directory}/requirements
输出格式
编写 {base_directory}/requirements/gap-analysis-worksheet.md。
输出为一份 Markdown 文档,包含文档路径、生成日期、状态和差距总数等标题信息,后接各差距类别的章节。每项差距都包括需求摘录、具体问题和回答栏。
完整的文档规范(包括所有类别、差距结构和验证规则)请参阅 references/output-spec.md。
完整示例请参阅 references/example.yaml。
编写优质的差距问题
具体明确——引用确切的需求或缺失部分。
好:
What is the maximum file size a user can upload?不好:Are there any limits?
可回答——业务分析师应能给出具体答案。
好:
Should unauthenticated users be able to view public workflows, or is login required for all access?不好:What about authentication?
每个问题对应一个差距——不要将多个差距合并成一个问题。
好:
What should happen when a workflow task fails — should the entire workflow stop, or continue with remaining tasks?不好:What should happen with errors and timeouts and retries?
优先处理关键差距——关于核心功能、角色和范围的问题,应优先于锦上添花的澄清问题。
需求摘录指南
- 尽可能直接引用文档内容——控制在 15 个词以内
- 如果差距涉及完全缺失的内容,请使用:
"Not addressed in requirements" - 如果差距适用于整个章节,而非某一具体行,请引用该章节:
"[Goals section]"
输出示例
请参阅 references/example.yaml,其中包含基于规范示例输入的完整示例。
自我审查
生成工作表后,请执行以下检查,并在正文中附上简短摘要。
检查项
- 已评估全部 11 个类别(跳过的类别均不存在值得记录的差距)
- 每个问题都具体明确,且业务分析师能够回答
- 没有两个问题涉及同一个差距
- 关键差距(范围、角色、核心功能)在各自类别中排在前面
- 需求摘录准确反映源文档
- 没有遗漏存在实际差距的类别
正文摘要
## Worksheet Summary
**Input:** [requirements file]
**Output:** gap-analysis-worksheet.md
**Total Gaps Found:** [n]
By Category:
Problem & Goals: [n gaps or "✓ no gaps"]
Personas & Users: [n gaps or "✓ no gaps"]
Scope: [n gaps or "✓ no gaps"]
Functional Requirements: [n gaps or "✓ no gaps"]
Non-Functional Requirements: [n gaps or "✓ no gaps"]
Success Criteria: [n gaps or "✓ no gaps"]
Assumptions: [n gaps or "✓ no gaps"]
Constraints: [n gaps or "✓ no gaps"]
Dependencies & Integrations: [n gaps or "✓ no gaps"]
Risks: [n gaps or "✓ no gaps"]
UI/UX Implications: [n gaps or "✓ no gaps"]
Next step → Complete the worksheet, then run:
/business-requirements-interview