--- name: req-compare description: 对比式需求分析插件。系统平移、竞品借鉴、版本升级时使用参考对象对比法编写 PRD。挂载在 analysis 阶段,需要对比分析时由 req-prd 推荐激活。 --- # 对比式需求分析插件 (req-compare) ## 概述 当进行**系统平移、功能迁移、竞品借鉴**时,使用对比分析法编写 PRD,确保新系统功能完整且有所改进。 **触发条件**: - 用户提到"从 XX 系统迁移"、"参考 XX 功能"、"平移"、"借鉴" - req-prd 检测到需求涉及参考系统 ## 适用场景 | 场景 | 说明 | 示例 | |------|------|------| | 系统平移 | 旧系统迁移到新技术栈 | 酷采2.0 → 酷采3.0 | | 功能借鉴 | 参考竞品功能设计 | 参考飞书设计协作功能 | | 版本升级 | 基于当前版本优化 | V1.0 → V2.0 重构 | --- ## 对比分析工作流 ``` 1. 确定参考对象 ├── 识别参考系统(可以是多个) ├── 获取访问权限(测试环境、源代码) └── 明确对比目标 2. 参考对象分析 ├── 功能调研(前端页面操作) ├── 业务数据分析(核心实体、字段含义) ├── 业务逻辑分析(规则、流转、校验) └── 用户体验分析 3. 对比分析 ├── 功能对比表(保留/优化/新增/废弃) ├── 业务数据对比(实体映射、新增数据项) ├── 用户体验对比 └── 非功能需求对比(性能、安全) 4. PRD 编写 ├── 背景说明(明确参考来源) ├── 功能需求(标注来源与变更) ├── 业务数据需求(实体、字段、规则) └── 非功能需求(性能、安全、兼容性) ``` --- ## 对比式 PRD 模板 ```markdown # [功能模块名称] PRD ## 1. 文档概述 ### 1.1 文档信息 | 项目 | 内容 | |------|------| | 文档名称 | [模块名称] 需求文档 | | 版本 | V1.0 | | 创建日期 | [日期] | | **需求来源** | **[参考系统名称] 平移/借鉴** | | **参考系统** | **[参考系统访问地址]** | ### 1.2 背景说明 本需求文档基于 **[参考系统]** 的 [模块名称] 功能分析,将其平移至 [目标系统]。 **参考系统信息**: - 系统地址:[URL] - 技术栈:[技术栈描述] - 源码位置:[源码路径](如有) --- ## 2. 参考系统分析 ### 2.1 功能截图 [插入参考系统功能截图] ### 2.2 业务数据(参考系统) | 数据实体 | 核心字段 | 业务含义 | |----------|----------|----------| | [实体名] | [字段列表] | [业务说明] | ### 2.3 核心功能(参考系统) | 功能 | 用户操作 | 业务规则 | |------|----------|----------| | [功能名] | [操作描述] | [规则说明] | ### 2.4 业务逻辑(参考系统) - 核心业务规则摘要 - 数据校验规则 - 状态流转逻辑 --- ## 3. 功能对比分析 ### 3.1 功能对比表 | 序号 | 功能 | 参考系统 | 目标系统 | 变更类型 | 说明 | |------|------|----------|----------|----------|------| | 1 | [功能1] | ✅ | ✅ | 保留 | 直接平移 | | 2 | [功能2] | ✅ | ✅+ | 优化 | [优化内容] | | 3 | [功能3] | ❌ | ✅ | 新增 | [新增原因] | | 4 | [功能4] | ✅ | ❌ | 废弃 | [废弃原因] | ### 3.2 业务数据对比 | 数据项 | 参考系统 | 目标系统 | 变更 | 说明 | |--------|----------|----------|------|------| | [数据项] | [描述] | [描述] | 保留/优化/新增/废弃 | [说明] | ### 3.3 非功能需求对比 | 维度 | 参考系统 | 目标系统要求 | |------|----------|-------------| | 性能 | [现状] | [目标] | | 安全 | [现状] | [目标] | | 用户体验 | [现状] | [目标] | --- ## 4. 目标系统设计 ### 4.1 功能清单 | 序号 | 功能 | 优先级 | 来源 | 说明 | |------|------|--------|------|------| | 1 | [功能] | P0 | 平移 | 从参考系统平移 | ### 4.2 业务数据需求(目标系统) | 数据实体 | 核心字段 | 业务规则 | 来源 | |----------|----------|----------|------| | [实体名] | [字段列表] | [校验/约束] | 平移/新增 | ### 4.3 业务规则 - [ ] 规则1(沿用参考系统) - [ ] 规则2(优化调整) --- ## 5. 上线优先级 1. [P0 功能] — 核心路径 2. [P1 功能] — 重要但可后续迭代 3. [P2 功能] — 优化项 ## 6. 注意事项 - 参考系统中 [xxx] 逻辑需要特别注意 - 新系统中需改进 [xxx] 问题 ``` --- ## 参考对象分析方法 ### 1. 前端功能调研 - 访问参考系统,截图记录页面布局和交互流程 - 记录用户操作路径(CRUD、搜索、筛选等) - 标注交互细节(表单校验、提示信息、异常处理) ### 2. 业务逻辑调研 - 梳理核心业务规则和状态流转 - 记录数据校验规则 - 标注业务异常处理方式 > **技术层分析**(代码结构、数据库表结构、API 接口)请在 design 阶段使用 `req-design` 技能完成。 --- ## 竞品分析模板 ```markdown # [竞品名称] 分析 ## 1. 产品概述 - 定位: - 核心功能: - 目标用户: ## 2. 功能对比 | 功能 | 我们 | 竞品A | 竞品B | |------|------|-------|-------| | 功能1 | ✅/❌/部分 | ... | ... | ## 3. 优劣势分析 ### 优势 1. ... ### 劣势 1. ... ## 4. 可借鉴点 - ... ## 5. 差异化策略 - ... ``` --- ## 最佳实践 1. **先调研再写 PRD** — 充分理解参考系统后再动笔 2. **功能对比表必填** — 明确每个功能的保留/优化/新增/废弃决策 3. **标注来源** — 每个功能需求标注是"平移"还是"新增" 4. **记录废弃原因** — 参考系统有但不做的功能,必须记录原因 5. **不抄技术实现** — 对比的是业务功能,不是代码结构