
一份看起来很长的规则介绍,仍然可能遗漏决定性条件。与其只看篇幅,不如用一组测试问题检查它是否能够覆盖所有输入。本文提供一份适用于阅读与整理的核对方法,目标是发现缺项,而不是替缺失条款自行作答。
01从输入定义开始,而非从结果开始
完整说明应交代使用哪些牌、是否包含特殊牌、每种牌的数量,以及点数如何排序。若同一符号可有多个含义,还要给出分支条件。输入定义不完整时,后面的比较过程可能根本无法执行。比如只写“大牌在右”,却没有说A属于哪一端,这句话就不足以处理含A的实例。核对表首先检查的是对象范围,而不是宣传式概括。
02每一种比较关系都要有位置
对于不同边界,观察值可能低于下界、等于下界、位于内部、等于上界、高于上界。规则可以将某些情况合并,但不应留白。相同边界与相邻边界也应被单独测试,因为一般情形的描述未必覆盖它们。将这几类输入分别写成具体牌例,是检验文字清晰度的有效方法,比反复询问“是否按正常方式”更有帮助。
03流程状态与异常记录也要说明
除了点数关系,还应明确牌是否放回、何时重新混合、出现无法识别的牌面时怎样记录。这里讨论的是说明文档的完备性,不要求所有版本采用相同处理。一个版本可以选择与另一个不同的约定,但应让阅读者事先知道。任何需要等结果出现后才决定的解释,都不适合被当成稳定的教学前提。
04用测试案例反推文档缺口
准备一组含正常内部、两侧外部、端点同点、相邻边界和同点边界的例子,逐一尝试按文档解释。如果某一步不得不引用未写出的口头习惯,就把那条习惯列为待补充内容。修订后重新跑过全部案例,检查是否引入冲突。这个过程类似校对一份说明书:目标不是证明文档完美,而是让已知问题逐项变成明确句子。
纸上练习与独立核对
为一份你正在整理的规则建立七行表格,每行写一组具体输入、对应原文位置和能否确定判断。不要用“应该可以”作为通过标准;应能指出哪句话提供依据。再请另一位读者独立填写,如果答案不同,就比较引用的条款是否含糊。修订时保留日期与变更原因,使后续阅读者知道条件为何变化,而不只是看到一份被悄悄改过的结果表。
把这一点带走
规则完整性可以通过具体案例检验。能够复现,比篇幅长更重要。




