PRD撰写

需求文档文档是产品项目由“概念化”阶段进入到“图纸化”阶段的最主要的一个文档。
需求文档(PRD)的主要使用对象有:开发、测试、项目经理、设计师、运营及其他业务人员。
开发可以根据需求文档获知整个产品的逻辑,测试可以根据PRD文档编写测试用例,项目经理可以根据PRD分解任务并分配工作,交互设计师/UI设计师可以通过PRD来完成相关设计,培训人员可以根据PRD文档来制作培训文档,市场人员可以根据此文档来撰写新闻稿/微信公众号宣传文章,PRD文档的重要性不言而喻。

需求文档示例

变更记录
时间
变更人
变更内容
2025-07-18
@Fade
创建文档
目录
  1. 需求概述
    1. 业务现状/需求场景
    2. 要解决的问题
    3. 需求目标
    4. 术语定义
  1. 需求列表
  1. 需求详述
    1. 功能说明
    2. 非功能说明
  1. 自查清单

一、需求概述

(一)业务现状/需求场景

随着公司业务的增长,使用传统excel管理仓储的方式每人每天只能处理50个订单,且有5%的出错率。

(二)要解决的问题

仓储管理方式低效且易出错。

(三)需求目标

开发一套数字化仓储管理系统,提升仓库作业的效率并降低出错率。

(四)术语定义

术语
定义
WMS
Warehouse Management System,仓储管理系统,用于管理仓库内货物的入库、出库、库存盘点等全流程操作
SKU
Stock Keeping Unit,库存量单位,即库存管理中的最小可用单元
入库单
记录货物进入仓库的凭证,包含货物名称、数量、供应商等信息
出库单
记录货物离开仓库的凭证,包含货物名称、数量、收货方等信息

二、需求列表

产品模块
需求名称
需求描述
优先级
员工管理
添加员工信息
管理员可录入仓库员工基本信息,包括姓名、工号、角色等
P0
入库管理
创建入库单
支持扫码或手动录入方式创建入库单,记录货物名称、数量、批次号等
P0
出库管理
创建出库单
根据订单自动生成或手动创建出库单,支持拣货、复核、发货流程
P0
库存管理
库存盘点
支持定期盘点与动态盘点,自动生成盘盈/盘亏报告
P1
数据看板
仓储数据报表
提供库存周转率、出入库趋势、异常预警等可视化报表
P2

三、需求详述

(一)功能说明

1. 添加员工信息

a. 功能概述

该功能的大致说明,解决什么问题,实现什么目的
用户在客户端的注册

b. 前置条件

能够执行该功能的前置条件,如【已登录】,如果没有可省略
已登录

c. 流程描述

用文字或流程图描述操作流程,建议搭配流程图使用
  1. 管理员点击【员工管理】进入员工列表页
  1. 点击【添加员工】按钮,弹出添加员工信息表单
  1. 填写员工信息(真实姓名、工号、手机号、角色等)
  1. 点击【提交】按钮
    1. 校验通过 → 提示"添加成功",返回员工列表页,列表新增该员工记录
    2. 校验不通过 → 对应字段标红并显示错误提示信息

d. 功能规则

表单信息输入规则或者页面展示字段的说明
  1. 真实姓名:
    1. 必填,未填写提示【请输入真实姓名】
    2. 不能超过10个字,输入达到10个字时无法继续输入
    3. 仅支持中文、英文字符,不支持数字和特殊字符
  1. 工号:
    1. 必填,未填写提示【请输入工号】
    2. 格式为字母+数字组合,长度6~12位
    3. 不可与已有工号重复,重复时提示【该工号已存在】
  1. 手机号:
    1. 必填,未填写提示【请输入手机号】
    2. 格式校验为11位数字,不符合提示【手机号格式不正确】
  1. 角色:
    1. 必填,下拉单选
    2. 选项包括:仓库管理员、拣货员、复核员、配送员
    3. 默认不选中任何角色

e. 后置条件

该功能执行后的相关操作,如注册后初始化数据
  1. 系统为该员工生成唯一员工 ID
  1. 根据所选角色自动分配对应的系统操作权限
  1. 员工信息同步至员工列表页,支持后续编辑和停用操作

f. 产品原型

产品原型链接或图片
(请在此处粘贴 Axure / Figma / 墨刀等工具的原型链接或截图)

g. 附带说明

上述结构中不存在,需要进一步说明的内容
  1. 员工信息仅允许管理员角色操作,普通员工无权访问
  1. 员工被停用后,其账号将无法登录系统,但历史操作记录保留
  1. 批量导入功能在 V2 版本规划中,本期暂不支持

(二)非功能说明

包括埋点、技术性能等要求

1. 埋点需求

页面/模块
事件名称
事件类型
上报参数
员工管理
click_add_employee
点击
操作人ID、时间戳
员工管理
submit_employee_form
点击
操作人ID、提交结果(成功/失败)、失败原因
入库管理
create_inbound_order
点击
操作人ID、入库单号、SKU数量
出库管理
create_outbound_order
点击
操作人ID、出库单号、关联订单号

2. 性能要求

  • 页面首屏加载时间 ≤ 2秒(网络正常情况下)
  • 列表数据查询响应时间 ≤ 1秒(1000条数据以内)
  • 表单提交操作响应时间 ≤ 500ms
  • 系统可用性目标 ≥ 99.9%

3. 兼容性要求

  • 浏览器:Chrome 80+、Edge 80+、Firefox 78+、Safari 14+
  • 分辨率:最低支持 1280×720
  • 移动端暂不支持,V2 版本规划中

4. 安全要求

  • 敏感操作(删除、批量修改)需二次确认
  • 关键数据操作需记录操作日志(操作人、操作时间、操作内容)
  • 接口需增加权限校验,防止越权访问

自查清单

通用

功能入口:如果是新增的功能,功能入口在哪里
开关配置:用户可以选择开启或者关闭这个功能,给予用户自主权

数据输入

数据校验:表单类的输入数据格式,是否必填,最小值,最大值,长度,提示信息是如何
默认值:表单的选择项默认值、自动化流转过程中用户不需要参与的默认值

数据展示

空状态:列表、搜索结果等无数据时需展示空状态提示(如插图+文案"暂无数据"),引导用户下一步操作
异常状态:网络异常、接口超时、服务器错误等场景需给出友好提示,提供重试或返回操作

操作

动作反馈:用户的每个操作是如何反馈
数据流转/关联变更:操作之后数据产生什么变化,如新增了字段,相应的列表展示和表格导出都需要变更

用户体验

符合真实的世界:网页的一切表现和表述,应该尽可能贴近用户所在的环境(年龄、学历、文化、时代背景),而不要使用第二世界的语言。如图标应该和真实的世界保持一致
状态反馈:用户在网页上的任何操作,不论是单击、滚动还是按下键盘,页面应即时给出反馈
用户可控:当用户进行了重要操作时,为防止误操作带来严重后果,应设置"撤销"的回退方式以便补救
一致性:设计元素(按钮、图标、文字、组件等)在整个产品中保持一致,相同场景交互模式保持一致
防止用户出错:如删除操作增加"确认"弹窗,且需要输入如项目名称才可以删除整个项目
识别比记忆好:尽可能减少用户回忆负担,把需要记忆的内容摆上台面。动作和选项应该是可见的
操作高效:提高用户的操作效率
审美和简约的设计:让相关信息尽量一目了然,架构简单、界面简洁,突出重要内容,去掉或弱化干扰和不相关的信息
人性化原则:帮助性提示的优先级为:无需提示 > 一次性提示 > 常驻提示 > 帮助文档

安全

权限:是否需要控制权限,是页面级权限还是细化到元素级权限
操作日志:对于重要信息的操作变更,需要考虑增加操作日志记录操作内容、操作人和操作时间,以便出现问题时排查

技术

兼容性:对于生产上历史数据的兼容、对不同设备的兼容性
性能:页面进入速度,数据加载速度,操作反馈速度
埋点:点击、访问、异常报错
开放API:是否需要对外提供API接口供第三方系统调用,如ERP、OMS等系统对接

其他

移动端:功能是否需要适配移动端(H5/小程序/APP),移动端的交互和展示是否有差异
消息通知:哪些操作或状态变更需要发送通知(站内信、短信、邮件),通知对象和触发条件是什么