Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1642100
  • 博文数量: 268
  • 博客积分: 8708
  • 博客等级: 中将
  • 技术积分: 3764
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-06 15:58
文章分类

全部博文(268)

文章存档

2014年(1)

2013年(15)

2012年(23)

2011年(60)

2010年(51)

2009年(12)

2008年(59)

2007年(47)

分类:

2011-03-29 17:42:45

活动图
UML 活动图记录了单个操作或方法的逻辑,单个用户案例,或者单个业务流程的逻辑。
在很多方面,活动图是结构化开发中流程图和数据流程图 (DFD) 的面向对象等同体,要创建一个 UML 活动图,您需要反复执行下列步骤。

   第一步,定义活动图的范围首先应该定义您要对什么建模。单个用户案例力?一个用户案例的一部分?一个包含多个用户案例的商务流程?一个类的单个方法?一 旦您定义了您所作图的范围,您应该在其顶部,用一个标注添加标签,指明该图的标题和唯一的标示符。您有可能也想要包括该图的时间甚至作者名。
   
     第二步,添加起始和结束点每个活动图有一个起始点和结束点,因此您也要马上添加它们。在 《UML 精粹》(UML Distilled) (参见参考资料),Fowler 和 Scott 认为结束点是可选的。有时候一个活动只是一个简单的结束,如果是这种情况,指明其唯一的转变是到一个结束点也是无害的。这样,当其他人阅读您的图时,他或 她知道您已经考虑了如何退出这些活动。

  第三步,添加活动如果您正对一个用户案例建模,对每个角色(actor)所发出的主要步骤引入 一个活动(该活动可能包括起始步骤,加上对起始步骤系统响应的任何步骤)。如果您正对一个高层的商务流程建模,对每个主要流程引入一个活动,通常为一个用 户案例或用户案例包。最后,如果您正对一个方法建模,那么对此引入一个活动是很常见的。

  第四步,添加活动间的转变我的风格总是应该退出一个活动,即使它是转变到一个结束点。一旦一个活动有多个转变时,您必需对每个转变加以相应标示。

  第五步,添加决策点有时候,您所建模的逻辑需要做出一个决策。有可能是需要检查某些事务或比较某些事务。要注意的是,使用决策点是可选的。

  第六步,找出可并行活动之处当两个活动间没有直接的联系,而且它们都必需在第三个活动开始前结束,那它们是可以并行运行的。
 
    下面的活动图描述了大学新生第一次将如何办理入学的商业逻辑。
  • 实心圆表示活动图的起点,实际上是一个占位符,带边框的实心圆表示终点。
  • 圆角矩形表示执行的过程或活动。在该图中,虽然您会注意到“登记研习班”用例将多次调用“登记研习班”活动,但这些活动却相当紧密地映射到用例。活动可以细致得多,特别在选择记录方法逻辑,而不是高级商业过程时。
  • 菱形表示判定点,虽然在此示例中判定点只有两种可能结果;但即使有更多可能结果,它也同样容易。
  • 箭头表示活动之间的转换,各种活动之间的流动次序。
  • 箭头上的文字表示继续转换所必须满足的条件,总是使用格式“[条件]”来描述。我猜想,在 UML 的将来版本中,我们将会看到使用 UML 约束表示法(如“{condition}”)记录的条件。
  • 粗线条表示可能会并行进行的过程的开始和结束;在大学里成功入学后,必须参加指定的概况介绍,还要至少登记一个研习班并交付一部分的学费。
 
退出活动可能有几种方法,如您看到的“填写入学表”活动的那样。如果正确填写了表格,那么可以继续进行大学的入学手续。但是,如果表格不正确,那么必须获得帮助(可能从注册员获得帮助)以正确填写它们。
中标识的几个用例的逻辑。用例模型没有很好地表达处理的顺序是件好事。例如,虽然 中显示的用例图为您清楚地描述了该系统所执行的功能类型,但是它没有明确地表达这些用例可能发生的顺序。但是, 的活动图做到了这一点。总之,不同模型的优缺点各有不同。
中标识的几个用例的逻辑。用例模型没有很好地表达处理的顺序是件好事。例如,虽然 中显示的用例图为您清楚地描述了该系统所执行的功能类型,但是它没有明确地表达这些用例可能发生的顺序。但是, 的活动图做到了这一点。总之,不同模型的优缺点各有不同。
 泳道
将模型中的活动按照职责组织起来通常很有用。例如,可以将一个商业组织处理的所有活动组织起来。这种分配可以通过将活动组织成用线分开的不同区域来表示。由于它们的外观的缘故,这些区域被称作泳道。 图 7–2 表示了泳道。
 
图 7–2 泳道和对象流
· 2. 对象流
活动图能表示对象的值流和控制流。对象流状态表示活动中输入或输出的对象。对输出值而言,虚线箭头从活动指向对象流状态。对输入值而言,虚线箭头从对象流状态指向活动。如果活动有多个输出值或后继控制流,那么箭头背向分叉符号。同样,多输入箭头指向结合符号。
图 7–2 表示一个活动和对象流状态都被分配到泳道中的活动图
· 活动和其他图

活动图没有表示出计算处理过程中的全部细节内容。它们表示了活动进行的流程但没表示出执行活动的对象。活动图是设计工作的起点。为了完成设计,每个活动必须扩展细分成一个或多个操作,每个操作被指定到具体类。这种分配的结果引出了用于实现活动图的对合协的设计工作。


1、  泳道分为:会员泳道和系统泳道。会员选择商品并加入购物车,系统完成订单生成及其支付完毕。

2、  开始节点:会员添加商品到购物车,点击【订单确认】,开始交于系统处理订单流程

3、  结束节点:商品发送完毕和付款成功,订单处理流程结束

4、  活动状态:产生订单、Check Credit Cart核对信用卡、Check Stock 核对库存量、Deliver Goods 发送商品、Process Credit Cart付款

5、  分叉与汇合:【产生订单】份叉为检查库存量和会员支付金额是否足够,如果不足,取消订单,如过库存量和支付金额足够,发送商品和付款,最后汇合为订单完成。



阅读(2820) | 评论(1) | 转发(0) |
0

上一篇:UML用例建图

下一篇:UML部署图

给主人留下些什么吧!~~

sunjiangang-ok2012-04-23 16:11:22

顶。。。。