专家指导 如何在UML序列图中表示分支

开发 架构
在学习UML的过程中,你可能会遇到UML序列图方面的问题,你对UML序列图是否熟悉,这里就向大家介绍一下如何用在UML序列图中表示分支,相信通过本文的介绍你对UML序列图有新的认识。

本节向大家介绍一下如何用在UML序列图中表示分支,引起分支的原因主要有两个,在这里和大家分享一下,希望对你在以后的学习过程中能有所帮助。下面就让我们一起来看一下详细介绍吧。

如何用在UML序列图中表示分支

考虑引起分支的原因:

1。异常处理,比如接收到错误的消息,网络断开等

2。复杂的业务流程,比如在订单处理程序中,对于vip客户和普通用户可能分别使用不同的数据,而最后还要统一进入计价和发货流程

不同的情况下,分支的流程可能很大或很小,很难有完善的办法来满足所有的情况。

原始的方法是在UML序列图中放弃分支,因为引起分支最主要的原因是异常情况,而异常情况的处理一般都很简单,或者进入标准的处理办法,这样就可以在发生异常的地方加个小小的注释,这样既不影响整体流程,又保证了不丢失细节信息。然而难于处理的是正常的分支,都要有很复杂的处理,

UML2.0提到了两种方法来临时解决分支的概念,一种是在顺序图中产生分支的地方插入一个引用,对于每个分支,分别用一个单独的序列图来表示,这种方法要求分支后不再聚合,并且各分支间没有太多具体关联。这种方法类似于函数的重用,比如某个分支在很多用例中被用到,可以在各个序列图中引用它而避免重复。代价则是UML序列图变得多而繁杂,让人看起来不能够一目了然。

对于非常复杂的业务来说,可以采用流程图和顺序图相互辅助的方法来表达完整的信息,顺序图侧重组件交互的时间关系,活动图侧重组件交互的空间关系,流程图侧重控制流程的时间关系,我一直觉得UML中的活动图和状态图过于细节,没办法和顺序图很好的结合(也许是功力不够:))。

再进一步说,在实现真正的MDA之前,采用UML来描述的目的是为了更好的理解业务和实现,而业务和实现是一个立体的景象,空间和时间都是它的一个方面,因此用静态的顺序图或者流程图没办法同时表示它的时间和空间。我所想到的一个办法是:在组件图上用动画效果演示交互流程,就像围棋打谱程序中对于参考图的处理。期待这样的工具早点出来。

【编辑推荐】

  1. 养成良好的UML序列图绘制习惯
  2. 利用UML序列图设计Java应用程序
  3. 如何绘制UML用例图
  4. UML中各种UML图形的建立步骤简明介绍
  5. UML序列图详解

 

 

责任编辑:佚名 来源: csdn.net
相关推荐

2010-07-07 17:36:35

UML序列图

2010-07-07 17:14:44

UML序列图

2010-06-28 17:26:02

UML类图关系

2010-06-13 12:40:44

UML序列图

2010-07-07 17:05:26

UML序列图

2010-07-07 17:23:10

UML序列图

2010-07-05 11:01:05

常用UML图

2010-06-11 14:35:18

UML序列图

2010-07-12 11:36:32

UML活动图

2010-07-01 16:38:28

UML序列图

2010-07-09 17:04:12

UML类图

2010-07-07 13:54:00

UML用例图

2010-07-01 12:21:35

UML类图关系

2010-07-06 16:11:52

UML序列图

2010-06-29 14:23:38

UML建模分析步骤

2010-06-08 15:44:18

UML建模工具

2010-07-08 10:33:34

UML接口

2010-06-17 18:31:12

绘制UML序列图

2009-04-23 14:21:29

UML序列图绘制

2010-07-07 14:33:11

UML序列图
点赞
收藏

51CTO技术栈公众号