216 lines
8.5 KiB
Markdown
216 lines
8.5 KiB
Markdown
<execution domain="product-management">
|
||
|
||
# Feature设计核心理念
|
||
|
||
## 🤔 Feature = 功能域问题发现
|
||
|
||
```markdown
|
||
Feature的本质:发现用户在特定功能域遇到的问题
|
||
核心思考:用户在这个功能域被什么困难阻碍了?
|
||
|
||
问题导向框架:
|
||
📋 提问题层: Epic → Feature → Story (需求定义)
|
||
🛠️ 解决问题层: Task (技术实现)
|
||
✅ 验证层: TestCase (质量保证)
|
||
🎯 价值确认层: Milestone (交付确认)
|
||
```
|
||
|
||
**Feature的职责边界**:
|
||
- ✅ 发现用户在功能域的具体痛点和障碍
|
||
- ✅ 识别功能缺失导致的用户任务中断
|
||
- ✅ 定义用户在特定场景下的困难体验
|
||
- ❌ 不设计具体功能模块实现方案
|
||
- ❌ 不定义技术架构和接口细节
|
||
- ❌ 不描述"用户需要什么能力"
|
||
|
||
## ⚠️ 常见陷阱与避免方法
|
||
|
||
```markdown
|
||
陷阱1: 写成功能设计书
|
||
错误表述: "用户角色管理功能模块,包含角色选择、配置生成、状态展示"
|
||
正确表述: "用户无法快速识别和切换可用的AI角色,配置过程繁琐易错"
|
||
|
||
陷阱2: 定义解决方案而非问题
|
||
错误表述: "提供命令行工具让用户一键生成角色配置文件"
|
||
正确表述: "当前角色配置需要手动操作多个步骤,新用户配置失败率高"
|
||
|
||
陷阱3: 关注能力需求而非缺失痛点
|
||
错误表述: "用户需要可视化的记忆状态监控能力"
|
||
正确表述: "用户对记忆系统运行状态缺乏感知,无法确认功能是否正常"
|
||
|
||
陷阱4: 混合问题与功能清单
|
||
错误表述: "角色初始化复杂,需要包含别名解析、文件生成、状态反馈功能"
|
||
正确表述: "角色初始化过程用户不知道进度,经常不确定是否成功完成"
|
||
```
|
||
|
||
**问题导向自检清单**:
|
||
- [ ] Feature描述中是否包含"功能"、"模块"、"提供"等解决方案词汇?
|
||
- [ ] 是否先描述用户遇到的困难,再描述期望改善?
|
||
- [ ] 能否用"什么问题阻碍了用户"而非"用户需要什么"来概括Feature?
|
||
- [ ] 开发团队看到Feature能理解要解决的痛点,而非要开发的功能?
|
||
|
||
<process>
|
||
# Feature设计流程
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
A[Epic问题域分解] --> B[识别功能场景痛点]
|
||
B --> C[定义问题边界]
|
||
C --> D[分析用户困难]
|
||
D --> E[制定问题解决标准]
|
||
E --> F[Story问题拆解规划]
|
||
F --> G{问题完整性验证}
|
||
G -->|完整| H[Feature就绪]
|
||
G -->|不完整| I[补充问题分析]
|
||
I --> B
|
||
|
||
B1[用户旅程断点分析] --> B
|
||
B2[任务执行障碍识别] --> B
|
||
B3[体验缺失评估] --> B
|
||
```
|
||
|
||
## Feature问题识别方法
|
||
|
||
```mermaid
|
||
mindmap
|
||
root((问题识别))
|
||
用户体验断点
|
||
任务中断节点
|
||
操作困难环节
|
||
反馈缺失场景
|
||
功能缺失分析
|
||
必要能力缺失
|
||
信息获取障碍
|
||
操作效率低下
|
||
技术约束导致的用户问题
|
||
性能瓶颈影响
|
||
兼容性问题
|
||
稳定性缺陷
|
||
```
|
||
|
||
## 📊 问题影响量化模板
|
||
|
||
```markdown
|
||
### 用户痛点量化
|
||
- 具体困难: [用户遇到的具体问题,如"配置角色需要10个步骤"]
|
||
- 影响范围: [受影响用户比例,如"80%的新用户"]
|
||
- 困难成本: [时间/错误损失,如"平均失败3次才成功"]
|
||
- 当前缺失: [什么能力的缺失导致了这个问题]
|
||
|
||
### 功能缺失分析
|
||
- 缺失能力: [具体缺少什么功能支持]
|
||
- 导致后果: [缺失导致的用户困难]
|
||
- 替代方案: [用户当前如何绕过这个问题]
|
||
- 绕过成本: [替代方案的额外成本]
|
||
|
||
### 改善期望
|
||
- 期望体验: [解决问题后用户应该有什么体验]
|
||
- 成功指标: [如何衡量问题得到解决]
|
||
- 优先级: [相对其他问题的重要程度]
|
||
```
|
||
</process>
|
||
|
||
<guideline>
|
||
### Feature问题定义建议
|
||
|
||
- **问题完整性**: Feature应代表完整的问题域,用户困难有明确边界
|
||
- **技术边界对应**: 问题域对应技术模块边界,便于解决方案设计
|
||
- **用户可感知**: 问题是用户直接体验到的困难和障碍
|
||
- **中等粒度**: 1-3个迭代解决,包含3-8个具体问题点(Story)
|
||
|
||
### 问题复杂度分级
|
||
|
||
| 问题类型 | 复杂度 | 解决时间 | Story数量 | 影响范围 |
|
||
|---------|-------|---------|-----------|---------|
|
||
| 简单问题域 | 低 | 1迭代 | 2-4个Story | 单一场景 |
|
||
| 标准问题域 | 中 | 1-2迭代 | 4-6个Story | 多个相关场景 |
|
||
| 复杂问题域 | 高 | 2-3迭代 | 6-8个Story | 跨场景影响 |
|
||
|
||
### 问题边界定义
|
||
|
||
- **包含痛点**: 列出具体的用户困难和障碍点
|
||
- **不包含问题**: 防止范围扩散,明确排除的问题
|
||
- **问题依赖**: 此问题与其他问题的关联和依赖
|
||
- **影响接口**: 解决此问题对其他功能域的影响
|
||
|
||
### Story问题拆解策略
|
||
|
||
```mermaid
|
||
flowchart LR
|
||
A[Feature问题域] --> B[核心困难Story]
|
||
A --> C[操作障碍Story]
|
||
A --> D[信息缺失Story]
|
||
A --> E[反馈不足Story]
|
||
|
||
B --> B1[主要痛点]
|
||
C --> C1[操作困难]
|
||
D --> D1[信息获取问题]
|
||
E --> E1[状态不明确]
|
||
```
|
||
</guideline>
|
||
|
||
<rule>
|
||
1. **四个核心原则必须遵循**
|
||
- 问题完整性: Feature代表完整问题域
|
||
- 用户视角: 从用户困难角度定义问题
|
||
- 可观察性: 问题是用户直接感受到的
|
||
- 边界清晰: 问题域边界明确不重叠
|
||
|
||
2. **强制包含要素**
|
||
- 用户痛点必须具体可观察
|
||
- 问题边界必须明确定义(包含/不包含痛点)
|
||
- 解决标准必须具体可验证
|
||
- Story问题拆解必须覆盖核心困难
|
||
- 问题依赖必须识别和记录
|
||
|
||
3. **三层问题关系规则**
|
||
- Epic → Feature: 价值问题到功能域问题的分解
|
||
- Feature → Story: 功能域问题到具体用户困难的拆解
|
||
- 层级间问题粒度跨度合理,避免过度拆分或粗糙
|
||
|
||
4. **拆分触发条件**
|
||
- 问题域跨越3个以上技术模块需要拆分
|
||
- 包含不相关困难点需要重新组织
|
||
- 解决时间超过3个迭代需要拆分
|
||
</rule>
|
||
|
||
<constraint>
|
||
1. **技术架构约束**
|
||
- 问题域边界受现有架构模块限制
|
||
- 微服务边界影响问题解决方案
|
||
- 数据模型设计影响问题解决范围
|
||
|
||
2. **团队能力约束**
|
||
- 并行解决问题数量有限
|
||
- 团队技能影响问题解决复杂度
|
||
- 跨团队问题需要额外协调成本
|
||
|
||
3. **用户体验约束**
|
||
- 用户旅程完整性不可打断
|
||
- 渐进式改善对问题解决颗粒度的要求
|
||
- 问题优先级受用户影响程度限制
|
||
|
||
4. **项目约束**
|
||
- 迭代时间盒限制问题解决范围
|
||
- 测试资源影响问题验证
|
||
- 发布节奏影响问题解决优先级
|
||
</constraint>
|
||
|
||
<criteria>
|
||
| 评价维度 | 优秀标准 | 合格标准 | 不合格标准 |
|
||
|---------|---------|---------|-----------|
|
||
| 问题清晰度 | 用户痛点具体可观察,困难描述准确 | 问题基本清晰可理解 | 问题模糊或偏向解决方案 |
|
||
| 边界合理性 | 问题域边界清晰,困难点内聚相关 | 边界基本清晰 | 边界模糊或问题分散 |
|
||
| 用户视角 | 完全从用户困难角度描述问题 | 基本体现用户视角 | 偏向系统或技术视角 |
|
||
| 影响量化 | 问题影响范围和程度量化清晰 | 影响基本明确 | 影响不明确或无量化 |
|
||
| 可解决性 | 问题有明确解决标准和验证方式 | 基本可解决验证 | 问题过于抽象或无法验证 |
|
||
| Story拆解质量 | 问题拆解全面,困难点粒度一致 | 拆解基本合理 | 拆解不完整或粒度不一致 |
|
||
| 问题导向性 | 避免解决方案描述,纯问题导向 | 基本问题导向 | 混合解决方案或功能描述 |
|
||
|
||
**快速检查要点**:
|
||
📝 **问题导向**: 描述用户困难而非功能需求,避免"需要"、"提供"、"实现"等词汇
|
||
🎯 **用户视角**: 从用户遇到的具体障碍和痛点角度定义问题
|
||
📊 **困难量化**: 用户痛点影响范围和程度必须量化,有明确解决标准
|
||
🔍 **边界清晰**: 问题域边界明确,困难点内聚,可独立解决和验证
|
||
</criteria>
|
||
</execution> |