需求用例分析之九:序列图

作者:张克强    作者微博:张克强-敏捷307

序列图,也称时序图、顺序图,英文名Sequence Diagram。在雅各布森用例分析方法中鼓励使用各类图形来表达,但恰恰没有明确提到序列图。而科伯恩用例分析方法以结构化/半结构化文本用例为中心,强调基于目标的文本格式,对UML各类图所提甚少。

RUPOOAD中,UML序列图的最基本定位是用于识别类与类之间的信息传递,是识别类的方法的最佳场合。它是在得到用例之后初步识别了类之后发挥巨大作用的。序列图是交互图(interaction diagram)的一种,能够转换成协助图(Communication Diagram)。利用序列图的设置,能够精确定义类及类的方法,进而生成源代码。

在潘加宇的《软件方法》[7]比较了活动图和序列图,推崇使用序列图来表达业务,称之为业务序列图,然后基于业务序列图来识别系统用例(区别于业务用例,即是本文所称用例)。可以发现当处理多个业务角色时,序列图确实拥有与活动图相当的表现力。

那么,序列图如果用在用例规约中,将是什么景象? 

需求用例分析之九:序列图_第1张图片

图片来源于网络

可以看到序列图表达的内容与基本流文字是一样的,更加直观,但显然的需要更多时间,而且并不能充分说明交互细节,毕竟在图片上不适宜打上密密麻麻的字。更关键的上述这幅图中有“银行主机”,这就超出了单个用例的范畴。

总的来说,序列图不是用例的标准配置,在用例规约中使用序列图可以更好的呈现事件流,但其将花费更多时间,如果在单个用例内再考虑其它角色和其它用例,那么所费时间更多,而且有可能与前期业务分析重复,也有可能与后续设计分析重复。

在编写有效用例一书中,明确指出在用例规约中画序列图是不合适的。


更多相关文章

需求用例分析之一:异常流

需求用例分析之二:级别设置
需求用例分析之三:补充规约

需求用例分析之四:业务规则

需求用例分析之五:业务用例之Rational系

需求用例分析之六:业务用例之科伯恩系

需求用例分析之七:业务用例之小结

需求用例分析之八:用例颗粒度

你可能感兴趣的:(用例,序列图)