先给结论:不要因为“需求取消”就直接删,也不要因为“已经开发完”就默认保留。判断标准是这项功能是否仍在承担可验证的业务作用,以及继续运行带来的维护、安全与认知成本是否有人负责。下面用一个假设情境把决策过程拆开。
假设一家成都本地服务型企业,原计划在网站上加一个“在线预约试听”表单,开发已完成并上线。三个月后,业务线调整,试听活动暂停,原需求提出人调岗,新负责人表示“暂时不知道还要不要”。此时功能没有报错,也偶尔有零散提交,但没有人跟进。
这个情境的关键不是功能好坏,而是责任主体已经消失。需求取消意味着业务目标不再明确,已开发意味着沉没成本已经发生。评估时要盯住未来,而不是为过去辩护。
同样是“需求取消”,实际处境差别很大,可以用下面三类区分:
区分这三类的证据不是“开发花了多少时间”,而是有没有明确的业务接收方。没有接收方,功能再完整也只是技术遗留物。
留用不是“什么都不做”。它成立的条件通常包括:业务方确认未来仍可能恢复该流程;有具体的人负责查看提交并回复;表单涉及的数据有明确的保存和删除规则。满足这些条件时,保留入口比反复开关更省沟通成本。
代价也要写清楚。留用意味着这个页面、接口和依赖会继续进入后续改版、安全更新和兼容检查的范围。如果它长期无人使用,就会变成每次维护都要重新确认的负担。可以做一个简单动作:给功能指定一个新负责人,并在内部记录中写明“保留原因”和“下次复核时间”。如果一周内找不到愿意接手的人,留用的理由基本不成立,下一步应转向下线评估。
下线不等于直接删代码。更稳妥的顺序是:
这个顺序的价值在于:如果第一步做完就有人提出异议,说明留用条件其实存在,只是之前没人表达;如果全程无人反馈,下线决策就有了实际依据,而不是凭感觉。
把下面几个问题写成一页纸,交给业务方而不是技术方回答:
四个问题里,只要“业务问题不存在”和“没有接收人”同时成立,就应进入下线流程;如果业务问题仍存在、只是流程暂停,则更适合留用并指定临时负责人。评估的落点始终是谁为它负责,而不是它当初花了多少开发时间。