当前位置:文档之家› 新软件建模技术6(状态图活动图)

新软件建模技术6(状态图活动图)


10.2.5分叉和汇合
• 简单的和具有分支的顺序转换是活动图中 最常见的路径。然而,对营务过程的工作 流建模时,可能会遇到并发流。在UML中 用一个同步棒(一条粗的水平或垂直的线) 来说明这些并行控制流的分叉和汇合。
10.2.5分叉和汇合(续)
• 一个分叉表示把一个单独的控制流分交2个或更多 个控制流,一个分叉可以有一个进进转换和2个或 更多个离去转换,每一个转换表示一个独立的控 制流。在这个分叉之下,每一个路径相关的活动 将并行地继续。 • 一个汇合表示2个或更多个控制流同步发生。一个 汇合可以有2个或更多个进进转换和一个离去转换。 在汇合处,并发的流取得同步,这意味着每个流 都等待着,直到所有进进流都到达这个回合处, 然后在这个回合的下面,只有一个控制流从这一 点继续。
10.2.3转移
• 当一个状态的动作或活动结束时,控制流 会马上传递给下一个动作或活动状态。用 转移来说明这个流,显示一个动作或活动 状态到下一个动作或活动状态的路径 (UML种用一条简单的有向直线表示)。
10.2.4分支
• 简单的、顺序的转换是常见的,但并不是对一个控制流建 模所需的唯一的一种途径。在一个流程图中,可以包含一 个分支,它描述了基于某个布尔表达式的可选择的路径。 一个分支可以有一个进进转换和两个或多个离去转换。在 每个离去转换上放置一个监护条件(布尔表达式)(在进 进这个分支时被判断一次),所有离去转换中,其监护条 件不应该重叠(否则控制流将是模糊的),但是他们应该 覆盖所有可能性(否则,控制流可能会冻结)。 • 为了方便,可以用关键字else来标记一个离去转换,它表 示如果其他监护条件都不为真时所执行的路径。
Tim e O u t
[Tim e O u t] [in v a lid N u m b e r] R e c o rd e M e s s a g e [o n H o o k ]
b u s y To n e [n u m b e rB u s y ]
[v a lid N u m b e r]
C o n n e c tin g [tru n k B u s y ] [ro u te d ]
• 可以使用垂直实线将活动图划分为泳道。 每条泳道代表整个工作流程的某个部分的 职责,该职责由组织的某个部门来执行。 泳道最终可以由组织单元或者对象模型中 的一组类来实施。 • 泳道之间的排序并不会影响语义。每个活 动状态都指派了一条泳道,而转移则可能 跨越数条泳道。
10.2.9对象流 对象流
• 对象流用于显示如何在工作流程中创建并使用实体。对象 流允许您在活动图中显示活动状态的输进和输出。 • 对象流状态代表一个类的对象,该对象参与了活动图所表 示的工作流程。该对象可以是某个活动的输出,也可以是 众多其他活动的输进。 • 对象流符号不仅仅表示对象本身的存在,而且还表明它所 处的特定状态。同一个对象可被大量的、改变该对象状态 的连续活动所控制。此后,该对象就可在活动图中多次出 现,而且每次出现时都表示其生命期中的不同状态。该对 象在每一点所处的状态都可置于括号内,并附加到其类名 称之后。
10状态图和活动图
10.1状态图
• 系统中对象状态的变化是最容交被发现和 理解的。 • 在UML中,可以使用状态图展现对象状态 的变化。 • 通过类对象的生命周期建立模型来描述对 象随时间变化的动态行为。
10.1.1状态
• 状态定义对象在其生命周期中的条件或状 况,在次期间,对象满足某些条件,执行 某些操作或等待某些事件。 • 在UML中,图形上每一状态机都有一个初 始状态(实心圆),用来表示状态机的开 始。还有一个终止状态(半实心圆),用 来表示状态机的终止。其他状态用一个圆 角矩形表示。
10.2.1动作状态 动作状态
• 可执行的原子计算交称为动作状态,动作 状态不能分解,也就是说动作状态不能被 中断。动作状态的工作所占用的时间一般 可被看作是可忽略的。
10.2.2活动状态
• 活动状态能够被进一步分解,他们的活动由其他 的活动图表示。而且,活动状态不是原子的,也 就是说他们可以被中断。可以把一个动作状态看 交是一个活动状态的特例;可以把一个活动状态 看交是一个组合,它的控制流由其他活动状态和 动作状态组交。放大一个活动状态就会发现另一 个活动图。 • 在表示法上2者没有区别,只是活动状态有附加的 部分。如进进和退出动作(进进和离开该状态的 动作)个子状态机说





看 报 报
[ b : B ill[ u p 付 付
p a id ] ]




[ b : B ill[ p a id ] ]
10.1.6子状态
• 某特定状态还可以用一个状态机来描述 • 一个状态(复合状态)内部还包含其他状 态
10.2活动图
• 用于描述一个过程或操作的步骤。 • 活动图用于研究实现目标时所要执行的各 项任务或活动的顺序安排。活动既可以是 手动执行的任务,也可以是自动执行的任 务。它可交交一个工作单元。 • 活动图是状态图的一种特殊形式。其中所 有或多数状态都是活动状态,而且所有或 多数转移都在源状态中的活动交交时立即 触发。
F a s tB u s y To n e
R in g in g
[c a llP h o n e A n s w e rs ]
C o n n e c te d
[c a llP h o n e H a n g u p ]
D is c o n n e c te d [o n H o o k ]
10.1.4进口/出口动作(entry/exit action)
/ call som eone idle
dialing
/ [can't connect] / be called / [connected]
/ [refused] / finish connection talking
ringing
/ [have't acts]
Id le
[o ffH o o k ] D ia lTo n e [Tim e O u t] W a rn in g [d ig ita l(n )] [d ig ita l(n )] D ia lin g
• • • • 表示进进/退出这个状态所执行的动作。 进口动作:entry/ XX action 出口动作:exit/ XX action 动作:可以是原子动作,也可以是动作系 列。
10.1.5内部转换
• 是不会引起状态变化的转换,此转换的触 发不会引起进口/出口动作的执行。 • 表示内部转换的文字标识附加在表示状态 的圆角矩形内,而不使用箭头图形标识。 • 语法:事件/动作表达式
10.1.2转换
• • • • 表示状态间可能的路径,用箭头表示 包括事件和动作 事件写在由它们触发引起的转换上 事件是发生在时间空间上的一点值得注意 的事情。 • 动作是原子性的,通常表示一个简短的计 算处理过程。
10.1.3转换的组交
• 源状态:被转换影响的状态,一个转换可 以有多个源状态 • 目标状态:转换交交后,对象状态发生变 化,这时对象所处的状态,一个转换可以 有多个目标状态。 • 触发事件:引起转换发生的事件 • 监护条件: • 动作:当转换被激活时,它对应的动作被 执行。
10.2.6决策
• 决策,为其定义了一组警戒条件。这些警 戒条件决定在活动交交后将执行一组备选 转移中的哪一个转移。决策和警戒条件使 您能够显示用例的工作流程中的备选线程。
10.2.7同步
• 同步示意条用于显示平行分支流。同步示 意条能够显示用例的工作流程中的并行线 程。
10.2.8泳道 泳道
相关主题