需求建模分析
• 为工作流建模 • 为对象的操作建模
活动图的基本概念
• 使用活动图对系统建模 的步骤
①确定活动图所关注的业务流程。 ②确定该业务流程中的业务对象。 ③确定该工作流的起始状态和终止状态。 ④从该工作流的起始状态开始,说明随着时间发生的动作和活 动,并在活动图中把它们表示成活动状态或动作状态。 ⑤将复杂的动作,或多次出现的动作集合归并到一个活动状态, 并对每个这样的活动状态提供一个可展开的单独的活动图。 ⑥找出连接这些活动和动作状态的转移。 ⑦如果工作流中涉及重要的对象,则也把它们加入到活动图中。
1.描述新增读者用例 2.描述删除读者用例
活动图的基本概念
• 为什么需要活动图? • 用于描述活动流程的图形称为活动图 – 活动指一个状态机中进行的非原子的执行单元,它由 一系列的可执行的原子计算组成,这些原子计算会导 致系统状态的改变或返回一个值。 – 活动图可以算作是状态图一种特殊形式 ,活动图除了 描述对象状态之外,更加突出它的活动
• • • 原子性; 不可中断性: 瞬时性:
•动作状态使用带圆端的方框表示
活动图的基本概念
• 活动状态
– 表示的是可以分割的动作 – 特点是:它可以被分解成其他子活动或动作状态,它能够被中断, 占有有限的时间。 – 活动状态可以理解为一个组合,它的控制流由其他活动状态或动 作状态组成。
• 图形表示同动作状态
活动图的基本概念
• 示例2.2.1 HNS图书馆管理系统中需要提供对用户信息的 修改功能,请使用活动图描述该用例。
录入读者姓名
关键字 分支
从读者名册中查 找读者信息 [else] [查找成功] 编辑读者信息 显示读者记录不 存在
监护条件
保存读者信息
活动图的基本概念
•分叉(fork)和汇合(join)
任务解决
•"新增读者"用例属于读者信息管理中的一个功能,主要用于 在系统中增加新的读者信息,其具体的办理流程是:
– 分支用于描述基于某个条件的可选择路径。 – 一个分支可以有一个进入转移和两个或多个输出转移。 – 在每条输出转移上都有监护条件表达式保护,当且仅当监护条件 表达式为真时,该输出路径才有效。 – 在所有输出转移中,其监护条件不能重叠,而且它们应该覆盖所 有的可能性。 – 分支在图形表示上 用菱形表示
活动图的基本概念
• 活动图中的基本要素包括状态、转移、分支、分叉和汇合、 泳道、对象流等 • 状态(State)
– 状态是指在对象的生命周期中满足某些条件、执行某些活动或等 待某些事件时的一个条件或状况。 – 活动图中的状态包括动作状态和活动状态。
活动图的基本概念
•动作状态
– – 对象的动作状态是活动图中最小单位的构造块,表示原子动 作。 动作状态有三个特性:
– 在UML中使用分叉和汇合表示并行发生的事件流 – 分叉表示把一个单独的控制流分成两个或多个并发的控制流。 一个分叉可以有一个进入转移和两个或多个输出转移,每一 个转移表示一个独立的控制流。 – 汇合表示两个或多个并发控制流的同步发生,一个汇合可以 有两个或多个进入转移和一个输出转移。 – 分叉和汇合应该是平衡的 – 分叉和汇合在图形上都使用同步条来表示,同步条通常用一 条粗的水平线表示
• 转移(transition)
– 转移是两个状态间的一种关系,表示对象将在当前状态中执行动 作,并在某个特定事件发生或某个特定的条件满足时进入后继状 态。 – 在UML中用一条简单的直线表示一个转移
活动图的基本概念
• 示例:打电话
摘机
初始状态
转换
拨号 通话
动作状态
挂机
终止状态
活动图的基本概念
• 分支(Branch)
活动图的基本概念
•示例:描述打电话活动中的并发事件
摘机
拨号
分叉
说
听
挂机
汇合
活动图的基本概念
• 泳道(swimlane)
– “泳道”技术,是将一个活动图中的活动状态进行分组,每一组 表示一个特定的类、人或部门,他们负责完成组内的活动。 – “泳道”技术来描述每个活动是由哪个对象负责完成 – UML中,每个组被称为一个泳道,用一条垂直的实线与邻居分开 – 每个活动都明确属于一个泳道,不可以跨越泳道,而转移则可以 跨越泳道
活动图的基本概念
•示例 2.2.2 用 活动图 描述客 户在商 店中购 买物品 的过程。
活动图的基本概念
• 对象流(object stream)
– 包括依赖关系和对象的应用被称为对象流。对象流是动作和对象 间的关联。 – 对象流可用于对下列关系建模:
• 动作状态对对象的使用 • 动作状态对对象的影响。
需求建模
2.2 活动图
本节目标
• 掌握活动图的基本概念 • 掌握活动图的图形表示 • 熟悉活动图的应用
任务
根据HNS的图书管理系统开发进度,在完成对系统的需 求建模,得到用例模型后,应针对每个用例进行业务分析, 说明其具体的业务流程,现系统分析部指派您完成该项任务, 要求: 用活动图描述系统中已知用例的业务过程:
活动图的基本概念
• 活动图可以用作以下目的:
1. 描述一个操作执行过程中所完成的工作(动作),这是活动 图最常见的用途。 2. 描述对象内部的工作。 3. 显示如何执行一组相关的动作,以及这些动作如何影响它们 周围的对象。 4. 显示用例的实例如何执行动作以及如何改变对象状态。 5. 说明一次业务流程中的人(参与者)和对象是如何工作的。
– 在UML中,使用矩形表示对象 ,对象和动作之间使用带箭头的虚线 连接,带箭头的虚线表示对象流。
活动图的基本概念
•示例2.2.2 用活动图描述客 户在商店中购买物品的过 程。(使用对象流技术描述 购物这个动态过程中系统 内对象的状态变化 )
活动图的基本概念
• 活动图的建模技术
– 活动图用于对系统的动态行为建模,在对一个系统建模时,通常 有两种使用活动图的方式:
活动图的基本概念
• 活动图中还有一类特殊的状态,用于表示活动的开始和结 束,分别称为起始状态(start state)和终止状态(end state)。
– 起始状态表示一个工作流程的开始,用实心圆点来表示 – 终止状态表示了一个活动图的最后和终结状态,