#用例分析#之备选流 alternative flow-这是用例方法中最混淆之处,无论中文还是英文,都出现许多不同的理解和不同的做法。问题在于备选流字面意思模糊,可以是可选的不同做法,也可以说异常,也可以是导致失败的情况。可叹的是,其原定义是清楚的:无法达成用例目标的情况。但它起了个不恰当的名字
也许是因为这个混乱,导致出现了“主成功场景”替代基本流,“扩展场景”来替代备选流的做法。这与用例的优雅的初衷其实是不相符的。用例之优雅在于对场景的抽象,而不是直接铺陈场景,再结合用例之间的关系来阐述真实世界,达到的效果是能用较少的文字表达丰富的内容。但这对骚年们也许要求太高了。
那么有什么办法来避免这个字面意思混乱呢,有两个办法:1,在用例规约中再加一个属性:异常流 ExceptionFlow,备选流的定义修改为不同于基本流但仍达成用例目标的事件流;2,将备选流改名为异常流。 办法1将导致两种情况:1,关联事务描述在两处;2,不密切关联事务放在同一个用例中,当用例颗粒度不敏感时,问题不大,但其实并不利。所以我推荐办法2。