# SF-02 Requirement Engineering Factory > **Status:** ✅ Active > **Domain:** requirement-engineering > **Dependency:** SF-01 Product Strategy Factory ## Purpose SF-02 Requirement Engineering Factory 将 SF-01 产出的 Product Strategy Package 自动转换为完整的 Requirement Package。 SF-02 是 SF-01(战略)→ SF-03(设计)之间的关键桥梁。它把模糊的战略意图转化为结构化、可验证、可追踪的需求体系。 **SF-02 只负责需求工程,不生成代码、不设计数据库、不设计架构、不设计 UI。** ## Domain Model SF-02 建立了统一的需求领域模型,包含 15 个核心概念: | # | 概念 | 类型 | 说明 | |---|------|------|------| | 1 | RequirementPackage | 容器 | 顶层需求包,包含全部需求产物 | | 2 | Epic | 需求 | 史诗级需求,可分解为 Feature | | 3 | Feature | 需求 | 功能需求,属于某个 Epic | | 4 | UserStory | 需求 | 用户故事,As a/I want/So that 格式 | | 5 | AcceptanceCriteria | 验证 | Given/When/Then 格式验收标准 | | 6 | BusinessRule | 规则 | 业务约束、流程规则、审批规则等 | | 7 | Constraint | 约束 | 技术/业务/合规/资源/时间约束 | | 8 | NonFunctionalRequirement | NFR | 性能/安全/可靠性/可扩展性等 | | 9 | PermissionRequirement | 权限 | RBAC/ABAC/Hybrid 权限模型 | | 10 | IntegrationRequirement | 集成 | 支付/短信/邮件/AI等集成需求 | | 11 | DataRequirement | 数据 | 实体需求(不设计数据库) | | 12 | RiskRequirement | 风险 | 需求相关风险识别与管理 | | 13 | TraceabilityLink | 追踪 | 需求元素间可追溯关系 | | 14 | Priority | 优先级 | MoSCoW/RICE/WSJF 优先级 | | 15 | Dependency | 依赖 | 需求间依赖关系 | | 16 | RequirementVersion | 版本 | 需求变更版本追踪 | ## Workflow ``` SF-01 Product Strategy Package │ ▼ ┌─────────────────────────────────────────────────┐ │ SF-02 Factory Pipeline │ │ │ │ 1. 接收 SF-01 Strategy Package │ │ 2. Strategy → Requirement Conversion │ │ 3. Epic Generation (Part C) │ │ 4. Feature Generation (Part D) │ │ 5. User Story Generation (Part E) │ │ 6. Acceptance Criteria Generation (Part F) │ │ 7. Business Rules Generation (Part G) │ │ 8. Permission Requirements (Part H) │ │ 9. NFR Generation (Part I) │ │ 10. Integration Requirements (Part J) │ │ 11. Data Requirements (Part K) │ │ 12. Dependency Graph (Part L) │ │ 13. Priority Matrix (Part M) │ │ 14. MVP Scope (Part N) │ │ 15. Traceability Matrix (Part O) │ │ 16. Requiremente Package Assembly │ └─────────────────────────────────────────────────┘ │ ▼ SF-03 Product Design Factory ``` ## Artifact Model SF-02 产出 14 种 Artifact: | # | Artifact | Kind | 说明 | |---|----------|------|------| | 1 | requirement-package | requirement | 完整需求包(Markdown 报告) | | 2 | epic-catalog | requirement | Epic 目录(JSON) | | 3 | feature-catalog | requirement | Feature 目录(JSON) | | 4 | user-story-catalog | requirement | User Story 目录(JSON) | | 5 | acceptance-criteria-package | requirement | 验收标准包(JSON) | | 6 | business-rules-catalog | requirement | 业务规则目录(JSON) | | 7 | permission-requirements | requirement | 权限需求(JSON) | | 8 | nfr-package | requirement | 非功能需求包(JSON) | | 9 | integration-requirements | requirement | 集成需求(JSON) | | 10 | data-requirements | requirement | 数据需求(JSON) | | 11 | dependency-graph | requirement | 依赖图(JSON) | | 12 | priority-matrix | requirement | 优先级矩阵(JSON) | | 13 | mvp-scope | requirement | MVP 范围定义(JSON) | | 14 | traceability-matrix | requirement | 追踪矩阵(JSON) | ## Priority Model SF-02 支持三种优先级方法: ### MoSCoW - **Must Have** (30%): MVP 核心功能 - **Should Have** (30%): V1 重要功能 - **Could Have** (25%): V2 增强功能 - **Won't Have** (15%): 远期规划 ### RICE ``` Score = Reach × Impact × Confidence / Effort ``` ### WSJF ``` Score = (Business Value + Time Criticality + Risk Reduction) / Job Duration ``` ## Traceability Model 建立完整的需求追踪链: ``` SF-01 Strategy │ ▼ (strategy→epic) Epic │ ▼ (epic→feature) Feature │ ▼ (feature→story) User Story │ ├── (story→ac) ──► Acceptance Criteria ├── (story→business-rule) ──► Business Rules ├── (story→nfr) ──► NFRs └── (story→data) ──► Data Requirements Epic → Permission Requirements (epic→permission) Epic → Integration Requirements (epic→integration) ``` 每条需求都可以从 Strategy 追溯到最终的 Acceptance Criteria。 ## Conversion Logic ### Epic 生成 从产品分类(AI平台/企业SaaS/电商平台/教育平台/通用)匹配领域模板,自动生成 5~12 个 Epic。 例如:**AI客服平台** → 8 个 Epic: | Epic | Category | Objective | |------|----------|-----------| | 用户管理 | 用户管理 | 建立完整的用户身份体系 | | 知识库管理 | 内容管理 | 构建高质量可检索的知识体系 | | Agent管理 | 智能/AI | 实现 Agent 全生命周期管理 | | 对话管理 | 业务流程 | 提供流畅的 AI 对话体验 | | 权限管理 | 安全合规 | 保证系统安全性 | | 运营分析 | 运营分析 | 数据驱动的产品优化 | | 系统设置 | 系统设置 | 灵活的系统管理能力 | | 集成对接 | 集成对接 | 开放生态集成能力 | ### Feature 生成 每个 Epic 按标题匹配 Feature 模板。例如**知识库管理** → 7 个 Feature: - 知识库创建 (CRUD) - 文档上传 (CRUD) - 文档解析 (workflow) - 知识编辑 (CRUD) - 索引构建 (workflow) - 版本管理 (CRUD) - 知识分类 (configuration) ### User Story 生成 根据 Feature 类型(CRUD/workflow/analytics/configuration/integration/notification/search)自动生成标准格式的 User Story。 例如:**文档上传 (CRUD)** → 6 个 Story: ``` As a 用户, I want 浏览文档管理列表, so that 查找所需的知识库信息. (Must Have) As a 用户, I want 查看文档管理详情, so that 了解知识库的完整信息. (Should Have) As a 用户, I want 创建新的文档, so that 添加新的知识库条目. (Should Have) As a 用户, I want 编辑已有文档, so that 保持知识库信息准确. (Could Have) As a 管理员, I want 删除文档, so that 清理无效的知识库数据. (Could Have) As a 管理员, I want 批量管理文档管理, so that 高效处理大量知识库数据. (Could Have) ``` ### Acceptance Criteria 生成 每个 Story 自动生成 6~10 条 AC,覆盖: 1. 正常流程 2. 数据展示 3. 空数据状态 4. 数据验证 5. 权限控制 6. 并发处理 7. 故事特定场景(创建重复/删除确认/搜索/导出等) ## Files | File | Purpose | |------|---------| | `src/sf-02-requirement-engineering/domain-model.mjs` | 需求领域模型(15 个类型) | | `src/sf-02-requirement-engineering/strategy-to-requirement.mjs` | 策略→需求转换引擎 | | `src/sf-02-requirement-engineering/dependency-engine.mjs` | 依赖/优先级/MVP/追踪引擎 | | `src/sf-02-requirement-engineering/index.mjs` | Factory 入口 + 注册 + 报告 | | `test/sf-02-requirement-engineering.test.mjs` | 89 项测试 | | `docs/factories/sf-02-requirement-engineering.md` | 本文档 | ## Integration Flow ### With SF-01 ``` SF-01.analyze("AI Agent平台") → FactoryInput { factoryId: "SF-01" } → FactoryOutput { artifacts: [StrategyPackage, ...] } → FactoryInput { factoryId: "SF-02", upstreamArtifacts: [...] } → FactoryOutput { artifacts: [RequirementPackage, ...] } ``` ### With PR-36 Factory Registry ```javascript const registry = createFactoryRegistry(); registerSF01(registry); registerSF02(registry); const sf01Out = registry.execute("SF-01", input); const sf02Out = registry.execute("SF-02", { upstreamArtifacts: sf01Out.artifacts }); // sf02Out.status === "passed" // sf02Out.artifacts.length === 14 ``` ### With PR-35 Runtime ```javascript const task = createTask({ id: "T-001", title: "Req Engineering" }); // Execute within runtime context... ``` ## Examples ### AI 客服平台完整转换 输入:SF-01 分析的 "AI客服平台" 输出: - **8 Epics**: 用户管理/知识库管理/Agent管理/对话管理/权限管理/运营分析/系统设置/集成对接 - **40+ Features**: 每个 Epic 3~7 个 Feature - **120+ User Stories**: 标准 As a/I want/So that 格式 - **240+ Acceptance Criteria**: Given/When/Then 格式 - **7 Business Rules**: 验证/约束/流程/审批/状态机 - **10 NFRs**: 性能/安全/可靠性/扩展性/可观测性/国际化/兼容性 - **6 Integration Reqs**: AI模型/邮件/短信/对象存储/搜索引擎/第三方登录 - **5 Data Reqs**: 用户/角色权限/知识库/对话记录/操作日志 - **100+ Dependencies**: Epic/Feature/Story 三级依赖 - **400+ Traceability Links**: 全链追踪 ## Next Step: SF-03 SF-03 Product Design Factory 将以 SF-02 的 Requirement Package 为输入,产出: - 信息架构 - 交互流程 - 页面结构 - 原型设计 SF-02 产出的所有 Artifact 都是 SF-03 的 `upstreamArtifacts` 输入。 --- _Generated by SF-02 Requirement Engineering Factory | 2026-06-05_