把功能要求写成验收项,核心是让每条要求都能被“做没做、做成什么样”判断出来。常见有两种写法:一种按页面或模块列功能清单,另一种按用户操作流程列场景清单。前者适合功能边界清楚、页面数量多的项目,后者适合交互复杂、跨页面串联的项目。选择时先看你的需求里“动作”多还是“页面”多,再决定用哪一种作为主结构。
按模块列清单,是把网站拆成首页、栏目页、详情页、表单页等,再逐项写每个模块要有哪些元素和操作。它适合山西本地企业展示站、产品目录站这类结构相对固定的项目。代价是容易漏掉“从A页跳到B页再提交”的连续动作。
按流程列场景,是写成“访客打开首页→点击产品分类→进入详情→填写询价→看到提交成功提示”这样的步骤链。它适合带会员、下单、预约、多步表单的网站。代价是页面级细节可能被流程盖住,比如某个页面的字段顺序、空状态提示容易被忽略。
判断方法很简单:把需求文档里的动词圈出来。如果大量动词集中在单个页面内部,用模块清单;如果动词跨越多个页面,用流程清单。两者也可以主辅搭配,但验收时要以其中一种为核对主线,避免两套清单互相矛盾。
举例(假设项目):需求原句是“产品页要能询价”。拆成验收项后可写成:访客在产品详情页点击“询价”按钮,页面展开表单;填写姓名和手机号后提交,页面显示成功提示;后台询价列表新增一条记录,记录中带有该产品名称。适用条件是产品页数量多、字段统一;如果不同产品需要不同表单字段,就要按产品类型分别写验收项。
这些检查项不必每个功能都写全,但涉及提交、支付、注册、预约的功能建议至少覆盖输入边界、数据去向和重复操作三项。判断结果是:如果一条验收项无法回答“做什么操作、看到什么、去哪里核对”,它就还需要继续拆。
实际执行时可以按下面的顺序决定:第一步,统计需求中跨页面的操作有几处;第二步,跨页面操作超过总功能数一半时,以流程清单为主;第三步,其余情况以模块清单为主,再把关键流程单独补成场景;第四步,把两种清单里同一功能的描述对照一遍,删掉冲突表述;第五步,让开发和验收双方用同一份清单逐条打勾。
交付前做一次反向核对:随机挑三条验收项,请不参与开发的人按文字操作一遍。如果他能独立判断通过或不通过,说明写法可用;如果他要追问“点哪个按钮”“成功是什么样”,就回到对应条目补充触发条件和预期结果。下一步,把你现有需求文档中动词最密集的一段先改成三到五条验收项,再决定整份文档采用哪种主结构。