零雨其蒙's Blog

做优秀的程序员
随笔 - 59, 文章 - 13, 评论 - 58, 引用 - 0
数据加载中……

零雨其蒙《UML和模式应用》学习笔记(八)

(零雨其蒙原创 转载请注明)
2007
3 11 日星期日

 

第五部分 细化迭代 3 ——中级主题

28 UML 活动图及其建模

UML 活动图的基本作用

    一个 UML 活动图表示一个过程中的多个顺序活动和并行活动。这些活动图有助于业务过程工作流数据流复杂算法进行建模( P346 )。

    从上面这段话的描述我们可以得知,活动图可以替代面向过程的分析与设计中的业务流程图数据流程图以及算法图等。

 

UML 活动图的基本表示法

基本表示法包括如下符号:

动作( action

也就是它完成某些事物

分区( partition

表示参加过程的不同参与者,这样可以使得系统责任更加清晰,谁负责什么工作( action ),而且显得不是那么乱糟糟的一片,让人看得想吐!

分叉点( fork

一个输入转换,以及多个输出的并行转换或对象流,就是一分多

连接点( join

多个输入转换或对象流,一个输出变换,就是多合一

对象节点( object node

由动作产生或使用的对象。这允许我们对数据流或对象流建模,也就是说在表示数据流图时可以使用它。

当某个活动需要在另外一个活动图中展开时,如何表示?

可以使用耙子( rake )符号来表示。使用耙子的作用就好像在画业务流程图或数据流程图时要画不同层次( level )的图一样,需要一层一层细化,我觉得使用 rake 是个更清晰的选择,比传统的数据流图等要好。因为耙子这个符号很好!

如何表示条件分支?

使用决策( decision )符号和合并( merge )符号

以上例子见 P348-350

准则

l         对于复杂的业务过程使用活动图,而简单的使用用例文本就好了。

l         尽量保持在同一张图中所有动作节点的抽象水平一致。也就是说要表示同一程度的颗粒度。

 

 

29 UML 状态机图和建模

UML 状态图的作用

    状态图是动态视图,用来表示状态。 UML 状态机图( state machine diagram )描述了某个对象的状态和感兴趣的事件以及对象响应该事件的行为。

事件 event

   指一件值得注意的事情的发生。

状态 state

   指对象在事件发生之间某时刻所处的情形。

   我觉得具体而言对象状态变化包括:属性值改变,关联关系改变和生命周期的改变(创建、激活、钝化和销毁)

转换 transition

   是两个状态之间的关系。它表明当某事件发生时,对象从先前的状态转换到后来的状态。

 

 

何时使用 UML 状态机图

  

准则

     考虑为具有复杂行为的状态依赖对象( 指响应行为依赖于当前状态,比如按下电话某个键,状态的变化依赖于电话机处于何种状态,接听还是放在原位)而不是状态无关对象建模。

 

 

事务处理等复杂的反应式对象和页面( UI Web ,窗口)导航(一系列的流程,比如先按 btnA ,然后 edtB enble 属性变为 true 等;还有就是 Web 页面导航的例子,如 A 页面通过 URL 导航到 B 页面,然后点击 B 页面上的按钮转到 C 页面),都可以用状态图来进行可视化表示。

 

posted on 2007-03-20 14:53 零雨其蒙 阅读(474) 评论(1)  编辑  收藏

评论

# re: 零雨其蒙《UML和模式应用》学习笔记(八)  回复  更多评论   

非常不错哦,能否把你的作品发给我,
我平时不能上网,只能离线学习了。

我的邮箱:mail863@163.com
2009-03-07 13:09 | 郭涛

只有注册用户登录后才能发表评论。


网站导航: