需求清单写到“开发人员不需要追问就能动手、验收时双方能逐条对照”的程度就够了。低于这个程度,报价和工期只能靠猜;高于这个程度,会把还没想清楚的细节提前锁死,反而增加返工。对已有页面或项目做改进时,清单的重点不是重新描述整个网站,而是写清楚改什么、改成什么样、怎么算改完。
改进类需求通常分三种,写法差别很大:
只写“优化首页”“提升体验”这类描述,等于没写。判断标准很简单:把这条需求交给一个没参与过沟通的人,他能否判断做完了没有。
一条可执行的需求条目,至少包含位置、动作、结果和验收方式。举例(假设场景):
位置:手机端首页顶部;动作:把联系电话改为可点击拨打;结果:点击后唤起拨号界面;验收:在安卓和iOS各测一次,号码显示与后台一致。
四个要素缺一个,就容易扯皮。缺位置,开发可能改错页面;缺动作,不知道是新增还是替换;缺结果,无法判断完成状态;缺验收,双方各说各话。对于已有项目,还要补一句“是否影响现有功能”,比如改动导航后,原链接是否需要同步更新。
颗粒度停在下一次决策不需要再问“做成什么样”的位置。具体可以按这个顺序检查:
如果某一条暂时定不下来,不要硬编一个答案,写成“待定,需在开发前确认,负责人某某”,并给出确认时间。这比写一个后来必然改掉的假需求更有用。
在原有基础上改进,比全新制作更容易出问题,因为旧代码和旧内容会牵制改动。清单里建议单独列三块:
验收信号可以设为:清单中每一条都能标记为“完成、未完成、待确认”三种状态之一,且没有条目停留在“大概做了”。如果一份清单里超过三成条目无法判断完成状态,说明颗粒度还不够。
把现有需求按上面的四要素逐条改写,改不动的条目单独列成“待确认问题”,先和开发方确认这些问题,再进入报价或排期。清单定稿后,把它作为验收对照表保存,后续每次沟通都在同一份文件上更新,不要另开新版本口头补充。