需求调查生成与分析Skill survey

该技能用于在软件开发过程中自动化生成需求调查问卷(如发现、卡诺、满意度、优先级类型),收集利益相关者的结构化反馈,并进行统计分析以识别需求候选和生成报告,支持数据驱动的需求收集和优化。关键词:需求收集、调查分析、统计分析、用户反馈、需求工程、问卷调查、数据驱动、优先级排序。

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

name: survey description: “生成利益相关者调查以收集需求并分析响应。基于领域上下文创建问卷,收集结构化反馈,并生成带有需求候选的统计分析。” argument-hint: “[–domain <名称>] [–mode generate|analyze|both] [–type <调查类型>]” allowed-tools: Task, Read, Write, Glob, Grep, Skill

调查命令

生成需求调查并分析利益相关者响应,以进行数据驱动的需求收集。

用法

/requirements-elicitation:survey
/requirements-elicitation:survey --domain "checkout"
/requirements-elicitation:survey --domain "auth" --mode generate --type kano
/requirements-elicitation:survey --domain "search" --mode analyze
/requirements-elicitation:survey --domain "onboarding" --mode both --respondents 50

参数

参数 必需 描述
–domain 调查的领域(默认:当前/最近)
–mode 模式:generateanalyzeboth(默认:both
–type 调查类型:kanosatisfactionprioritydiscovery(默认:discovery
–respondents 分析的预期受访者数量(默认:20)

调查类型

发现调查

通用需求发现问卷。

discovery_survey:
  purpose: "识别需求、痛点及期望结果"

  sections:
    demographics:
      - "您的角色是什么?"
      - "您使用[系统]的频率如何?"
      - "您成为用户多久了?"

    current_experience:
      - "评估您的总体满意度(1-10)"
      - "您最常执行哪些任务?"
      - "当前流程中最让您沮丧的是什么?"

    needs_and_goals:
      - "您试图实现什么目标?"
      - "什么阻止您实现目标?"
      - "什么会让您的工作更轻松?"

    feature_preferences:
      - "您最常用哪些功能?"
      - "您从不使用哪些功能?"
      - "缺少哪些功能?"

    open_ended:
      - "如果您能改变一件事,会是什么?"
      - "描述您理想的体验"
      - "其他反馈?"

卡诺调查

使用卡诺方法分类功能。

kano_survey:
  purpose: "将功能分类为基础、性能或兴奋型"

  question_pairs:
    functional:
      prompt: "如果[功能]存在,您会如何感受?"
      options:
        - "我会喜欢它"
        - "我期望它"
        - "我中立"
        - "我能容忍它"
        - "我不喜欢它"

    dysfunctional:
      prompt: "如果[功能]不存在,您会如何感受?"
      options:
        - "我会喜欢它"
        - "我期望它"
        - "我中立"
        - "我能容忍它"
        - "我不喜欢它"

  classification_matrix:
    "Like + Dislike": "兴奋型(愉悦者)"
    "Like + Neutral": "兴奋型"
    "Expect + Dislike": "基础型(必须项)"
    "Expect + Neutral": "性能型"
    "Neutral + Neutral": "无关型"
    "Dislike + Like": "反向型"

满意度调查

衡量当前/提议功能的满意度。

satisfaction_survey:
  purpose: "评估满意度水平并识别改进领域"

  scales:
    likert_5:
      - "强烈不同意"
      - "不同意"
      - "中立"
      - "同意"
      - "强烈同意"

    satisfaction_10:
      range: "1-10"
      anchors:
        1: "极不满意"
        5: "中立"
        10: "极为满意"

    nps:
      question: "您有多大可能向同事推荐[产品]?"
      range: "0-10"
      categories:
        promoters: "9-10"
        passives: "7-8"
        detractors: "0-6"

  question_categories:
    - "总体满意度"
    - "功能特定满意度"
    - "易用性"
    - "性能"
    - "可靠性"
    - "支持质量"

优先级调查

对功能或需求进行排序和优先化。

priority_survey:
  purpose: "收集利益相关者对需求优先级的输入"

  methods:
    forced_ranking:
      instruction: "将这些功能按重要性从高到低排序"
      output: "按偏好排序的列表"

    pairwise_comparison:
      instruction: "对于每对选项,选择更重要的一个"
      output: "胜负矩阵和复合排名"

    allocation:
      instruction: "您有100分,按重要性分配给功能"
      output: "显示相对优先级的分数分布"

    moscow_voting:
      instruction: "将每个功能分类为必须/应该/可以/不会有"
      options:
        - "必须有"
        - "应该有"
        - "可以有"
        - "不会有(本次)"

工作流

生成模式

generate_workflow:
  1. 从.requirements/{domain}/加载领域上下文
  2. 基于需求收集阶段识别调查目标
  3. 选择适当的调查类型
  4. 生成针对领域定制的问卷
  5. 添加人口统计和上下文问题
  6. 以多种格式输出调查模板

分析模式

analyze_workflow:
  1. 从.requirements/{domain}/surveys/加载响应数据
  2. 验证响应完整性
  3. 执行统计分析
  4. 识别模式和主题
  5. 从发现中生成需求候选
  6. 输出带可视化的分析报告

两者模式(默认)

both_workflow:
  1. 生成调查(如不存在)
  2. 模拟/收集响应(交互式或文件输入)
  3. 分析响应
  4. 生成综合报告

输出格式

调查模板

survey_template:
  metadata:
    domain: "{domain}"
    type: "discovery"
    version: "1.0"
    created: "{ISO-8601}"

  introduction:
    title: "需求调查:{domain}"
    description: "帮助我们了解您对{domain}改进的需求"
    estimated_time: "10-15分钟"
    confidentiality: "响应匿名且保密"

  sections:
    - id: "S1"
      title: "关于您"
      questions:
        - id: "Q1"
          type: "single_choice"
          text: "您的主要角色是什么?"
          options:
            - "最终用户"
            - "经理"
            - "管理员"
            - "开发者"
            - "其他"
          required: true

        - id: "Q2"
          type: "scale"
          text: "您使用{system}的频率如何?"
          scale:
            min: 1
            max: 5
            labels:
              1: "很少"
              3: "每周"
              5: "每天"

    - id: "S2"
      title: "当前体验"
      questions:
        - id: "Q3"
          type: "open_text"
          text: "您当前流程中最大的挑战是什么?"
          max_length: 500

        - id: "Q4"
          type: "multi_choice"
          text: "您最常用哪些功能?(最多选3项)"
          options: [...来自领域上下文的功能...]
          max_selections: 3

  closing:
    thank_you: "感谢您的宝贵反馈!"
    next_steps: "我们将在2周内分析响应并分享发现。"

分析报告

analysis_report:
  metadata:
    domain: "{domain}"
    survey_type: "discovery"
    analysis_date: "{ISO-8601}"
    responses_analyzed: 47
    response_rate: "78%"

  demographics:
    role_distribution:
      end_user: 60%
      manager: 25%
      administrator: 10%
      other: 5%
    usage_frequency:
      daily: 45%
      weekly: 35%
      monthly: 15%
      rarely: 5%

  quantitative_results:
    satisfaction_scores:
      overall: 6.2
      ease_of_use: 5.8
      performance: 7.1
      reliability: 6.5

    nps_score: 32
    nps_breakdown:
      promoters: 45%
      passives: 30%
      detractors: 25%

    feature_priorities:
      - feature: "实时跟踪"
        priority_score: 8.7
        mentions: 38
      - feature: "移动访问"
        priority_score: 8.2
        mentions: 34

  qualitative_analysis:
    themes:
      - theme: "速度和性能"
        frequency: 28
        sentiment: "负面"
        sample_quotes:
          - "系统在高峰期太慢"
          - "加载时间令人沮丧"

      - theme: "移动体验"
        frequency: 22
        sentiment: "混合"
        sample_quotes:
          - "希望在手机上使用"
          - "移动版本有限"

    pain_points:
      - description: "高峰期性能缓慢"
        severity: "高"
        frequency: 28
        requirement_candidate: "REQ-SURV-001"

      - description: "缺少移动功能"
        severity: "中"
        frequency: 22
        requirement_candidate: "REQ-SURV-002"

  requirement_candidates:
    - id: "REQ-SURV-001"
      statement: "系统应在高峰期保持响应时间低于2秒"
      source: "调查分析 - 性能主题"
      confidence: "高"
      supporting_data:
        mentions: 28
        avg_severity: 8.2/10

    - id: "REQ-SURV-002"
      statement: "系统应为核心功能提供移动优化界面"
      source: "调查分析 - 移动主题"
      confidence: "高"
      supporting_data:
        mentions: 22
        avg_priority: 8.2/10

  visualizations:
    satisfaction_radar: |
      [Mermaid雷达图显示满意度维度]

    priority_bar: |
      [Mermaid条形图显示功能优先级]

    theme_wordcloud: |
      [常见主题描述]

  recommendations:
    immediate:
      - "处理性能问题(最高严重性)"
      - "就移动需求进行后续访谈"

    short_term:
      - "与利益相关者验证需求候选"
      - "优先处理REQ-SURV-001和REQ-SURV-002"

    process:
      - "考虑实施后的后续调查"
      - "建立满意度基准以进行跟踪"

统计分析功能

定量分析

quantitative_analysis:
  descriptive:
    - "量表问题的均值、中位数、众数"
    - "方差的标准差"
    - "选择问题的频率分布"

  comparative:
    - "按人口统计的交叉表"
    - "细分比较(高级用户 vs 普通用户)"
    - "前后比较(如适用)"

  scoring:
    - "NPS计算和细分"
    - "卡诺分类矩阵"
    - "优先级排名聚合"
    - "满意度指数计算"

定性分析

qualitative_analysis:
  theme_extraction:
    - "识别开放响应中的重复主题"
    - "按情感分类(正面/负面/中性)"
    - "提取代表性引用"

  pattern_detection:
    - "将主题与人口统计关联"
    - "识别具有独特需求的用户细分"
    - "检测矛盾点和异常值"

  requirement_generation:
    - "将痛点转化为需求陈述"
    - "聚合功能请求为候选"
    - "基于频率分配置信水平"

示例会话

/requirements-elicitation:survey --domain "helpdesk" --mode both --type discovery

═══════════════════════════════════════════════
需求调查:helpdesk
模式:生成 + 分析
类型:发现调查
═══════════════════════════════════════════════

阶段1:调查生成
─────────────────────────────────────────────

分析领域上下文...
找到:15个现有需求,3个利益相关者角色

生成调查问题...
✓ 人口统计部分(4个问题)
✓ 当前体验部分(6个问题)
✓ 需求和目标部分(5个问题)
✓ 功能偏好部分(4个问题)
✓ 开放部分(3个问题)

调查已生成:22个问题
预计完成时间:12分钟

保存到:.requirements/helpdesk/surveys/SURV-20251226-180000.yaml

─────────────────────────────────────────────
阶段2:响应收集
─────────────────────────────────────────────

[基于角色模拟利益相关者响应...]
- 最终用户(15个响应)
- 支持代理(8个响应)
- 经理(5个响应)
- 管理员(2个响应)

总响应收集:30个

─────────────────────────────────────────────
阶段3:分析
─────────────────────────────────────────────

定量结果:
┌─────────────────────────────────────────┐
│ 满意度分数                             │
├─────────────────────────────────────────┤
│ 总体满意度:         6.4/10            │
│ 易用性:              5.2/10            │
│ 响应时间:            7.1/10            │
│ 自助服务选项:        4.8/10            │
└─────────────────────────────────────────┘

NPS分数:28(被动范围)
- 促进者:40%
- 被动者:33%
- 批评者:27%

顶级功能优先级:
1. 知识库搜索(8.9/10)
2. 票据状态跟踪(8.5/10)
3. 移动应用访问(8.1/10)
4. 聊天支持(7.8/10)
5. 邮件集成(7.2/10)

定性主题:
📊 自助服务(23次提及) - "希望自己解决问题"
📊 响应时间(18次提及) - "需要更快的解决"
📊 移动访问(15次提及) - "需要在手机上检查票据"
📊 知识库(12次提及) - "难以找到答案"

识别的痛点:
❌ 自助服务选项差(高严重性)
❌ 知识库难以搜索(高严重性)
❌ 无移动访问(中严重性)
❌ 邮件通知不可靠(中严重性)

─────────────────────────────────────────────
需求候选
─────────────────────────────────────────────

生成8个需求候选:

REQ-SURV-001:"用户应能使用自然语言查询搜索知识库"
              [置信度:高 | 提及:35]

REQ-SURV-002:"系统应提供移动应用以进行票据管理和状态跟踪"
              [置信度:高 | 提及:23]

REQ-SURV-003:"系统应发送可靠的邮件通知以进行票据状态更改"
              [置信度:中 | 提及:15]

...(还有5个候选)

═══════════════════════════════════════════════
调查分析完成
═══════════════════════════════════════════════

摘要:
- 响应率:75%(30/40邀请)
- NPS分数:28
- 最高优先级:自助服务改进
- 需求候选:8个

保存到:.requirements/helpdesk/surveys/ANALYSIS-20251226-180000.yaml

下一步:
1. 与利益相关者审查需求候选
2. 运行/prioritize以排名候选
3. 运行/simulate以从用户角度验证

输出位置

output_locations:
  survey_template: ".requirements/{domain}/surveys/SURV-{timestamp}.yaml"
  analysis_report: ".requirements/{domain}/surveys/ANALYSIS-{timestamp}.yaml"
  raw_responses: ".requirements/{domain}/surveys/responses-{timestamp}.yaml"
  requirement_candidates: ".requirements/{domain}/surveys/candidates-{timestamp}.yaml"

与其他命令的集成

调查前

# 收集上下文以改进问题
/requirements-elicitation:research --domain "helpdesk"

# 审查现有需求
/requirements-elicitation:gaps --domain "helpdesk"

调查后

# 通过利益相关者模拟验证候选
/requirements-elicitation:simulate --domain "helpdesk" --from-survey

# 优先化调查生成的候选
/requirements-elicitation:prioritize --domain "helpdesk" --method wsjf

# 将已验证候选添加到需求中
/requirements-elicitation:discover --domain "helpdesk" --from-candidates

响应数据格式

用于分析外部调查响应:

response_format:
  responses:
    - respondent_id: "R001"
      timestamp: "2025-12-26T10:30:00Z"
      demographics:
        role: "end_user"
        usage_frequency: 4
      answers:
        Q1: "最终用户"
        Q2: 4
        Q3: "搜索功能从未找到我需要的东西"
        Q4: ["票据创建", "状态检查", "知识库"]
        Q5: 6

错误处理

error_handling:
  insufficient_responses:
    message: "响应不足以进行可靠分析(最小:10)"
    action: "收集更多响应或使用模拟"

  no_domain_context:
    message: "无领域上下文可用"
    action: "运行/discover或提供--domain"

  invalid_response_format:
    message: "响应文件格式无法识别"
    action: "检查响应文件是否匹配预期模式"

  low_response_rate:
    message: "响应率低于20%"
    action: "考虑后续或激励"