第三章 用例和用例图(UML)

合集下载

第3章 用例图

第3章 用例图

为了保证系统正常运行,谁将对系统进行维护管理

(副参与者)? 谁将完成系统数据的录入、导出及修改等工作(主 动参与者)? 谁或什么系统对系统产生的结果感兴趣(被动参与 外部系统进行交互? 在预定的时间,是否有事件自动触发? 系统从何处获取信息?
(2)参与者不一定是人,也可以是一个外部系统, 该系统与本系统相互作用。代表的是一种角色。 (3)在系统的实际运作中,多个不同的用户可能 只对应于一个参与者;同时一个实际用户也可 能对应系统的多个参与者。
例如: 在“房地产开发经营管理系统”中,
所有的购房者作为一个集合,在“房屋销售子 系统”中作为购房合同的签约方出现,多个个 体在系统中担任一个参与者;同时,某个独立 的购房者在“物业管理子系统”中又作为房屋 的业主出现,同一个人在系统中担任了两类参 与者。
主参与者和副参与者
主参与者使用系统的主要功能,是使用系统较 频繁、业务量较大的用户。 副参与者处理系统的辅助功能,它与用例进行 交互的主要目的是为了给其他的参与者提供某些服 务。如管理数据库、通信、系统备份以及其他管理
等系统维护工作。
主动参与者和被动参与者
主动参与者是系统的启动者,负责启动一个或多
借阅图书用例的描述
用例名称 标识符 用例描述 参与者 状态 BorrowBook UC0001 图书管理员代理借阅者办理借阅手续 图书管理员 通过审查
前置条件
后置条件 假设 基本操作流程
图书管理员登录进入系统
如果这个用例成功,在系统中建立并存储借阅记录 图书管理员已经成功地登录到系统 1. 2. 3. 4. 5. 管理员输入借书证信息 系统验证借阅证的有效性 图书管理员输入图书信息 添加新的借阅记录 显示借书后的借阅信息

用例和用例图ppt课件

用例和用例图ppt课件

精选课件
6
参与者间的关系
▪ 在用例图中,使用泛化关系 来描述多个参与者之间的公 共行为。
▪ 示例:
父参与者
子参与者
子参与者
▪ 子参与者继承父参与者的 行为和含义,并能增加自 己特有的行为和含义
▪ 子参与者可以出现在父参
与者能出现的任何位置上
精选课件
7
3.3 用例
定义:
对一组动作序列的描述,系统通过执行这一 组动作序列为参与者产生一个可观察的结果
使用扩展关系 ▪ 扩展用例总是在一个或多个扩展点处来扩展基本用例,或
处于特定条件下, 才扩展基本用例。
基本用例
扩展点 扩展点名称
<<extend>>
扩展用例
精选课件
21
扩展关系
使用情形
a.两个用例相似但不完全相同时 b.当要对多个额外情况逐一建模时,使用扩展关
系,用一个独立的用例替代每个额外的情况 c.如果用例涵盖了所有的情况变化,则该用例将
识别用例
用例识别
识别用例最好的方法就是从分析系统的参与者开 始,考虑每个参与者是如何使用系统的。
➢ 参与者要向系统请求什么功能?
➢ 每个参与者的特定任务是什么?
➢ 参与者需要读取、创建、撤消、修改、或存储 系统的某些信息吗?
➢ 是否任何一个参与者都要向系统通知有关突发 性的、外部的改变?或者必须通知参与者关于 系统中的发生的事件?
会变得十分复杂,应该考虑使用扩展关系
精选课件
22

项目经理
扩展关系
项目管理系统
<<extend>> ( 任务函数)
[ 选择任务选项]
管理任务

UML用例和用例图

UML用例和用例图
负责创建报告卡,并浏览检查报告卡。
25
UML用例图的建模
1. 找出系统中的角色和用例。
2) 如何从系统中识别出用例 基于这些角色及其需求,通过回答前面的问题,可以建立如下用 例: 记录成绩(Record grades) 更新成绩(update grades) 生成报告卡(generate report cards) 检查报告卡(check report cards) 分发报告卡(distribute report cards ) 浏览成绩(view grades)
15
UML用例图组成
3、用例图的关联
2)用例与用例的扩展关联 例如,系统中允许用户对查询的结果进行导出、打印。对于查询而 言,能不能导出、打印查询都是一样的,导出、打印是不可见的。 导入、打印和查询相对独立,而且为查询添加了新行为。因此可以 采用扩展关系来描述:
16
UML用例图组成
3、用例图的关联
19
UML用例图的建模
1. 找出系统中的角色和用例。
创建用例图的第一项任务是找出要建立的系统模型中的角色和用例。 这项任务通常是由与潜在用户会见的系统分析员完成的。在某些情况 下,该任务还包括与顾客面对面的访谈,在访谈中可以提出问题,了 解他们的需求。访谈过程中,可以多做些记录以备后用。在另外一些 情况下,其他人会提供项目的业务需求列表。对于这些业务需求,需 要向提供者提出一些问题以得到所需要的答案。这些需求和得到的答 案将成为创建用例图的笔记。
22
UML用例图的建模
1. 找出系统中的角色和用例。
1) 如何从系统中识别出角色
23
UML用例图的建模
1. 找出系统中的角色和用例。
2) 如何从系统中识别出用例 用例的获取是需求分析阶段的主要任务之一。但对于一个大系统, 要直接列出用例清单常常是十分困难的。这时可先列出角色清单, 再对每个角色列出它的用例,问题就会变得容易得多。在识别出 了角色之后,就可以通过回答下述问题来帮助识别用例:

用例和用例图

用例和用例图

用例
用例(use case)是Ivar Jacobson发明的. 其它的中 文译名有: 用况、用案等. 定义1: 用例是对一个活动者(actor)使用系统的一项 功能时所进行的交互过程的一个文字描述序列. 定义2: 用例是系统、子系统或类和外部参与者交互 的动作序列的说明, 包括可选的动作序列和会出现 异常的动作序列. 用例是代表系统中各个项目相关人员之间就系统的 行为所达成的契约, 软件开发过程是用例驱动的.
实例1:图书馆管理系统中的用例图
1.确定系统涉及的总体信息 图书馆管理系统是对书籍的借阅及读者信息进行统 一管理的系统,具体包括读者的借书、还书,书籍 预订;图书馆管理员的书籍借出处理、书籍归还处 理、预订信息处理;还有系统管理员的系统维护, 包括增加书目、删除或更新书目、增加书籍、减少 书籍、增加读者账户信息、删除或更新读者账户信 息、书籍信息查询、读者信息查询等。
用例图的作用
用例图展示了用例之间以及用例与参与者之间是怎样相互联 系的。用例图对系统、子系统或类的行为进行了可视化,使 用户能够理解如何使用这些元素,并使开发者能够实现这些 元素。 用例图主要用来描述用户的功能需求。UML侧重从最终用户 的角度来理解软件系统的需求,强调谁在使用系统、系统可 以完成哪些功能。用例分析技术已经是一种公认有效的用户 需求获取、分析和描述技术
情况二:假如机票购买者通过呼叫中心,由人工座席 操作订票系统购买机票,那么谁是参与者?
情况三:如果机票购买者通过呼叫中心的自动语音预 定机票而不是通过人工座席,那么谁是参与者?
情况四:如果扩大系统边界,让呼叫中心成为机票预 定系统的一个子系统,并且假设机票购买者将可以 自主选择是通过人工座席还是自动语音登录网站预 订机票,那么谁是参与者?

UML实践----用例图、顺序图、状态图、类图、包图、协作图

UML实践----用例图、顺序图、状态图、类图、包图、协作图

UML实践----用例图、顺序图、状态图、类图、包图、协作图2009-01-20 作者:Randy Miller 来源:网络面向对象的问题的处理的关键是建模问题。

建模可以把在复杂世界的许多重要的细节给抽象出。

许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML的精彩之处。

UML中有九种建模的图标,即:∙用例图∙类图∙对象图∙顺序图∙协作图∙状态图∙活动图∙组件图∙配置图本课程中的某些部分包含了这些图的细节信息的页面链接。

而且每个部分都有一个小问题,测试一下你对这个部分的理解。

为什么UML很重要?为了回答这个问题,我们看看建筑行业。

设计师设计出房子。

施工人员使用这个设计来建造房子。

建筑越复杂,设计师和施工人员之间的交流就越重要。

蓝图就成为了这个行业中的设计师和施工人员的必修课。

写软件就好像建造建筑物一样。

系统越复杂,参与编写与配置软件的人员之间的交流也就越重要。

在过去十年里UML就成为分析师,设计师和程序员之间的“建筑蓝图”。

现在它已经成为了软件行业的一部分了。

UML提供了分析师,设计师和程序员之间在软件设计时的通用语言。

UML被应用到面向对象的问题的解决上。

想要学习UML必须熟悉面向对象解决问题的根本原则――都是从模型的建造开始的。

一个模型model就是根本问题的抽象。

域domain就是问题所处的真实世界。

模型是由对象objects组成的,它们之间通过相互发送消息messages来相互作用的。

记住把一个对象想象成“活着的”。

对象有他们知道的事(属性attributes)和他们可以做的事(行为或操作behaviors or operations)。

对象的属性的值决定了它的状态state。

类Classes是对象的“蓝图”。

一个类在一个单独的实体中封装了属性(数据)和行为(方法或函数)。

对象是类的实例instances。

用例图用例图Use case diagrams描述了作为一个外部的观察者的视角对系统的印象。

uml 基础教程 第三章-用例图

uml 基础教程 第三章-用例图
大多数标点符号,用例的名字是一个能准确描述功能的动 词短语或动词词组。
• 用例具有3个明显的特征: (1)用例表明的是一个类,而不是某个具体的实例 (2)用例必须由某一个参与者触发激活后才能执行,即
每个用例至少应该涉及一个参与者 (3)用例是一个完整的描述
椭圆来表示用例
“回顾”饮料销售机
• 在前面的分析中,我们获得了系统中有3个用例,分别是 “Buy soda(买饮料)”、“Restock(供货)”、“Collect( 收款)”。
• 假设正在对一台饮料机建模,这台饮料销售机允许顾 客选择买一罐饮料或是买一杯饮料。在这种情况下,“Buy Soda”就是一个父用例,“Buy a can of soda”和“Buy a cup of Soda”就是子用例。用例之间的泛化关系建模与类之间 泛化关系建模方法相同,用一条带空心三角形箭头的实线 从子用例指向父用例。
• 要用在用例图上显示某个用例:
➢使用人形符号绘制一个参与者;
➢绘制一个椭圆表示用例,将用例的名称放在椭 圆的中心或椭圆下面的中间位置;
➢使用带箭头或不带箭头的线段来描述参与者和 用例之间的关系。
举例:饮料销售机
• 假设你现在正着手设计一台饮料销售机。为了获得用户 的观点,你会见了许多可能的用户以了解这些用户将如何 与这台机器交互。
“取钱”用例
• 还有一个“取钱”用例,同样也是因为一段时间的流逝, 收款人发起了这个用例。它的前期工作步骤与”供货“一 样,也是打开销售机前端架子。收款人从机器中取出钱, 然后按照”供货“步骤,放回架子锁好机器。 这个用例的前置条件也是时间间隔的流逝,后置条件 是收款人收到了钱。
3.1.1 参与者
• 理想情况下,顾客看到这条消息后会立即选择其它品牌 的饮料。销售机也必须提供给顾客取回原来的钱的选项。 这表示,销售机应给顾客两种选择:让顾客选择另一种饮 料并且给顾客提供这种饮料(如果这种饮料还有存货的话) 或者让顾客选择退钱。

用例图和用例模型

用例图和用例模型

用例图和用例模型用例图用来描述用户的需求,它从用户的角度描述系统的功能,并指出各功能的执行者,强调谁在使用系统,系统为执行者完成哪些功能。

用例图概述UML用例图是软件产品外部特性描述的视图,它从用户的角度而不是开发者的角度来描述软件产品的需求,分析软件产品所需的功能和行为。

用例图主要描述了系统需要实现的功能,而忽略系统是如何实现这些功能的。

用例模型由用例图组成,它是系统用例图的集合,是对系统从宏观角度的确定描述。

用例模型主要用于需求分析阶段,该模型是系统开发者和系统使用者反复讨论的结果,表明了系统开发者和系统使用者对需求规格达成的共识。

首先,用例模型描述了待开发系统的功能需求;其次,用例模型将系统看作黑盒,仅从外部执行者的角度来理解系统;再次,用例模型驱动了需求分析之后各阶段的开发工作,影响到开发工作的各个阶段和UML的各个模型。

一、用例图元素用例图主要用于定义系统的功能需求,它描述了系统的参与者与系统提供的用例之间的关系。

用例图由以下几种元素组成:执行者、用例、关系、用例描述(1)执行者执行者(Actor)是系统的外部用户,它是与系统相关联的人或其它系统,可以是普通用户、外部硬件、其他系统。

在进行用例图绘制时,首先要找出系统的执行者。

一般可以从以下几个方面来考虑怎样找到系统的执行者:????????????谁使用系统的功能。

?????????谁向系统提供必要的信息。

?????????谁从系统获取信息。

?????????谁维护、管理系统工作。

?????????系统需要使用哪些外部资源。

?????????需要与系统交互的其它系统有哪些。

?????????其他对系统产生的结果感兴趣的人或事物。

(2)用例用例是指系统中的一个功能单元,也可以将用例理解为系统功能的分解。

用例的表示方法如下:(3)关系(1)关联????在用例图中,用例和执行者之间的关系用一条连接二者带箭头的连线表示,如图所示,该连线称为关联。

UML中三种常用的图

UML中三种常用的图

1.用例图:用例图是从用户的观点描述系统的功能,它由一组用例、参与者以及他们之间的关系组成他将系统的一个功能描述成一系列事件,这些事件最终对参与者产生有价值的可观测结果参与者(Actor):代表与系统交互的外部实体用例(Use-Case):表示系统能提供的功能,如:登录,查询等关联关系:当参与者与用列进行交互时,用例与参与者之间有关联关系,用一条直线表示这种关系参与者之间可能存在泛化关系,类似的参与者可以用泛化关系组成一般与特殊的层析结构如:经理初次之外,用例之间还存在一定的关系,具体包括包含(include)、扩展(extend)、泛化(Generalization)等3种关系(1)包含关系一个复杂系统中,不同用例之间可能存在一些相同的行为,这时可将这些相同的行为提取出来单独组成一个用例。

当其他用例使用该用例时,用例之间便形成了包含关系包含关系用带关键字<<include>>的虚线来表示,虚线指向被包含的用例注册新用户(2)扩展关系在用例的执行过程中,可能会出现异常行为,也可能在不同的流程分支中选择执行,这时可将异常行为或可选分支抽象成一个单独的扩展用例,它与主用例之间形成扩展关系扩展关系用带关键字<<extend>>的虚线表示,箭头指向被扩展的用例注册(3)泛化关系与参与者之间的泛化关系一样,用例之间的泛化关系是描述用例之间一般与特殊关系的,不同的子用例代表了父用例的不同实现方法。

密码找回2.类图类图描述系统的静态结构,表示系统中的类、类与类之间的关系以及类的属性和操作类用一个矩形方框表示,方框被分成3部分,最上面显示类名,中间部分显示类的属性,最下面显示类的操作类之间的关系包括关联、聚合、泛化、依赖等类型关联(Association)是一种结构定义,表达模型元素间的一种语义联系,它是对具有共同的结构特性、行为特性、关系和语义链的描述,使用一条连接在两个类之间的实线表示,关系的每一端用数字表示关系的重数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 34
用例和用例视图
3.3 用例间的关系
泛化(generaliaztion)关系
例:学校查询系统
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
35
用例和用例视图
3.3 用例间的关系
36
用例和用例视图
3.3 用例间的关系
包含(include)关系
例:学校信息系统中的修改个人信息、删除个人 信息、查看个人信息三个事件
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
37
用例和用例视图
3.3 用例间的关系
扩展(extend)关系
扩展关系是把新行为插入到已有用例(基础用例) 的方法。基础用例提供了一组扩展(Extension Point)点,在这些扩展点中可以添加新的行为, 而扩展用例提供了一组插入片段,这些片段能够 插入到基础用例的扩展点。
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
5
用例和用例视图
3.1 用例
用例的表示:
在UML中,用例表示为一个椭圆。下面是一些 简单的用例。“设置边界”,“评价贸易”,“更 新帐目”等都是用例的实例。用例名一般为动宾 结构 或者主谓结构
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
•把商品移送到销售部门
•销售部门把商品移送到仓库
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 19
用例和用例视图
3.1 用例
仓库管理信息系统的用例模型(续)
•管理员盘点仓库
•供应商提供各种货物
•用户查询销售部门的营销记录
•用户查询仓库中的所有变动记录
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
3.3 用例间的关系
泛化(generaliaztion)关系
泛化代表一般与特殊的关系,在OOA/OOD中用 的比较多。子用例表示父用例的特殊形式,子用 类从父用例出继承行为和属性,还可以添加行为 或覆盖、改变已继承的行为。和类间的泛化关系 比较接近。
表示方式:用带空心箭头的实线表示,由子用例 指向父用例
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
31
用例和用例视图
3.2 脚本
脚本指贯穿用例的一条单一路径,用来显示 用例中的某种特殊情况.(也有些书籍叫情景、场 景、情节、剧本等) 脚本由一个主要脚本和多个次要脚本组成。
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
包含(include)关系
包含(include)关系指一个用例(base use case)的行为包含了另一个用例(inclusion use case)的行为。是一种特殊的依赖关系。 表示方式:用带虚线的实心箭头表示,有基本用 例指向包含用例
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
一个用例可能有多个扩展点,每个扩展点也可以 出现多次。 由基础用例指向扩展用例
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 38
用例和用例视图
3.3 用例间的关系
扩展(extend)关系
例:图书馆信息系统
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
32
用例和用例视图
3.3 用例间的关系
用例除了与参与者发生关联外,还可以与系 统的其他部分存在泛化(generaliaztion)关系、 包含(include)关系、扩展(extend)关系.
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
33
用例和用例视图
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 9
用例和用例视图
3.1 用例
参与者:指系统以外的、需要使用系统或与 系统交互的东西。 参与者的表示形式
《Actor》 《Actor》
LaWUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
用例和用例视图
3.1 用例
案例1: 图书管理系统的用例模型 •图书馆工作人员 •读者 •图书馆管理系统维护人员
图书管理系统的参与者:
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
12
用例和用例视图
3.1 用例
案例1: 图书管理系统的用例模型 •还书 •借书 •预留书籍 •取消预留书籍
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 14
用例和用例视图
3.1 用例
案例1: 图书管理系统的用例模型
工作人员登录查询信息的用例说明:
•书籍归还 •书籍借阅处理 •删除书籍预定信息 •还书超期收取罚金 •核对读者借阅凭证
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 15
辅助事 件 2
用例和用例视图
Note:思考的问题: 1.什么是用例和参与者 2.是不是人才是参与者
3.用例图能描述完成的需求吗?
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
3
用例和用例视图
3.1 用例
从本质上讲,一个用例是用户与计算机之间的 一次典型交互作用。 以字处理软件为例,“将某些正文置为黑体” 和“创建一个索引”便是两个典型的用例。
在UML中,用例被定义成系统执行的一系列动 作,动作执行的结果能被指定执行者察觉到。
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
4
用例和用例视图
3.1 用例
用例的两种定义:
定义一:用例是对一个活动者(actor)使用系统 的一项功能时所进行的交互过程的一个文字描述 序列。 定义二:用例是系统、子系统或类、和外部的参 与者(actor)交互的动作序列说明,包括可选的动 作序列和会出现异常的动作序列。
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
22
用例和用例视图
3.1 用例
仓库管理信息系统的用例 •仓库进货 •仓库退货 •仓库领料 •仓库退料 •商品调拨 •仓库盘点 •库存查询 •业务分析 •仓库历史记录查询 •供应商信息维护 •仓库信息维护 •用户登陆 •用户注销 •退出系统
系统管理员的用例图
删除或更新读者信息
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 18
用例和用例视图
3.1 用例
案例2:仓库管理信息系统的用例模型
通过与系统用户的勾通,需求分析师可以把 该软件系统要实现的功能归结为以下几个问题:
•购买新商品入库
•积压商品退给供应商
用例和用例视图
3.1 用例
参与者:指系统以外的、需要使用系统或与 系统交互的东西。 参与者通过向系统输入或请求输入对某些事 件来触发系统的执行。包含了人、设备、外部系 统等
Note: 1、一个参与者可以执行多个用例 2、一个用例可以有多个参与者使用 3、参与者不是系统的一部分,但是也有继承和泛化关系
39
用例和用例视图
3.3 用例间的关系
泛化关系、包含关系、 扩展关系的使用范围
当处理正常行为的变型,而且只是偶尔描述时, 一般用泛化关系
在包含关系中,如果执行了基本用例,就必须执 行包含用例,如果要重复处理两个或多个用例时, 可以考虑使用包含关系,实现一个基本用例对另 一个用例的引用
7
用例和用例视图
3.1 用例
在识别用例的过程中,通过以下几个问题可 以帮助识别用例: (1)、特定参与者希望系统提供什么功能 (2)、系统是否存储和检索信息,如果是, 这个行为由哪个参与者触发 (3)、当系统改变状态时,通知参与者吗?
(4)、存在影响系统外的事件吗?
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING 8
第三章 用例和用例图
教学目标:了解用例间的各种关系,熟悉用 例描述 教学要求:能建立简单用例
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
1
用例
包含关系
泛化关系:表明一般和特 殊的关系 用例和用例视图
关联关系
参与者
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
20
用例和用例视图
3.1 用例
仓库管理信息系统的用例模型(续)
操作的分类:
•仓库信息的管理 •仓库信息的维护 •各种信息的分析查询
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
21
用例和用例视图
3.1 用例
仓库管理信息系统的用例模型
参与者:
•操作员 •管理员 •供应商 •商品领料人 •商品退料人
23
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
用例和用例视图
3.1 用例
仓库管理信息系统的用例图
退出系统
业务分析
24
WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING
相关文档
最新文档