相信大家看完卷二,并没有看卷三的兴趣,接上一篇《PRD修炼真经•卷二》
即使自宫,未必成功。
非功能需求
非功能需求是功能需求的有效补充,帮助文档理解产品在功能以外的相关要求。
下面对非功能需求的各部分内容进行详细说明:
接口需求
包含面对不同主体,产品对外提供的接口要求,以供各主体使用。
1.用户接口
提供用户使用软件产品是的接口需求,一般情况下,当用户有特殊要求时再体现。例如:
屏幕格式:用户使用产品时对屏幕需求。如屏幕尺寸、分辨率、设备型号。
交互格式:用户对交互的需求,如菜单的格式和内容。
报表格式:用户对报表页面的需求,如打印格式、内容、时间要求。
文件格式:用户对产品相关文件的需求,如文件类型、文件大小、文件数量。
2.硬件接口
提供软件产品和系统硬部件之间每个接口的逻辑特点。例如:
信息传递方式:可以包括通信协议,协议格式的要求,如蓝牙、串口、网线、socke。
响应时间:对硬件响应时间的需求。
精度要求:对信息交互精度的要求。如时间误差、计步器步数误差、陀螺仪误差等。
3.软件接口
提供使用其它软件产品或系统之家的接口,如数据接口,中间件接口等。软件接口中应说明接口版本、来源,软件产品使用接口的目的、内容和格式等:
使用者:描述接口使用者的相关信息,包含使用者名称、业务目的、使用时机、使用频率。
内容与格式:描述数据交互过程,以及数据项的内容和格式。与功能需求中的数据项描述类似。
设计约束:软件接口在设计、开发时所需特别注意的事项。此部分与功能需求中设计约束类似,但这里偏向于体现软件产品间特殊的约束。
4.通信接口
提供可用于通信的接口,如果产品涉及对外通信组件,应说明通信相关接口,如局部网络的协议。
数据需求
此部分包含对数据库、数据库文件、数据集等进行规定。可能包括数据使用频率、存取能力、数据备份、数据档案、数据保存等要求。分别从数据采集、数据影响和数据管理几个方面来说明:
(1).数据采集:描述用户必须要采集的相关数据,对于每个数据可以说明下面的内容
数据来源:数据的输入源,例如数据是通过操作产生,还是通过第三方抓取的
输入输出设备:对数据输入和输出的设备的要求,如步数的输入设备可能是手机,手表,手环等。
输入输出格式:数据输入和输出的格式要求,可以同时说明传递的放肆好
换算公式:当需要对采集的数据进行运算或者公式转换时,应说明相关公式。
(2).数据的影响:描述该数据对系统的影响,例如当采集不到此数据时,是否需要做相应的降级处理。
(3).数据的管理能力:描述数据的管理要求,主要目的是可以根据可预见的增长对数据的存储要求作出估算
操作
用于说明和业务相关的用户要求的一些操作,这部分内容有时是用户接口的一部分:
常规操作:包含复制、清空、重置、全选等常见操作。
特殊操作:它可以是一些不通过产品本身,但对产品有影响的操作。如对产品的安装、备份和恢复等有特殊要求的操作。
性能需求
描述产品交互过程中的数值需求,这部分的要求是可以度量的具体指标。例如:可支持的终端数量、TPS数量、响应时间等。
1.精度
说明输入输出的数据精度要求,包括传输过程中的精度。此部分若已经提及,可以省略
2.时间特性要求
说明对该产品的时间特性要求,常见的有:
响应时间:执行某个动作最大响应时间,按移动互联网的要求,3秒是极限,一般都要求500ms以内。
更新处理时间:例如任务执行后,任务状态同步时间。
传送时间:例如任务执行后,数据同步到各业务系统的时间。
根据产品形态进行定义。
3.灵活性
说明当需求发生变化时,该产品对这些变化的适应能力:
操作方式上的变化:例如当产品从鼠标按键到触摸方式时。
运行环境的变化:例如当环境温度超出正常温度范围时。
其它软件接口的变化:例如当其它软件失控时。常见与api产品中的降级处理。
精度和有效时限变化:例如当接入数据无法达到产品要求时。
当对某功能不理解时,可以在功能需求中提及,此部分是为了满足性能需求中的灵活性而设计。
属性
描述产品的相关属性要求,可以从安全性、可维护性、可用性进行描述。
1.安全性
指用户对于保护产品提出的特殊需求要素,例如数据安全,防止他人非法使用等。
密码技术:对密码的安全要求进行描述,银行应用和普通应用对密码的要求肯定不一样。
权限:控制产品的使用权限。
容灾:对不可抗因素和灾难发生时,产品的适应能力。如断电或遭到攻击时。
备份:对数据的备份能力。
2.可维护性
描述用户对产品的维护需求,便于用户进行扩展:
低耦合:产品的可分割,可组合性。
热插拔:产品可不断电进行各种功能。
热更新:产品可不重新下载进行更新,更新时不需要中断业务。
3.可用性
可用性一般为产品验收指标,即正常使用的情况下,操作成功率达到的标准。
设计约束
同前面的设计约束类似,此部分偏向于非功能需求方面的设计约束。如果前面已经提及,可以省略:
其它标准约束:财务处理、审计追踪等。
硬件限制:硬件配置要求。
场合适应性需求
对给定场合、任务或操作方式的使用场合进行说明。如使用场景的配置、安装、调试。
其它需求
如果还有没表达清楚的,可以自行定义。
以上是非功能需求的部分
……………………………华丽的分割线…………………………………
环境
PRD中,最后一部分是环境,描述软件运行所需的环境支持:
1.软件环境
软件运行的环境,包括:
操作系统:如windows,ios,android,及其相关版本。
浏览器版本:软件使用的浏览器型号,及其相关版本。
软件支持:所需配合使用的软件。如名称、版本号等。
2.硬件环境
硬件环境包含服务端运行的硬件环境,以及客户端运行的硬件环境。
运行设备:服务端一般为服务器型号要求,客户端一般为终端配置要求。
网络、带宽:包含服务端所需的网络、带宽需求。
总结
以上是PRD可能涉及到的各个章节的描述,细化后的完整结构如下:
还是那句话:
PRD的形态会因为目标读者不同产生变化,但内容本质上不会变。
以上为个人对PRD进行解构后的理解,我说的都是错的,希望对你有所帮助,若已自宫,赶快入宫。
相关阅读
PRD修炼真经•卷一:一份标准化产品需求文档的逻辑思路
PRD修炼真经•卷二:一份标准化产品需求文档的逻辑思路