jsharness 1.8.1 → 1.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.harness/README.md +123 -57
- package/.harness/agents/{prompt-templates.md → agent-dispatcher.md} +304 -21
- package/.harness/agents/code-reviewer/contract.yaml +63 -0
- package/.harness/agents/code-reviewer/prompt.md +81 -0
- package/.harness/agents/code-reviewer.md +1 -1
- package/.harness/agents/developer/contract.yaml +59 -0
- package/.harness/agents/developer/prompt.md +100 -0
- package/.harness/agents/developer.md +0 -1
- package/.harness/agents/gate-controller/contract.yaml +48 -0
- package/.harness/agents/gate-controller/prompt.md +77 -0
- package/.harness/agents/gate-controller.md +1 -1
- package/.harness/agents/project-manager/contract.yaml +46 -0
- package/.harness/agents/project-manager/prompt.md +77 -0
- package/.harness/agents/project-manager.md +1 -1
- package/.harness/agents/requirements-analyst/contract.yaml +46 -0
- package/.harness/agents/requirements-analyst/prompt.md +69 -0
- package/.harness/agents/requirements-analyst.md +5 -26
- package/.harness/agents/solution-designer/contract.yaml +47 -0
- package/.harness/agents/solution-designer/prompt.md +86 -0
- package/.harness/agents/solution-designer.md +1 -1
- package/.harness/agents/tester/contract.yaml +59 -0
- package/.harness/agents/tester/prompt.md +105 -0
- package/.harness/agents/tester.md +1 -1
- package/.harness/dev-map/overview.md +5 -4
- package/.harness/gate/index.js +158 -3
- package/.harness/skills/architecture-designer/SKILL.md +2 -0
- package/.harness/skills/docs-update/SKILL.md +2 -0
- package/.harness/skills/prd-generator/SKILL.md +584 -0
- package/files/analyze-requirements.md +197 -0
- package/lib/index.mjs +42 -40
- package/package.json +1 -1
- package/.harness/skills/build/SKILL.md +0 -199
- /package/.harness/{docs → doc}/integration-test-plan.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/README.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/arch-team.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/collaboration.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/pm-team.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/qa-team.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/rd-team.md +0 -0
- /package/.harness/{docs → doc}/training-materials.md +0 -0
|
@@ -0,0 +1,584 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prd-generator
|
|
3
|
+
description: 生成标准化 Markdown 产品需求文档(PRD)— 包含背景、用户角色、业务主流程、用户故事、功能清单、功能详细描述、产品运行分析、非功能性需求和附录十大章节,支持 Mermaid 图表
|
|
4
|
+
alwaysApply: false
|
|
5
|
+
enabled: true
|
|
6
|
+
outputPath: .harness/doc/prd/
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# PRD Generator(产品需求文档生成器)
|
|
10
|
+
|
|
11
|
+
> **Skill 类型**: 需求分析辅助 Skill
|
|
12
|
+
> **触发场景**: 用户提出产品需求、功能规划,或明确要求撰写 PRD
|
|
13
|
+
> **所属 Agent**: requirements-analyst(需求分析师在需求分析阶段引用本 skill)
|
|
14
|
+
> **输出路径**: 生成的 PRD 文档写入项目根目录下 `.harness/doc/prd/` 目录
|
|
15
|
+
|
|
16
|
+
本 Skill 用于生成标准化的 Markdown 格式产品需求文档(PRD)。当用户提出产品需求、功能规划或需要撰写 PRD 时,自动按照以下模板结构输出完整的 PRD 文档。
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 文档结构总览
|
|
21
|
+
|
|
22
|
+
生成的 PRD 必须严格包含以下十大章节,顺序如下:
|
|
23
|
+
|
|
24
|
+
1. 背景
|
|
25
|
+
2. 用户角色
|
|
26
|
+
3. 业务主流程
|
|
27
|
+
4. 用户故事
|
|
28
|
+
5. 系统用户与功能结构
|
|
29
|
+
6. 功能清单
|
|
30
|
+
7. 功能详细描述
|
|
31
|
+
8. 产品运行分析
|
|
32
|
+
9. 非功能性需求
|
|
33
|
+
10. 附录
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## 各章节详细规范
|
|
38
|
+
|
|
39
|
+
### 1. 背景
|
|
40
|
+
|
|
41
|
+
**目的**:阐述本次需求的来龙去脉,让读者快速理解"为什么要做这件事"。
|
|
42
|
+
|
|
43
|
+
**必须包含的子项**:
|
|
44
|
+
|
|
45
|
+
- **需求背景**:描述当前业务现状、痛点或机会,说明触发本次需求的缘由
|
|
46
|
+
- **目的**:明确本次需求要达成的核心目标(建议用 1-3 条精炼描述)
|
|
47
|
+
- **版本范围**:标注本次 PRD 对应的版本号、迭代周期、涉及的产品线/模块范围
|
|
48
|
+
|
|
49
|
+
**输出格式**:
|
|
50
|
+
|
|
51
|
+
```markdown
|
|
52
|
+
## 1. 背景
|
|
53
|
+
|
|
54
|
+
### 1.1 需求背景
|
|
55
|
+
|
|
56
|
+
<描述当前业务现状、痛点或机会>
|
|
57
|
+
|
|
58
|
+
### 1.2 目的
|
|
59
|
+
|
|
60
|
+
- <目标1>
|
|
61
|
+
- <目标2>
|
|
62
|
+
- <目标3>
|
|
63
|
+
|
|
64
|
+
### 1.3 版本范围
|
|
65
|
+
|
|
66
|
+
|| 项目 | 内容 |
|
|
67
|
+
||------|------|
|
|
68
|
+
|| 版本号 | v<版本号> |
|
|
69
|
+
|| 迭代周期 | <起止日期或Sprint编号> |
|
|
70
|
+
|| 涉及产品线/模块 | <产品线或模块名称> |
|
|
71
|
+
|| 关联文档 | <相关BRD/MRD/技术方案链接> |
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
### 2. 用户角色
|
|
77
|
+
|
|
78
|
+
**目的**:定义本次需求涉及的所有用户角色,确保后续章节中角色引用一致且可追溯。
|
|
79
|
+
|
|
80
|
+
**必须包含的子项**:
|
|
81
|
+
|
|
82
|
+
- **角色名称**:角色的标准命名
|
|
83
|
+
- **角色定义**:该角色是什么人、代表什么群体
|
|
84
|
+
- **角色权限概述**:该角色在本期需求中的核心权限范围
|
|
85
|
+
|
|
86
|
+
**输出格式**:
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
## 2. 用户角色
|
|
90
|
+
|
|
91
|
+
|| 角色名称 | 角色定义 | 角色权限概述 |
|
|
92
|
+
||----------|----------|-------------|
|
|
93
|
+
|| <角色A> | <该角色是什么人/代表什么群体> | <该角色在本期需求中的核心权限> |
|
|
94
|
+
|| <角色B> | <该角色是什么人/代表什么群体> | <该角色在本期需求中的核心权限> |
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
### 3. 业务主流程
|
|
100
|
+
|
|
101
|
+
**目的**:从整体层面描述用户角色对应的大业务场景,明确业务目标、参与角色及核心流程,为后续用户故事的拆解提供宏观指导。
|
|
102
|
+
|
|
103
|
+
**必须包含的子项**:
|
|
104
|
+
|
|
105
|
+
- **业务场景概述**:描述业务的整体目标、价值和适用范围
|
|
106
|
+
- **参与角色**:列出参与该业务流程的主要角色(需与第2章角色名称一致)
|
|
107
|
+
- **核心流程**:以流程图或步骤形式描述业务的主要执行路径
|
|
108
|
+
- **关键节点说明**:对流程中的重要环节进行补充说明
|
|
109
|
+
|
|
110
|
+
**输出格式**:
|
|
111
|
+
|
|
112
|
+
```markdown
|
|
113
|
+
## 3. 业务主流程
|
|
114
|
+
|
|
115
|
+
### 3.1 业务场景概述
|
|
116
|
+
|
|
117
|
+
<描述业务的整体目标、价值和适用范围>
|
|
118
|
+
|
|
119
|
+
### 3.2 参与角色
|
|
120
|
+
|
|
121
|
+
- <角色A>
|
|
122
|
+
- <角色B>
|
|
123
|
+
- <角色C>
|
|
124
|
+
|
|
125
|
+
### 3.3 核心流程
|
|
126
|
+
|
|
127
|
+
**流程图**:
|
|
128
|
+
|
|
129
|
+
```mermaid
|
|
130
|
+
flowchart TD
|
|
131
|
+
A[<起点>] --> B[<步骤1>]
|
|
132
|
+
B --> C[<步骤2>]
|
|
133
|
+
C --> D[<步骤3>]
|
|
134
|
+
D --> E[<终点>]
|
|
135
|
+
B --> F[<异常路径>]
|
|
136
|
+
F --> G[<异常处理>]
|
|
137
|
+
G --> E
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**流程说明**:
|
|
141
|
+
|
|
142
|
+
1. <详细描述步骤1的业务动作和目的>
|
|
143
|
+
2. <详细描述步骤2的业务动作和目的>
|
|
144
|
+
3. <详细描述步骤3的业务动作和目的>
|
|
145
|
+
4. <详细描述步骤4的业务动作和目的>
|
|
146
|
+
|
|
147
|
+
### 3.4 关键节点说明
|
|
148
|
+
|
|
149
|
+
|| 节点名称 | 说明 | 参与角色 |
|
|
150
|
+
||----------|------|----------|
|
|
151
|
+
|| <节点1> | <节点详细说明> | <角色A> |
|
|
152
|
+
|| <节点2> | <节点详细说明> | <角色B> |
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
### 4. 用户故事
|
|
158
|
+
|
|
159
|
+
**目的**:从用户视角描述需求场景,明确"谁在什么条件下、什么场景中、执行什么操作、达到什么效果"。
|
|
160
|
+
|
|
161
|
+
**必须包含的要素**:
|
|
162
|
+
|
|
163
|
+
- **角色**:哪个用户角色(需与第2章角色名称一致)
|
|
164
|
+
- **前置条件**:触发该故事的前提条件
|
|
165
|
+
- **场景描述**:用户所处的业务场景
|
|
166
|
+
- **操作步骤**:用户执行的具体操作流程(按步骤编号)
|
|
167
|
+
- **预期效果**:操作完成后系统应呈现的结果或状态
|
|
168
|
+
|
|
169
|
+
**输出格式**:
|
|
170
|
+
|
|
171
|
+
```markdown
|
|
172
|
+
## 4. 用户故事
|
|
173
|
+
|
|
174
|
+
### US-01:<用户故事标题>
|
|
175
|
+
|
|
176
|
+
|| 要素 | 描述 |
|
|
177
|
+
||------|------|
|
|
178
|
+
|| 编号 | US-01 |
|
|
179
|
+
|| 角色 | <角色名称> |
|
|
180
|
+
|| 前置条件 | <触发前提> |
|
|
181
|
+
|| 场景描述 | <业务场景> |
|
|
182
|
+
|
|
183
|
+
**操作步骤**:
|
|
184
|
+
|
|
185
|
+
1. <步骤1:用户执行的操作>
|
|
186
|
+
2. <步骤2:用户执行的操作>
|
|
187
|
+
3. <步骤3:用户执行的操作>
|
|
188
|
+
|
|
189
|
+
**预期效果**:
|
|
190
|
+
|
|
191
|
+
- <效果1:系统呈现的结果/状态>
|
|
192
|
+
- <效果2:系统呈现的结果/状态>
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
### US-02:<用户故事标题>
|
|
197
|
+
|
|
198
|
+
|| 要素 | 描述 |
|
|
199
|
+
||------|------|
|
|
200
|
+
|| 编号 | US-02 |
|
|
201
|
+
|| 角色 | <角色名称> |
|
|
202
|
+
|| 前置条件 | <触发前提> |
|
|
203
|
+
|| 场景描述 | <业务场景> |
|
|
204
|
+
|
|
205
|
+
**操作步骤**:
|
|
206
|
+
|
|
207
|
+
1. <步骤1>
|
|
208
|
+
2. <步骤2>
|
|
209
|
+
|
|
210
|
+
**预期效果**:
|
|
211
|
+
|
|
212
|
+
- <效果1>
|
|
213
|
+
- <效果2>
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
> **注意**:用户故事编号从 US-01 开始递增,每个用户故事之间用 `---` 分隔线隔开。
|
|
219
|
+
|
|
220
|
+
---
|
|
221
|
+
|
|
222
|
+
### 5. 系统用户与功能结构
|
|
223
|
+
|
|
224
|
+
**目的**:明确功能涉及的系统用户角色及权限分配,通过功能结构将功能清单整理为清晰的菜单层级,便于用户理解和系统实现。
|
|
225
|
+
|
|
226
|
+
**必须包含的子项**:
|
|
227
|
+
|
|
228
|
+
- **系统用户**:列出当前功能涉及的菜单及对应的权限角色(需与第2章角色名称一致)
|
|
229
|
+
- **功能结构**:将功能清单按照场景整合为一级菜单、二级菜单,形成清晰的功能层级
|
|
230
|
+
|
|
231
|
+
**输出格式**:
|
|
232
|
+
|
|
233
|
+
```markdown
|
|
234
|
+
## 5. 系统用户与功能结构
|
|
235
|
+
|
|
236
|
+
### 5.1 系统用户
|
|
237
|
+
|
|
238
|
+
|| 菜单名称 | 功能模块 | 权限角色 |
|
|
239
|
+
||----------|----------|----------|
|
|
240
|
+
|| <一级菜单> | <二级菜单> | <角色A>, <角色B> |
|
|
241
|
+
|| <一级菜单> | <二级菜单> | <角色C> |
|
|
242
|
+
|
|
243
|
+
### 5.2 功能结构
|
|
244
|
+
|
|
245
|
+
```mermaid
|
|
246
|
+
graph TB
|
|
247
|
+
subgraph 用户层
|
|
248
|
+
A[用户]
|
|
249
|
+
end
|
|
250
|
+
subgraph 接入层
|
|
251
|
+
B[Web端]
|
|
252
|
+
C[移动端]
|
|
253
|
+
end
|
|
254
|
+
subgraph 业务服务层
|
|
255
|
+
D[业务逻辑]
|
|
256
|
+
E[API服务]
|
|
257
|
+
end
|
|
258
|
+
subgraph 数据层
|
|
259
|
+
F[数据库]
|
|
260
|
+
G[缓存]
|
|
261
|
+
end
|
|
262
|
+
subgraph 外部系统
|
|
263
|
+
H[第三方服务]
|
|
264
|
+
end
|
|
265
|
+
A --> B
|
|
266
|
+
A --> C
|
|
267
|
+
B --> D
|
|
268
|
+
C --> D
|
|
269
|
+
D --> E
|
|
270
|
+
E --> F
|
|
271
|
+
E --> G
|
|
272
|
+
D --> H
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
**功能结构说明**:
|
|
276
|
+
|
|
277
|
+
|| 一级菜单 | 二级菜单 | 包含功能点 | 说明 |
|
|
278
|
+
||----------|----------|------------|------|
|
|
279
|
+
|| <一级菜单1> | <二级菜单1-1> | F-01, F-02 | <简要说明> |
|
|
280
|
+
|| <一级菜单1> | <二级菜单1-2> | F-03 | <简要说明> |
|
|
281
|
+
|| <一级菜单2> | <二级菜单2-1> | F-04 | <简要说明> |
|
|
282
|
+
|| <一级菜单2> | <二级菜单2-2> | F-05 | <简要说明> |
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
### 6. 功能清单
|
|
288
|
+
|
|
289
|
+
**目的**:将用户故事拆解为可实施的功能点,建立用户故事与功能的映射关系。
|
|
290
|
+
|
|
291
|
+
**必须包含的子项**:
|
|
292
|
+
|
|
293
|
+
- **功能编号**:唯一标识(F-01, F-02, ...)
|
|
294
|
+
- **功能名称**:功能的简明命名
|
|
295
|
+
- **功能描述**:功能的简要说明
|
|
296
|
+
- **关联用户故事**:该功能对应的用户故事编号
|
|
297
|
+
- **优先级**:P0(必须有)/ P1(应该有)/ P2(可以有)
|
|
298
|
+
- **状态**:待开发 / 开发中 / 已完成
|
|
299
|
+
|
|
300
|
+
**输出格式**:
|
|
301
|
+
|
|
302
|
+
```markdown
|
|
303
|
+
## 6. 功能清单
|
|
304
|
+
|
|
305
|
+
|| 功能编号 | 功能名称 | 功能描述 | 关联用户故事 | 优先级 | 状态 |
|
|
306
|
+
||----------|----------|----------|-------------|--------|------|
|
|
307
|
+
|| F-01 | <功能名称> | <简要说明> | US-01 | P0 | 待开发 |
|
|
308
|
+
|| F-02 | <功能名称> | <简要说明> | US-01, US-02 | P1 | 待开发 |
|
|
309
|
+
|| F-03 | <功能名称> | <简要说明> | US-02 | P2 | 待开发 |
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
### 7. 功能详细描述
|
|
315
|
+
|
|
316
|
+
**目的**:对功能清单中的每个功能进行详细说明,明确功能的输入、条件、输出及验收标准,为开发和测试提供明确依据。
|
|
317
|
+
|
|
318
|
+
**每个功能必须包含的子项**:
|
|
319
|
+
|
|
320
|
+
- **功能编号与名称**:与功能清单一致
|
|
321
|
+
- **适用角色**:该功能面向哪些角色(需与第2章一致)
|
|
322
|
+
- **权限限制**:角色使用该功能的前提权限或限制条件
|
|
323
|
+
- **前置条件**:触发该功能的前置业务条件
|
|
324
|
+
- **输入**:用户需要提供或系统接收的输入项
|
|
325
|
+
- **处理逻辑**:系统在给定输入和条件下执行的核心处理流程
|
|
326
|
+
- **输出**:系统处理后的输出结果
|
|
327
|
+
- **业务逻辑(业务规则)**:功能涉及的后台业务规则和逻辑
|
|
328
|
+
- **限制条件**:功能使用的限制条件和边界情况
|
|
329
|
+
- **验收标准**:可验证的、明确的验收条件(建议用 Given-When-Then 格式)
|
|
330
|
+
|
|
331
|
+
**输出格式**:
|
|
332
|
+
|
|
333
|
+
```markdown
|
|
334
|
+
## 7. 功能详细描述
|
|
335
|
+
|
|
336
|
+
### F-01:<功能名称>
|
|
337
|
+
|
|
338
|
+
|| 项目 | 描述 |
|
|
339
|
+
||------|------|
|
|
340
|
+
|| 功能编号 | F-01 |
|
|
341
|
+
|| 适用角色 | <角色A>、<角色B> |
|
|
342
|
+
|| 权限限制 | <使用该功能需要的权限或限制> |
|
|
343
|
+
|| 前置条件 | <触发该功能的前置业务条件> |
|
|
344
|
+
|
|
345
|
+
**输入**:
|
|
346
|
+
|
|
347
|
+
|| 输入项 | 类型 | 必填 | 说明 |
|
|
348
|
+
||--------|------|------|------|
|
|
349
|
+
|| <字段名1> | <数据类型> | 是/否 | <字段说明> |
|
|
350
|
+
|| <字段名2> | <数据类型> | 是/否 | <字段说明> |
|
|
351
|
+
|
|
352
|
+
**处理逻辑**:
|
|
353
|
+
|
|
354
|
+
1. <步骤1:系统执行的逻辑>
|
|
355
|
+
2. <步骤2:系统执行的逻辑>
|
|
356
|
+
3. <步骤3:异常/边界处理>
|
|
357
|
+
|
|
358
|
+
**输出**:
|
|
359
|
+
|
|
360
|
+
|| 输出项 | 类型 | 说明 |
|
|
361
|
+
||--------|------|------|
|
|
362
|
+
|| <输出字段1> | <数据类型> | <字段说明> |
|
|
363
|
+
|| <输出字段2> | <数据类型> | <字段说明> |
|
|
364
|
+
|
|
365
|
+
**业务逻辑(业务规则)**:
|
|
366
|
+
|
|
367
|
+
1. <业务规则1>:<规则详细说明>
|
|
368
|
+
2. <业务规则2>:<规则详细说明>
|
|
369
|
+
3. <业务规则3>:<规则详细说明>
|
|
370
|
+
|
|
371
|
+
**限制条件**:
|
|
372
|
+
|
|
373
|
+
1. <限制条件1>:<条件详细说明>
|
|
374
|
+
2. <限制条件2>:<条件详细说明>
|
|
375
|
+
|
|
376
|
+
**验收标准**:
|
|
377
|
+
|
|
378
|
+
- **AC-01**:Given <前置条件>,When <操作>,Then <预期结果>
|
|
379
|
+
- **AC-02**:Given <前置条件>,When <操作>,Then <预期结果>
|
|
380
|
+
- **AC-03**:Given <异常条件>,When <操作>,Then <异常处理结果>
|
|
381
|
+
|
|
382
|
+
**状态机图**:
|
|
383
|
+
|
|
384
|
+
```mermaid
|
|
385
|
+
stateDiagram-v2
|
|
386
|
+
[*] --> <状态1>
|
|
387
|
+
<状态1> --> <状态2> : <触发条件>
|
|
388
|
+
<状态2> --> <状态3> : <触发条件>
|
|
389
|
+
<状态3> --> [*] : <触发条件>
|
|
390
|
+
<状态1> --> <异常状态> : <异常条件>
|
|
391
|
+
<异常状态> --> <状态1> : <恢复条件>
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
---
|
|
395
|
+
|
|
396
|
+
### F-02:<功能名称>
|
|
397
|
+
|
|
398
|
+
(同上结构)
|
|
399
|
+
|
|
400
|
+
---
|
|
401
|
+
```
|
|
402
|
+
|
|
403
|
+
> **注意**:功能编号与第6章功能清单保持一致,每个功能之间用 `---` 分隔线隔开。验收标准必须可验证、可量化。
|
|
404
|
+
|
|
405
|
+
---
|
|
406
|
+
|
|
407
|
+
### 8. 产品运行分析
|
|
408
|
+
|
|
409
|
+
**目的**:从本期功能点中提炼产品运行分析指标,明确上线后需达到的指标效果,为产品运营决策和迭代优化提供数据依据。
|
|
410
|
+
|
|
411
|
+
**必须包含的子项**:
|
|
412
|
+
|
|
413
|
+
- **指标编号**:唯一标识(MET-01, MET-02, ...)
|
|
414
|
+
- **关联功能**:该指标对应的功能编号(需与第6章功能编号一致)
|
|
415
|
+
- **指标名称**:指标的标准命名
|
|
416
|
+
- **指标定义**:指标的计算方式或统计口径
|
|
417
|
+
- **指标类型**:使用频次类 / 运行效率类 / 转化类 / 质量类
|
|
418
|
+
- **目标值**:上线后需达到的指标效果(需可量化)
|
|
419
|
+
- **统计周期**:指标的统计频率(日/周/月)
|
|
420
|
+
- **采集方式**:埋点 / 系统日志 / 业务报表 / 第三方工具
|
|
421
|
+
|
|
422
|
+
**指标类型说明**:
|
|
423
|
+
|
|
424
|
+
|| 指标类型 | 说明 | 示例 |
|
|
425
|
+
||----------|------|------|
|
|
426
|
+
|| 使用频次类 | 衡量功能被使用的频率和活跃度 | 日均使用次数、周活跃用户数、功能渗透率 |
|
|
427
|
+
|| 运行效率类 | 衡量功能运行的性能和效率 | 平均响应时间、处理成功率、批量任务完成率 |
|
|
428
|
+
|| 转化类 | 衡量用户行为转化效果 | 操作完成率、漏斗转化率、留存率 |
|
|
429
|
+
|| 质量类 | 衡量功能运行质量 | 错误率、异常中断率、数据准确率 |
|
|
430
|
+
|
|
431
|
+
**输出格式**:
|
|
432
|
+
|
|
433
|
+
```markdown
|
|
434
|
+
## 8. 产品运行分析
|
|
435
|
+
|
|
436
|
+
### 8.1 运行分析指标总览
|
|
437
|
+
|
|
438
|
+
|| 指标编号 | 关联功能 | 指标名称 | 指标定义 | 指标类型 | 目标值 | 统计周期 | 采集方式 |
|
|
439
|
+
||----------|----------|----------|----------|----------|--------|----------|----------|
|
|
440
|
+
|| MET-01 | F-01 | <指标名称> | <计算方式/统计口径> | 使用频次类 | <可量化目标> | 日/周/月 | 埋点/日志/报表/第三方 |
|
|
441
|
+
|| MET-02 | F-01, F-02 | <指标名称> | <计算方式/统计口径> | 运行效率类 | <可量化目标> | 日/周/月 | 埋点/日志/报表/第三方 |
|
|
442
|
+
|| MET-03 | F-03 | <指标名称> | <计算方式/统计口径> | 转化类 | <可量化目标> | 日/周/月 | 埋点/日志/报表/第三方 |
|
|
443
|
+
|| MET-04 | F-01 | <指标名称> | <计算方式/统计口径> | 质量类 | <可量化目标> | 日/周/月 | 埋点/日志/报表/第三方 |
|
|
444
|
+
|
|
445
|
+
### 8.2 指标详情
|
|
446
|
+
|
|
447
|
+
#### MET-01:<指标名称>
|
|
448
|
+
|
|
449
|
+
|| 项目 | 描述 |
|
|
450
|
+
||------|------|
|
|
451
|
+
|| 指标编号 | MET-01 |
|
|
452
|
+
|| 关联功能 | F-01 |
|
|
453
|
+
|| 指标类型 | 使用频次类 |
|
|
454
|
+
|| 指标定义 | <详细计算公式或统计口径> |
|
|
455
|
+
|| 目标值 | <上线后需达到的量化目标> |
|
|
456
|
+
|| 基线值 | <上线前当前值(若有)> |
|
|
457
|
+
|| 统计周期 | <日/周/月> |
|
|
458
|
+
|| 采集方式 | <埋点/系统日志/业务报表/第三方工具> |
|
|
459
|
+
|| 预警阈值 | <低于此值需触发预警> |
|
|
460
|
+
|| 负责人 | <指标负责人> |
|
|
461
|
+
|
|
462
|
+
#### MET-02:<指标名称>
|
|
463
|
+
|
|
464
|
+
(同上结构)
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
> **注意**:每个功能点至少提炼 1 个运行分析指标;P0 优先级功能必须提炼至少 2 个指标(至少包含 1 个使用频次类或转化类指标)。目标值必须可量化,避免使用"提升""优化"等模糊表述。
|
|
468
|
+
|
|
469
|
+
---
|
|
470
|
+
|
|
471
|
+
### 9. 非功能性需求
|
|
472
|
+
|
|
473
|
+
**目的**:明确除业务功能外,系统需要满足的安全性、性能、可用性、可交付性等质量属性要求。
|
|
474
|
+
|
|
475
|
+
**必须覆盖的维度**(根据实际需求选择填写,无则标注"无特殊要求"):
|
|
476
|
+
|
|
477
|
+
- **安全性需求**:数据加密、权限控制、审计日志、防攻击等
|
|
478
|
+
- **性能需求**:响应时间、并发量、吞吐量等
|
|
479
|
+
- **可用性需求**:SLA、容灾、降级策略等
|
|
480
|
+
- **兼容性需求**:浏览器、设备、系统版本等
|
|
481
|
+
- **可交付性需求**:部署方式、灰度策略、回滚方案等
|
|
482
|
+
- **数据合规需求**:隐私保护、数据保留策略等
|
|
483
|
+
|
|
484
|
+
**输出格式**:
|
|
485
|
+
|
|
486
|
+
```markdown
|
|
487
|
+
## 9. 非功能性需求
|
|
488
|
+
|
|
489
|
+
### 9.1 安全性需求
|
|
490
|
+
|
|
491
|
+
|| 编号 | 需求描述 | 优先级 |
|
|
492
|
+
||------|----------|--------|
|
|
493
|
+
|| NFR-SEC-01 | <需求描述> | P0/P1/P2 |
|
|
494
|
+
|| NFR-SEC-02 | <需求描述> | P0/P1/P2 |
|
|
495
|
+
|
|
496
|
+
### 9.2 性能需求
|
|
497
|
+
|
|
498
|
+
|| 编号 | 需求描述 | 优先级 |
|
|
499
|
+
||------|----------|--------|
|
|
500
|
+
|| NFR-PERF-01 | <需求描述> | P0/P1/P2 |
|
|
501
|
+
|
|
502
|
+
### 9.3 可用性需求
|
|
503
|
+
|
|
504
|
+
|| 编号 | 需求描述 | 优先级 |
|
|
505
|
+
||------|----------|--------|
|
|
506
|
+
|| NFR-AVAIL-01 | <需求描述> | P0/P1/P2 |
|
|
507
|
+
|
|
508
|
+
### 9.4 兼容性需求
|
|
509
|
+
|
|
510
|
+
|| 编号 | 需求描述 | 优先级 |
|
|
511
|
+
||------|----------|--------|
|
|
512
|
+
|| NFR-COMP-01 | <需求描述> | P0/P1/P2 |
|
|
513
|
+
|
|
514
|
+
### 9.5 可交付性需求
|
|
515
|
+
|
|
516
|
+
|| 编号 | 需求描述 | 优先级 |
|
|
517
|
+
||------|----------|--------|
|
|
518
|
+
|| NFR-DEL-01 | <需求描述> | P0/P1/P2 |
|
|
519
|
+
|
|
520
|
+
### 9.6 数据合规需求
|
|
521
|
+
|
|
522
|
+
|| 编号 | 需求描述 | 优先级 |
|
|
523
|
+
||------|----------|--------|
|
|
524
|
+
|| NFR-COMPL-01 | <需求描述> | P0/P1/P2 |
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
---
|
|
528
|
+
|
|
529
|
+
### 10. 附录
|
|
530
|
+
|
|
531
|
+
**目的**:以数据字典的形式,汇总本期涉及的所有字段参数,供各章节引用和查阅。
|
|
532
|
+
|
|
533
|
+
**必须包含的子项**:
|
|
534
|
+
|
|
535
|
+
- **字段名称**:字段的英文/技术命名
|
|
536
|
+
- **字段中文名**:字段对应的中文含义
|
|
537
|
+
- **数据类型**:String / Integer / Boolean / Date / Enum / Decimal 等
|
|
538
|
+
- **字段长度/取值范围**:最大长度、取值范围或枚举值列表
|
|
539
|
+
- **必填**:是 / 否
|
|
540
|
+
- **默认值**:无则填"-"
|
|
541
|
+
- **说明**:补充说明
|
|
542
|
+
|
|
543
|
+
**输出格式**:
|
|
544
|
+
|
|
545
|
+
```markdown
|
|
546
|
+
## 10. 附录
|
|
547
|
+
|
|
548
|
+
### 10.1 数据字典
|
|
549
|
+
|
|
550
|
+
|| 字段名称 | 字段中文名 | 数据类型 | 长度/取值范围 | 必填 | 默认值 | 说明 |
|
|
551
|
+
||----------|-----------|----------|-------------|------|--------|------|
|
|
552
|
+
|| <field_name> | <中文名> | <类型> | <范围> | 是/否 | <默认值> | <补充说明> |
|
|
553
|
+
|| <field_name> | <中文名> | <类型> | <范围> | 是/否 | <默认值> | <补充说明> |
|
|
554
|
+
|
|
555
|
+
### 10.2 枚举值字典
|
|
556
|
+
|
|
557
|
+
|| 枚举名称 | 枚举值 | 枚举描述 | 所属字段 |
|
|
558
|
+
||----------|--------|----------|----------|
|
|
559
|
+
|| <ENUM_NAME> | <value1> | <描述1> | <字段名称> |
|
|
560
|
+
|| <ENUM_NAME> | <value2> | <描述2> | <字段名称> |
|
|
561
|
+
|
|
562
|
+
### 10.3 术语表
|
|
563
|
+
|
|
564
|
+
|| 术语 | 全称 | 说明 |
|
|
565
|
+
||------|------|------|
|
|
566
|
+
|| <缩写> | <全称> | <解释> |
|
|
567
|
+
```
|
|
568
|
+
|
|
569
|
+
---
|
|
570
|
+
|
|
571
|
+
## 使用指引
|
|
572
|
+
|
|
573
|
+
1. 当用户提出产品需求、功能规划,或明确要求撰写 PRD 时,触发本 Skill
|
|
574
|
+
2. 根据用户提供的需求信息,填充上述模板中的各章节内容
|
|
575
|
+
3. 若用户信息不足以填充某个章节,应主动追问,而非留空
|
|
576
|
+
4. 所有角色名称、功能编号、用户故事编号必须在各章节之间保持一致和可追溯
|
|
577
|
+
5. 验收标准必须使用 Given-When-Then 格式,确保可验证
|
|
578
|
+
6. 优先级统一使用 P0/P1/P2 三级体系
|
|
579
|
+
7. 产品运行分析指标必须与功能清单中的功能点关联,每个功能至少提炼 1 个指标,P0 功能至少 2 个指标
|
|
580
|
+
8. 运行分析指标的目标值必须可量化,避免使用"提升""优化"等模糊表述
|
|
581
|
+
9. 输出的 Markdown 文档应结构清晰、格式规范,可直接用于团队协作
|
|
582
|
+
10. 图表必须使用 Mermaid 语法,包括系统框架图、数据模型图、业务流程图、状态机图
|
|
583
|
+
11. 每完成一章立即输出,不要等所有章节完成后再一起输出
|
|
584
|
+
12. 信息不足则标注 `[TODO]`,而不是编造内容
|