需求优先排序方法Skill prioritization-methods

这个技能是关于需求优先排序方法的综合指南,包括 MoSCoW、Kano 模型、WSJF 和 Wiegers 矩阵等技术。用于在软件开发或产品管理中,根据业务价值、客户影响或实施效率来排名需求,优化资源分配和决策制定。关键词:需求优先排序,MoSCoW,Kano 模型,WSJF,价值成本风险,需求分析。

需求分析 0 次安装 0 次浏览 更新于 3/11/2026

名称:优先排序方法 描述:“需求优先排序技术,包括 MoSCoW、Kano 模型、WSJF(SAFe)和 Wiegers 的价值/成本/风险矩阵。提供评分框架、权衡分析和优先可视化。当根据业务价值、客户影响或实施效率来排名需求时使用。” 允许工具:读取、写入、全局、grep、任务

需求优先排序方法

需求与功能优先排序技术的综合指南。

何时使用此技能

关键词: 优先排序,优先级,MoSCoW,Kano 模型,WSJF,加权最短作业优先,价值成本风险,Wiegers,优先级矩阵,必须有应该可以有,惊喜功能,基本需求,性能功能,延迟成本

在以下情况使用此技能:

  • 根据业务价值排名需求
  • 在竞争功能之间选择
  • 分配有限开发能力
  • 向利益相关者传达优先级决策
  • 平衡客户满意度与实施努力
  • 在产品规划中进行权衡决策

优先排序方法概述

方法 最适用于 复杂性 利益相关者输入
MoSCoW 快速分类,MVP 范围
Kano 模型 客户满意度分析 中等 高(调查)
WSJF 敏捷/SAFe 环境,流优化 中等 中等
Wiegers 矩阵 定量价值/成本分析 中等
机会评分 与 JTBD 对齐的优先排序 中等 高(调查)

MoSCoW 方法

类别

moscow:
  must:
    definition: "本版本中不可协商的"
    criteria:
      - "系统没有它将无法工作"
      - "法律/法规要求"
      - "核心价值主张"
    typical_percentage: "努力占比 60%"

  should:
    definition: "重要但不关键"
    criteria:
      - "有显著价值,但存在替代方案"
      - "关键利益相关者的期望"
      - "竞争对等性"
    typical_percentage: "努力占比 20%"

  could:
    definition: "如果有时间,拥有会很好"
    criteria:
      - "增强用户体验"
      - "低努力,增量价值"
      - "差异化但不必要"
    typical_percentage: "努力占比 20%"

  wont:
    definition: "明确不在当前范围内"
    criteria:
      - "同意延期,不是拒绝"
      - "未来考虑"
      - "资源限制"
    note: "记录以供未来参考"

应用

moscow_process:
  1. 列出所有需求
  2. 从 MUST 开始 - 要严格(如果所有都是 MUST,那没有一个是)
  3. 移动到 WON'T - 明确排除
  4. 在 SHOULD 和 COULD 之间分配剩余
  5. 验证:MUSTs 应占约 60% 的容量

  warning_signs:
    - "所有需求都是 MUST" → 更严格
    - "没有 WON'Ts" → 你在避免艰难决定
    - "MUSTs 超过容量" → 重新评估或减少范围

Kano 模型

功能类别

kano_categories:
  basic:
    name: "基本(必须有)"
    description: "期望的功能 - 缺少会导致不满"
    examples:
      - "网站无错误加载"
      - "登录正常工作"
      - "数据可靠保存"
    satisfaction_curve: "只防止不满,不创造满意"

  performance:
    name: "性能(一维)"
    description: "越多越好 - 线性满意"
    examples:
      - "页面加载速度"
      - "存储容量"
      - "集成数量"
    satisfaction_curve: "与投资的线性关系"

  excitement:
    name: "兴奋(惊喜功能)"
    description: "意外的功能创造惊喜"
    examples:
      - "AI 驱动的建议"
      - "个性化体验"
      - "创新快捷方式"
    satisfaction_curve: "高满意,低期望"

  indifferent:
    name: "漠不关心"
    description: "用户不关心的功能"
    examples:
      - "技术实现细节"
      - "过度工程功能"
    action: "降低优先级或移除"

  reverse:
    name: "反向"
    description: "一些用户主动不喜欢的功能"
    examples:
      - "强制教程"
      - "侵入性通知"
    action: "使可选或移除"

Kano 调查方法

kano_survey:
  question_pair:
    functional: "如果 [功能] 存在,你会感觉如何?"
    dysfunctional: "如果 [功能] 不存在,你会感觉如何?"

  answer_options:
    - "我喜欢它"
    - "我期望它"
    - "我中立"
    - "我可以忍受它"
    - "我不喜欢它"

  interpretation_matrix:
    # 功能 → 功能缺失 → 类别
    "喜欢 → 不喜欢": "兴奋"
    "喜欢 → 中立": "兴奋"
    "期望 → 不喜欢": "基本"
    "中立 → 中立": "漠不关心"
    "喜欢 → 喜欢": "可疑(不一致)"

Kano 可视化

满意度
    ↑
    │            ╱ 兴奋(惊喜功能)
    │          ╱
    │        ╱
    │      ╱
────┼─────────────── 性能
    │      ╲
    │        ╲
    │          ╲
    │            ╲ 基本(必须有)
    │
    └─────────────────────────────→ 实现度
         未实现          完全实现

WSJF(加权最短作业优先)

公式

wsjf:
  formula: "WSJF = 延迟成本 / 作业大小"

  cost_of_delay:
    components:
      user_value: "对最终用户/客户的价值"
      time_criticality: "价值随时间衰减的程度"
      risk_reduction: "由功能启用的风险/机会"

    formula: "CoD = 用户价值 + 时间关键性 + 风险降低"

  job_size:
    definition: "实施相对努力"
    scale: "斐波那契(1, 2, 3, 5, 8, 13)"

WSJF 评分模板

wsjf_example:
  feature: "移动应用离线模式"

  cost_of_delay:
    user_value:
      score: 8
      rationale: "现场工作者高度请求"
    time_criticality:
      score: 5
      rationale: "竞争对手在 Q2 推出类似功能"
    risk_reduction:
      score: 3
      rationale: "减少连接问题的支持票"
    total_cod: 16

  job_size:
    score: 5
    rationale: "中等复杂度,已知模式"

  wsjf_score: 3.2  # 16 / 5

  interpretation: "高优先级 - 努力价值高"

WSJF 比较表

功能 用户价值 时间关键性 风险降低 CoD 大小 WSJF 排名
离线模式 8 5 3 16 5 3.2 1
深色主题 5 1 1 7 2 3.5 2
导出 PDF 6 3 2 11 8 1.4 3

Wiegers 的价值/成本/风险方法

评分维度

wiegers_method:
  dimensions:
    value:
      question: "这提供什么相对好处?"
      scale: 1-9
      perspective: "客户/业务价值"

    penalty:
      question: "不拥有这个的相对惩罚是什么?"
      scale: 1-9
      perspective: "遗漏风险"

    cost:
      question: "实施的相对成本是什么?"
      scale: 1-9
      perspective: "开发努力"

    risk:
      question: "相对技术风险是什么?"
      scale: 1-9
      perspective: "不确定性,复杂性"

  formula: |
    优先级 = (价值 × 价值权重 + 惩罚 × 惩罚权重) /
               (成本 × 成本权重 + 风险 × 风险权重)

  default_weights:
    value: 2
    penalty: 1
    cost: 1
    risk: 0.5

Wiegers 模板

wiegers_example:
  feature: "双因素认证"

  scores:
    value: 7      # 高安全价值
    penalty: 9    # 如果缺少的较大惩罚(合规风险)
    cost: 5       # 中等实施努力
    risk: 3       # 已知模式,低风险

  calculation:
    numerator: (7 × 2) + (9 × 1) = 23
    denominator: (5 × 1) + (3 × 0.5) = 6.5
    priority: 3.54

  interpretation: "高优先级,因为遗漏的惩罚强"

机会评分(JTBD)

重要性 vs 满意度

来自 JTBD 框架:

opportunity_scoring:
  formula: "机会 = 重要性 + (重要性 - 满意度)"

  data_collection:
    survey_questions:
      importance: "达到 [结果] 有多重要?(1-10)"
      satisfaction: "对当前能力的满意度如何?(1-10)"

  interpretation:
    score_15_20: "高机会 - 未满足"
    score_10_15: "中等机会"
    score_5_10: "低机会 - 服务良好"
    score_below_5: "过度服务 - 降低优先级"

  example:
    outcome: "快速找到相关产品"
    importance: 9
    satisfaction: 4
    score: 14  # 9 + (9-4)
    interpretation: "中等至高机会"

选择方法

method_selection:
  use_moscow_when:
    - "需要快速决定"
    - "利益相关者熟悉方法"
    - "定义 MVP 范围"
    - "二元进入/退出决定"

  use_kano_when:
    - "理解客户满意度驱动因素"
    - "产品差异化焦点"
    - "有客户调查访问"
    - "平衡基本与惊喜功能"

  use_wsjf_when:
    - "敏捷/SAFe 环境"
    - "基于流的交付"
    - "经济决策制定"
    - "比较不同大小的功能"

  use_wiegers_when:
    - "需要定量理由"
    - "多个利益相关者视角"
    - "高风险优先决策"
    - "想要加权多个因素"

  use_opportunity_when:
    - "基于 JTBD 的产品开发"
    - "有客户研究可用"
    - "寻找未满足需求"
    - "以结果为导向的路线图"

结合方法

combined_approach:
  step_1: "使用 MoSCoW 进行初步分类"
  step_2: "应用 Kano 以更好地理解 SHOULD/COULD 项"
  step_3: "使用 WSJF 或 Wiegers 在类别内排名"
  step_4: "用机会评分根据客户数据验证"

  example_workflow:
    - "所有 MUSTs 进入待办事项(不可协商)"
    - "Kano 分析 SHOULDs 揭示 3 个惊喜功能"
    - "WSJF 对惊喜功能按价值/努力排名"
    - "最终待办事项按业务理由排序"

输出格式

优先级报告模板

priority_report:
  domain: "{领域}"
  method: "{使用的方法}"
  date: "{ISO-8601}"

  summary:
    total_requirements: 25
    high_priority: 8
    medium_priority: 10
    low_priority: 7

  detailed_ranking:
    - rank: 1
      requirement_id: "REQ-001"
      title: "双因素认证"
      method_score: 3.54
      rationale: "遗漏的高惩罚,合规要求"

    - rank: 2
      requirement_id: "REQ-015"
      title: "移动离线模式"
      method_score: 3.2
      rationale: "高用户价值,竞争压力"

  visualization: |
    [Mermaid 或 ASCII 图显示优先级分布]

  recommendations:
    - "立即关注前 5 个高优先级项"
    - "考虑延期高成本的低优先级项"
    - "根据新信息在 2 周内重新评估"

相关命令

  • /prioritize - 应用优先排序方法到需求
  • /gaps - 在优先排序前识别缺失需求
  • /export - 导出优先排序的需求

参考

详细指南:

外部:

  • Karl Wiegers 的《软件需求》
  • SAFe 框架 WSJF 指导
  • Noriaki Kano 关于客户满意度的研究

版本历史

  • v1.0.0 (2025-12-26): 初始发布 - 优先排序方法技能

最后更新: 2025-12-26