agentleFS
wonderslifewonderslife/pdd-skills-v3/skills/core/pdd-extract-features/SKILL.md

pdd-extract-features

Skill15 starsChanged 27 days agoMITView on GitHub

从PRD文档体系中提取功能点矩阵。当用户想要提取功能点、识别功能需求或分析业务功能时调用此Skill。支持中文触发:提取功能点、功能点提取、PRD分析、需求拆解。

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

Files
SKILL.md

PDD-Extract Features - 功能点提取技能

从业务分析结果和 PRD 文档中提取功能点,生成标准化的功能点矩阵 (feature-matrix.md)。

输入: 业务分析报告/PRD | 输出: feature-matrix.md | 不负责: 规格编写/代码实现

功能点分类

按复杂度

复杂度代码说明开发时间
核心业务P0核心流程,涉及多方审批3-5天
重要功能P1重要功能,有替代方案1-2天
辅助功能P2易于实现0.5天

按操作类型

C(Create新增) | R(Read查询) | U(Update修改) | D(Delete删除) | B(Batch批量) | A(Approve审批) | E(Export导出) | F(Flow状态流转)

按AI角色

AI-L(AI主导) | AI-C(AI协作) | AI-R(AI辅助审核)

功能点提取流程

  1. 分析业务用例:从业务分析报告提取 参与者 | 用例名称 | 基本流程 | 扩展流程
  2. 识别功能操作:对每个用例识别 用例/操作/操作类型/复杂度/AI角色
  3. 识别页面/接口:功能点/页面路径/API路径/方法
  4. 生成功能点矩阵:模板见 references/feature-matrix-template.md
  5. P0功能点详情:基本信息/功能描述/前置后置条件/输入字段/输出信息/业务规则/测试策略

功能点矩阵模板

完整模板(汇总表、详细列表、前端组件与数据源说明)见 references/feature-matrix-template.md。

Guardrails

必须遵守:功能点ID全局唯一 | 每个功能点有明确操作类型 | 标注依赖关系 | P0功能点必须有详细描述 避免:❌遗漏关键业务操作 ❌循环依赖 ❌复杂度评估与实际不符

与其他技能协作

协作技能方式传入期望输出
pdd-ba顺序业务分析报告用例和流程
pdd-generate-spec顺序功能点矩阵spec.md

人工审核

  • 节点:功能点矩阵生成后人工审核
  • 内容:完整性 | 复杂度(P0/P1/P2) | 测试策略 | 依赖关系
  • 粒度:批量审核 + 关键功能点(P0/复杂状态转换/外部集成/敏感数据)详细审核
  • 输出:review-features.md | 结果:passed / rejected / conditional

Iron Law 铁律

  1. 来源可追溯:每个功能点必须可追溯到业务分析用例或PRD章节,不得凭空创造。
  2. 粒度适中:单功能点 = 单个可验收工作单元;过粗(一个FP含多个功能)或过细(拆分操作步骤)均违规。
  3. 依赖显式化:依赖必须明确声明,禁止循环依赖。
  4. 复杂度有据:P0/P1/P2 需明确标准(涉及审批/外部集成/核心规则),不得凭感觉定级。
  5. MECE完整验证:提取后用 MECE 检验所有用例操作是否覆盖,有无遗漏辅助功能(导入导出/批量)。

违规:❌无法追溯的功能点 ❌"用户管理"作一个FP(过粗) ❌拆分表单步骤(过细) ❌循环依赖 ❌全P0或全P2 合规:✅标注"源自UC-xxx" ✅FP-001=完整"发起申请" ✅标注FP-005依赖FP-001 ✅P0理由"多级审批+状态机" ✅MECE后覆盖全部CRUD

Rationalization 理性化对照

#陷阱应该怎么做
1功能太小不值得列FP独立可验收的操作都应列为FP
2PRD没写但我觉得要有标"建议功能"单独列出,请用户确认
3依赖太复杂先不管至少标注直接依赖,传递依赖实施期细化
4全标P0比较保险严格按标准分级,P0通常≤总数的30%
5测试策略后面再想每个P0定义正向+异常两个测试场景

常见陷阱:粒度失控(建立参考标准) | 隐含依赖(强制前置条件审查) | P0通胀(量化评估标准) | 测试盲区(每FP含基本测试场景)

Red Flags 红旗警告

Layer 1 输入防护

  • INPUT-FE-001: 报告为空/缺用例章节 → 🔴 终止,先完成业务分析
  • INPUT-FE-002: PRD与报告矛盾 → 🟡 记录,以PRD为准并标注
  • INPUT-FE-003: 缺CRUD矩阵/状态图 → 🔴 提示补充完整

Layer 2 执行防护

  • EXEC-FE-001: 无法追溯到用例/PRD的功能点 → 🔴 删除或补来源引用
  • EXEC-FE-002: ID重复/命名不规范 → 🟡 重新编号保持全局唯一
  • EXEC-FE-003: 循环依赖(A→B→A) → 🔴 拆解/合并功能点消除循环
  • EXEC-FE-004: P0缺详细描述 → 🔴 补充完整

Layer 3 输出防护

  • OUTPUT-FE-001: 缺汇总统计(按复杂度/操作类型) → 🔴 补统计表
  • OUTPUT-FE-002: 总数为0或过少 → 🔴 复查分析报告
  • OUTPUT-FE-003: 格式不符模板 → 🟡 调整格式

处理流程:🔴 CRITICAL→立即停止报告等待指示 | 🟡 WARN→记录自动修复并标注 | 🔵 INFO→记录正常继续

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.