先给结论:能验收但不能使用,通常不是“验收标准太低”,而是验收对象选错了。如果验收单只核对文件是否存在、页面能否打开、数量是否对得上,那么它证明的是“交付动作完成”,不是“业务能接手”。缺口应界定为:从“文件已收到”到“目标用户能完成一个真实任务”之间,还差哪些可复现的条件。只有当这些条件被逐条写成可测试项,缺口才算被说清;否则双方只会在“你签收了”和“我根本用不了”之间反复拉扯。
“不能用”是个模糊说法,拆开看至少有三类,混在一起谈就会把责任推给错误的一方。
三类缺口的证据形式不同:第一类看访问结果,第二类看端到端流程,第三类看一次真实操作。把它们塞进同一张验收单,就会出现“每项都打了勾,整体仍然不可用”的结果。
验收通常按交付清单逐项确认:页面数量、栏目结构、后台账号、说明文档。这套逻辑没有错,但它回答的是“东西交齐了吗”。使用回答的是另一个问题:“换一个人,能不能在不知道内情的前提下完成一件具体的事。”
两者的差距可以这样验证。假设验收单写“后台可登录、可发布文章”,这属于动作级确认。使用级确认则应写成:“用新账号登录后台,在不询问原制作者的情况下,新建一篇带封面图和分类的文章并发布,前台可见,且不需要手动改任何配置文件。”同一个功能,两种写法指向完全不同的证据。前者签字即可通过,后者必须有人真的做一遍。
因此,界定缺口的第一步不是争论质量好坏,而是把验收单里每一条动作级描述,改写成一条任务级描述,并注明由谁、在什么条件下完成。改写后仍无法通过的项目,就是真实缺口,而不是主观不满。
上面的结论有一个重要例外。如果合同约定的交付物本来就是成品本身,而不是可持续运营的系统——例如一次性活动页、临时展示页、按固定内容封存的归档页面——那么“不能被继续修改和扩展”并不构成缺口,它只是交付范围的边界。此时要求对方提供完整的二次开发能力,反而超出了原约定。
判断属于哪种情况,看一个信号:原约定里是否包含“后续由谁维护、以什么方式维护”。有这一条,可维护性就是交付的一部分,不能用“当时没说清”带过;没有这一条,就要先把范围补清楚,再谈缺口。把范围问题当成质量问题,会让退出和交接都失去基准。
当旧内容、旧系统或旧合作关系需要退出,又不想全部推倒重来时,最有用的动作是做一次最小接手测试:让将要接手的人,在不联系原制作者的前提下,独立完成一件小事。
这个动作的结果会直接决定下一步:如果卡点集中在资料和说明,补文档、补权限就能继续沿用,保留仍有价值的部分;如果卡点集中在结构本身,例如栏目之间强耦合、改一处必须动多处,那么继续修补的代价会持续累积,此时应把“可保留部分”和“必须重建部分”分开列出,再决定是局部替换还是整体退出。测试规模要小,但必须真实执行,不能靠口头描述代替。
界定缺口的最终产物,不是一句“还不能用”,而是一份可复核的清单。每条应包含:要完成的任务、执行者、前置条件、实际结果、缺口归类。这样写的好处是,争议点从“你觉得不行”变成“这一条在什么条件下没有通过”,双方都能重复验证。
需要提醒的是,某次测试失败、某个账号无法登录、某份文档缺失,都不能单独证明整个交付无效。它们可能只是个别配置遗漏,也可能是接手人尚未熟悉环境。合理解释包括:权限尚未转移、文档版本未同步、测试环境与正式环境不同。要区分这些解释,办法是换一个人、换一个时间、在正式环境下再测一次同一任务。重复出现同一卡点,才足以支撑“这是结构性缺口”的判断。
所以,面对“验收通过却无法使用”,先不要急着否定验收,也不要急着否定使用。把动作级验收改写成任务级验收,做一次最小接手测试,再把反复出现的卡点归类。缺口一旦能被别人按同样步骤复现,它就不再是感受问题,而是一个可以决定保留、修补还是退出的具体依据。