文档模板分享:后台产品需求用例

15 评论 54087 浏览 492 收藏 11 分钟

因为工作中写最多的就是后台产品的需求用例,所以先整理了这份文档模板,在往后的文章中会陆续总结PRD中其他部分的模板。

1. 文档模板背景介绍

  • 需求用例:我团队把一个需求(可理解为功能矩阵中的一行)的详细描述、页面、交互、数据项、基本流程这些能尽可能多描述地需求细节的内容称为一个需求用例。
  • 阅读者:需求开发者、需求测试人
  • 工具:Confluence(+JIRA)

我团队写文档都是使用Confluence(一款在线文档协作软件,企业Wiki),结合同系列的JIRA进行项目管理,好用到飞起。

需求用例都是尽我所能写得详细,并且结合程序员们的反馈,不断迭代。所以我的模板是最适合我团队和业务的,并不是普世的,我提倡每个人都输出自己的文档模板。

这一版模板完成后大大提升了我的写作效率,一个简单的增删改查需求,使用模板约30分钟能完成。

希望这个模板能抛砖引玉,为你的模板提供一点思路。

2. 需求用例属性

这一模块代表了需求用例的基本属性,尤其是文档的状态,在线协作时能提示开发和测试这个文档进行到哪一步了,流程需要团队内部达成一致。

可使用表格规范需求用例属性,方便查阅。

暂时为空的项,填写“暂无”。

3. 文档正文

后台产品的需求用例,我把正文分成关联、描述、VI&UI、数据项和流程等几个部分。实际应用后发现这是比较合理的方式,能最大程度上让开发者根据不同时期的不同需要去理解需求。

例如在评审会时,大家只需要看用例描述和VI部分就能对需求有大致了解;计划会时主要讲解描述、VI&UI和流程部分;开发者实际开发时会着重看VI&UI和数据项部分。

我写需求文档有几大准则,是需要时刻铭记和实践的:

  • 字不如表,表不如图;
  • 使用最少的字去描述,多利用各种符号;
  • 排版要舒适,不能反人类;
  • 尽量无歧义、准确、全面。

3.1 关联用例

使用插入超链接快捷键” [ ”,关联该需求用例的关联用例。

3.1.1 前置用例

该需求的前置需求,可进行适当文字描述。

3.1.2 前版用例

若用例为优化或升级,则需链接该需求的前一版本的用例,可进行适当文字描述。

3.1.3 相关用例

用例对其他用例有影响时,需关联,如后台需求用例会和前端需求用例联系,可进行适当文字描述。

3.1.4 前台用例

该需求用例功能所需要支持的前台功能。如一个广告Banner的增删改查功能,对应前台的Banner用例。

3.2 用例详细描述

3.2.1 需求目的

实现需求的目的,和需求设计的目的,1…2…3…逐条列出

3.2.2 需求场景

实际场景,可用作图表示,配合文字描述。

3.2.3 需求流程图

需求中的业务流程图、状态流转、操作流程等流程图,少量文字描述。

3.2.4 需求规则

需求中若涉及规则,则需描述清楚,可配合实例,注意考虑极限情况。

3.3 VI&UI设计

这部分建议使用“左图右字”的排版,便于阅读。(Confluence中有“节”的设置,排版非常好用)

3.3.1 P00 页面名称

设置页面编号和名称,插入视觉图,使用数字标注,标明交互、初始状态数据项等内容。

每条交互都需要有编号。

使用标号和“→”描述交互过程,注意标清错误提示语;可使用动图等形式表现稍稍复杂的交互。

图片较长时,交互内容尽量标注在图中对应位置旁边。

3.3.2 交互

UC000.1“P00 页面名称” 初始状态(常见举例)

描述该页面初始进入时的样子。不同业务页面的初始状态不同,但很多情况下可以复用。以下就是我经常使用的初始状态描述:

列表页面:

  1. 各查询项为空,展示占位文本;
  2. 后台分页;
  3. 默认每页显示10项结果;
  4. 列表中可查看所有该登录账户有权限查看的数据;
  5. 默认按更新时间排序。

新增页面:

  1. 各输入项为空,展示占位文本;
  2. 默认选择….

修改页面:本条数据上次成功保存内容。

数据页面:

  1. 展示当前实时数据;
  2. 默认展示最近7天数据趋势图。

UC000.2:…

UC000.3:…

3.4 数据项

使用列表标明涉及页面中的数据项

3.4.1 输入项

需要用户输入的数据项,例如筛选、新建时的输入项

  • 每个输入项需要考虑:
  • 字段名称(简洁、易于理解,注意与概念相似字段进行区分)
  • 是否必填(填写与否有何影响?)
  • 使用组件(从规定的组件库中选取,适当描述组件性质)
  • 占位文本(Input字段,输入框中的占位文字,提示用户可输入的内容)
  • 数据来源(可选选项的来源)
  • 权限限制(用户权限对本字段有无影响?)
  • 字段单位
  • 字段类型(整数、小数、字母、符号等)
  • 字段长度(≤?汉字)
  • 字段范围(数值范围,可否为0?最大为?小数是否自动补齐?)
  • 数据格式
  • 搜索特点(模糊搜索)
  • 可选选项(1- …;2-…)
  • 解释说明(是否需要文字提示用户字段含义或用法)
  • 极限情况(初始状态、极限状态)
  • 可否重复(能否与其他条目的同一字段重复)
  • 可否修改(修改后对本条数据、或其他系统的数据的影响、对客户端的影响;什么时候可以修改)
  • 是否联动(与其他数据、与其他系统、与客户端)
  • 是否排序(排序规则)
  • 展示预览(为空时;输入时;输入完;查看时;列表中;客户端;极限时)
  • 只读字段(不同情况下怎么展示只读)
  • 错误提示(为空或不满足约束条件时的提示语,提示方式)
  • 备注说明

约束条件需要结合业务,在每次的文档写作中不断积累和总结。

3.4.2 展示/列表项

用户在列表中查看或展示给用户,不能进行操作的数据项

每个展示项需要考虑:

  • 字段名称
  • 字段来源(新建、其他系统)
  • 初始状态(列表、预览、数据报表…)
  • 分页类型(前台or后台,默认一页几条数据)
  • 无数据时(如何展示?)
  • 展示样式(多种情况:为空时、多个值、很长时)
  • 排序规则
  • 备注说明

3.5 用例流程(基本流、备选流、异常流)

主要写清流程描述,因为“3.2.3 需求流程图”中已有流程图,这一部分可以省略。

同样,每个流程都需要编号,写清前置、描述和预期结果。尤其是异常流,需要和开发、测试多进行讨论和沟通。

3.5.1 基本流

【UC000-A】

  • 前置条件:
  • 流程描述:
  • 预期结果:

3.5.2 备选流

【UC000-B】

  • 前置条件:
  • 流程描述:
  • 预期结果:

3.5.3 异常流

【UC000-C】网络异常

Massage(1s)错误提示:网络异常,请稍后重试。

【UC000-D】输入时不满足约束(输入后即能直接判断)

控件下方错误提示,提示语详见 4.数据项 中的 “约束条件” 一列。

【UC000-E】保存失败

Massage(1s)错误提示:保存失败,请稍后重试。继续留在本页。

..

3.6 名词说明

用例中关于一些业务名词的定义与说明。

3.7 测试方案

使用超链接关联测试文档,方便查看。

3.8 文档版本

这里我使用的是Confluence的一个文档版本插件,可以查看文档不同版本之间的差异,但是和文档状态没能关联起来看,所以用的不多,但是对于查看文档修改和修改内容还是很好用的。

 

本文由 @ZoeSunPM 原创发布于人人都是产品经理。未经许可,禁止转载。

题图来自unsplash,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 一套下来,时间已经过去大半了吧?

    回复
  2. 感谢作者,已三连,能出一篇测试文档中具体会包含哪些框架和元素吗?

    来自上海 回复
  3. 两篇文章都挺不错的,怎么不更新了呢,跳槽了?

    来自湖北 回复
  4. 你是技术转做产品的吗?

    来自江苏 回复
    1. 不是哦~之前是念的工科

      来自上海 回复
  5. 有些内容还是不错的,平时都有积累。值得学习。

    来自广东 回复
    1. 一起进步~

      来自上海 回复
  6. 写后台用例文档时更多应该注意的是什么?
    “3.3.1 P00 页面名称
    设置页面编号和名称,插入视觉图,使用数字标注,标明交互、初始状态数据项等内容。”
    此处描述没有图示很难理解,因为仅靠文字,脑补画面不容易将全部描述项呈现出来,怕会有缺失。
    不介意的话,举个图例把,谢谢

    来自海南 回复
    1. 上方的图就是示例,因为是模板里的所以不够直观~下篇文章注意,感谢阅读~

      来自辽宁 回复
  7. 用例和需求文档有什么区别吗

    来自上海 回复
    1. 我理解用例是需求文档的一部分,可能会把一个简单的增删改查功能的需求文档拿出来作为一个用例。

      来自辽宁 回复
  8. 希望对你有启发,大家看完多吐槽哦~

    来自辽宁 回复
    1. 请问有文档文件吗

      来自福建 回复
    2. 文档模板内容其实和文章里一样,工作实际写的文档可能不方便分享哦~

      来自辽宁 回复
    3. 可以看一些实际的文档案例吗?后台能找的参考实在是太少了呢

      来自四川 回复