02UML基础与应用第二章

合集下载

第2章 统一建模语言UML

第2章 统一建模语言UML

UML 2.0
1997年对象管理组织(Object Management Group
,OMG)采纳UML作为其标准建模语言,并通过严 格有序的OMG过程对其进行修订和维护。 1999,UML 1.3,相对稳定成熟阶段 2001-05, UML 1.4 2003年6月宣告完成了UML 2.0 : Infrastructure(底层结构) Superstructure(上层结构) OCL(对象约束语言) Diagram Interchange(图形交换)
关联类
关联类用来记录与关联(关系)有关的信息,提
供与关联有关的操作。
+Employee +Employer
Person
* 1
Company
Employment +Contract
(2)包图
包图在UML中可以看作是类图的一部分。
包用来对一组元素进行划分,是对复杂模型的一
种分而治之的层次划分。 常用来描述一个复杂系统逻辑上的子系统划分。 包图主要由包和包之间的关系组成。 包的划分应遵循高内聚、低耦合的原则,一个包 中可以包含多个类和子包。 包图的图元: 包、依赖关系、导入关系、合并关系
UML 2.0的建模机制
类图 (Class Diagram) 包图 (Package Diagram) 对象图 (Object Diagram) 结构建模 (Structure) 构件图 (Component Diagram)
组合结构图 (Composite Structure Diagram)
UML 2.0 建模机制
* 1
OrderItem
Order
泛化(继承)关系
Person

[UML系统分析与设计教程]第2章PPT课件

[UML系统分析与设计教程]第2章PPT课件
OOSE方法的一个很大贡献是引入了用例的概念。
OOSE过程可以分为3个阶段:
分析阶段
构造阶段
测试阶段
2021/3/12
16
Fusion 方法
Fusion方法受到了下面的方法或技术影响: OMT
Fusion方法中的对象模型与OMT方法中的对象模型非常相似。Fusion 方法中的操作模型类似于OMT方法中的功能模型。
OOD部分为上述五层添加了4个不同的组件:
人机交互组件(Human Interaction Component)。 问题域组件(Problem Domain Component)。 任务管理组件(Task Management Component)。 数据管理组件(Data Management Component)。
宏过程包括下述5个活动: (1)概念化(Conceptualization):在这个活动中,建立核心需求。 (2)分析(Analysis):在这个活动中,为所期望的行为建立模型。 (3)设计(Design):在这个活动中,建立体系结构。 (4)进化(Evolution):在这个活动中,形成实现。 (5)维护(Maintenance):在这个活动中,管理软件的交付使用。
2021/3/12
4
OOA与OOD的连接
. 主题层
类-对象层 结构层
属性层 服务层
人机 问题 任务 数据
交互 域组 管理 管理
组件

组件 组件
2021/3/12
5
OOA的活动
OOA的活动
识别出问题域中的类和对象 确定结构 确定主题 定义属性 定义服务 准备文档
2021/3/12
6
OOD的活动
2021/3/12

UML基础及Rose建模实用教程课后习题及答案

UML基础及Rose建模实用教程课后习题及答案

UML根底与Rose建模实用教程课后习题及答案第1章面向对象概述1. 填空题〔1〕软件对象可以这样定义:所谓软件对象,是一种将状态和行为有机结合起来形成的软件构造模型,它可以用来描述现实世界中的一个对象。

〔2〕类是具有一样属性和操作的一组对象的组合,即抽象模型中的“类〞描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。

〔3〕面向对象程序的根本特征是抽象、封装、继承和多态。

2. 选择题〔1〕可以认为对象是ABC。

〔A〕某种可被人感知的事物〔B〕思维、感觉或动作所能作用的物质〔C〕思维、感觉或动作所能作用的精神体〔D〕不能被思维、感觉或动作作用的精神体〔2〕类的定义要包含以下的要素ABD。

〔A〕类的属性〔B〕类所要执行的操作〔C〕类的编号〔D〕属性的类型〔3〕面向对象程序的根本特征不包括B。

〔A〕封装〔B〕多样性〔C〕抽象〔D〕继承〔4〕以下关于类与对象的关系的说法不正确的选项是A。

〔A〕有些对象是不能被抽象成类的〔B〕类给出了属于该类的全部对象的抽象定义〔C〕类是对象集合的再抽象〔D〕类用来在存中开辟一个数据区,并存储新对象的属性3. 简答题〔1〕什么是对象?试着列举三个现实中的例子。

对象是某种可被人感知的事物,也可是思维、感觉或动作所能作用的物质或精神体,例如桌子.椅子.汽车等。

〔2〕什么是抽象?抽象是对现实世界信息的简化。

能够通过抽象将需要的事物进展简化、将事物特征进展概括、将抽象模型组织为层次构造、使软件重用得以保证。

〔3〕什么是封装?它有哪些好处?封装就是把对象的状态和行为绑在一起的机制,使对象形成一个独立的整体,并且尽可能地隐藏对象的部细节。

封装有两个含义;一是把对象的全部状态和行为结合在一起,形成一个不可分割的整体。

对象的私有属性只能够由对象的行为来修改和读取。

二是尽可能隐蔽对象的部细节,与外界的联系只能够通过外部接口来实现。

通过公共访问控制器来限制对象的私有属性,使用封装具有以下好处:防止对封装数据的未授权访问、帮助保护数据的完整性、当类的私有方法必须修改时,限制了在整个应用程序的影响。

统一建模语言UML2建模基础共20页

统一建模语言UML2建模基础共20页
40、人类法律,事物有规律,这是不 容忽视 的。— —爱献 生
谢谢!
36、自己的鞋子,自己知道紧在哪里。——西班牙
37、我们唯一不会改正的缺点是软弱。——拉罗什福科
ห้องสมุดไป่ตู้
xiexie! 38、我这个人走得很慢,但是我从不后退。——亚伯拉罕·林肯
39、勿问成功的秘诀为何,且尽全力做你应该做的事吧。——美华纳
40、学而不思则罔,思而不学则殆。——孔子
统一建模语言UML2建模基础
36、如果我们国家的法律中只有某种 神灵, 而不是 殚精竭 虑将神 灵揉进 宪法, 总体上 来说, 法律就 会更好 。—— 马克·吐 温 37、纲纪废弃之日,便是暴政兴起之 时。— —威·皮 物特
38、若是没有公众舆论的支持,法律 是丝毫 没有力 量的。 ——菲 力普斯 39、一个判例造出另一个判例,它们 迅速累 聚,进 而变成 法律。 ——朱 尼厄斯

《UML和模式应用》课件

《UML和模式应用》课件

要点二
详细描述
部署图展示了系统在物理环境中的部署情况,包括节点、 节点间的通信和部署位置等。它通常用于分析和设计系统 的部署方案,特别是在处理分布式系统和云计算方面非常 有用。部署图有助于理解系统的部署和拓扑结构。
03
模式基础
设计模式定义
01
设计模式是一种针对特定问题的解决方案,它描述 了在软件设计中常见问题的最佳实践。
状态图
总结词
状态图是UML中用于描述对象状态转换的图。
详细描述
状态图展示了对象的状态转换和事件响应。它通常用于分析系统的行为和状态转换,特 别是在处理复杂的状态逻辑和行为方面非常有用。状态图有助于理解系统的状态和行为

活动图
总结词
活动图是UML中用于描述系统中的工作 流和过程的图。
VS
详细描述
活动图展示了系统中的工作流和过程,包 括任务的执行、条件分支和并发行为等。 它通常用于分析和设计系统的工作流程, 特别是在处理复杂的工作流和过程方面非 常有用。活动图有助于理解系统的流程和 逻辑。
适用场景
当需要在运行时动态地给对象添加职 责时,可以使用装饰器模式。例如, 文件读写、网络请求等。
详细描述
装饰器模式是一种结构型模式,它动 态地给一个对象增加一些额外的职责 ,就增加功能来说,装饰器模式相比 生成子类更为灵活。
实现方式
常见的装饰器模式实现方式有装饰器 接口、装饰器类和装饰器适配器等。
UML和模式应用
目录
• UML基础 • UML图类型 • 模式基础 • 常见设计模式 • UML与模式应用实例
01
UML基础
UML定义
总结词
UML是一种用于对软件密集系统进行可视化建模的统一建模 语言。

第2章用例和用例图

第2章用例和用例图

成绩管理
UML用例图组成( UML用例图组成(续) 用例图组成
饮料销售机
UML用例图组成( UML用例图组成(续) 用例图组成
用例与用例的扩展关联用来表示通过对已有用例增加步 用例与用例的扩展关联用来表示通过对已有用例增加步 扩展关联用来表示 骤创建一个新的用例,即对原有的用例进行了扩展。 骤创建一个新的用例 即对原有的用例进行了扩展。扩展只能 即对原有的用例进行了扩展 发生在基用例的序列中的某个具体指定点上。这个点叫做扩 发生在基用例的序列中的某个具体指定点上。 展点.在UML图中,使用带虚线箭头表示,并在线上标有构造 展点 在UML图中,使用带虚线箭头表示, 图中 带虚线箭头表示 如下图所示: 型<<extend>> 。如下图所示:
UML用例图组成( UML用例图组成(续) 用例图组成
包含关联与扩展关联的区别: 包含关联与扩展关联的区别:
存在包含关联的两个用例,在执行基本用例时 一定会执 存在包含关联的两个用例 在执行基本用例时,一定会执 在执行基本用例时 行包含用例;存在扩展关联的两个用例,在执行基本用例时 在执行基本用例时, 行包含用例;存在扩展关联的两个用例 在执行基本用例时 可以执行,也可以不执行扩展部分 可以执行 也可以不执行扩展部分. 也可以不执行扩展部分
UML用例图的作用( UML用例图的作用(续) 用例图的作用
• 用例图的主要作用: 用例图的主要作用:
– 用来描述待开发系统的功能需求和系统使用场景 – 作为开发过程的基础,驱动各阶段的开发工作 作为开发过程的基础, – 用于验证与确认系统需求
画好用例图是由软件需求到最终实现的第一步. 画好用例图是由软件需求到最终实现的第一步.
UML用例图的建模( UML用例图的建模(续) 用例图的建模

第2章 面向对象技术与UML-郭


在结构化方法中,现实世界被映射为功能(函数)的集合。
结构化方法的特点: 结构化程序设计:程序 = 算法 + 数据结构 从算法的角度进行建模,大量精力都集中在控制流程和 算法的分解上(功能分解)。 缺点:需求变动、维护困难
2.1 面向对象技术概述

面向对象方 法的引入: 软件复杂性 的增长, 使软件开发 越来越困难。 面向对象的 方法按照人 类的自然思 维的方式, 面对客观世 界建立软件 模型。
对象的标识(名字)

每一个对象都有一个唯一的标识, 即使其状态有可 能与其它对象一样。
no1 no2 no3
对象的状态(数据属性)

一个对象的状态是它反映于现实世界的一系列 属性:

基本描述 载客人数 它与其它对象的关系 任一时刻的历史状态
飞机类型 飞机驾驶员 所属的航空公司
可能的状态: 停泊 班机 747 飞行 着陆
继承的描述
子类可以继承父类的全部属性与操作,并 可以添加或重新定义所继承的方法。 如果是重新定义,称为覆盖。
注意:覆盖和重载是不同的。

覆盖的例子

重载的例子
public class A{ String name; public String getValues(){ return “Name is”+name; } } public class B extends A{ String address; public String getValues(){ return “address is”+address; } }
6. 多态性


定义:同一操作作用于不同的对象,可以有 不同的解释,产生不同的执行结果。 例子: 动物叫

第2章 用例图


16
2.1.4 关系
UML建模与分析
包含include
箭头方向由基本用例指向被包含用例; 两个以上用例有共同功能,可分解到单独用例,形成包含依 赖; 执行基用例时,每次都必须调用被包含用例,被包含用例也 可单独执行;
17
2.1.4 关系
UML建模与分析
包含include
一个用例功能过多需分解成小用例,构成包含依赖;
42
2.5 小结
UML建模与分析
了解用例图的组成 能够绘制用例图 理解如何确定用例、活动者
43
2.6 实例
UML建模与分析
有一个爱书之人,家里各类书籍已过千册,而平时又 时常有朋友外借,因此需要一个个人图书管理系统。 该系统应该能够将书籍的基本信息按计算机类、非计 算机类分别建档,实现按书名、作者、类别、出版社 等关键字的组合查询功能。在使用该系统录入新书籍 时系统会自动按规则生成书号,可以修改信息,但不 能够删除记录。该系统还应该能够对书籍的外借情况 进行记录,可对外界情况列表打印。另外,还希望能 够对书籍的购买金额、册数按特定时限进行统计。
ReturnWithFine
40
(2)图书馆管理员处理借书、 还书的用例图
Login BorrowBook
UML建模与分析
<<include>> <<include>> ProcessOverTime DisplayLoans <<include>> Librarian ReturnBook <<include>> QueryLoanInfo <<include>>

OOAD_Lec02_建模工具UML2

Object Oriented Analysis & Design
面向对象分析与设计
Lecture_02 建模工具UML
3、活动图…
建模元素说明:1)开始、结束2)两根直线,划分了三个泳道
3)活动节点4)弧,迁移线5)对象
6)同步棒:合并、分岔
7)分支:条件
判断
⏹活动图的开始、结束、对象 ⏹活动节点
⏹一个活动是一个过程中进行的非原子的执行单元 ⏹活动的执行最终延伸为一些独立动作(Action )的执行
⏹分支
⏹一个分支可以有一个进入流和多个离去流 ⏹在每个离去流上必须设置一个监护条件 ⏹条件放在方括号里
⏹条件不能重叠,以免二义性
⏹可以有 [else] 分支

两个控制路径可以重新合并,无需监护条件
3.2 活动图基本建模元素
⏹泳道
⏹将一个活动图中的活动分组,每
一组表示一个特定的类别、人或
部门,他们负责完成组内的活动
⏹每个组被称为一个泳道
⏹用一条垂直的实线把它们分开
⏹每个活动严格地属于一个泳道
⏹转移可以跨越泳道
⏹同步棒可以跨越泳道
⏹泳道是包的一种
⏹请大家回去练习画出右边的图
活动图小结
⏹活动图
⏹描述一项任务执行过程中所完成的工作(动作)
⏹描述对象内部的工作
⏹显示如何执行一组相关的动作,以及这些动作如何影响它们周围的对象
⏹显示用例的实例如何执行动作以及如何改变对象状态
⏹说明一次业务流程中的人(参与者)和对象是如何工作的
⏹活动图与用例模型互为补充,主要用于需求分析阶段⏹活动图中的基本要素包括
活动(动作)、转移、分支、分叉和汇合、泳道、对象流等
本讲结束。

软件工程第2章UML与RUP统一过程

(1)简化软件开发过程 • 面向对象方法不仅可以用来进行需求分析,还可以支持软件中设
计、实现和测试 • 这就构成了一种覆盖软件开发主要阶段的广谱软件开发方法学 • 软件开发过程中的不同角色(需求工程师、软件设计师、编程人
员、测试工程师、项目经理等)在软件开发及管理过程中使用统 一的概念进行交流和协作 • 两个相邻阶段间软件(中间)制品之间的衔接、转换也变得相对 容易。 • 面向对象的概念体系简单、直观、自然,缓解了一直困扰大型软 件项目组交流不畅的难题。
19
面向对象方法的优势
(3)改善软件结构。
• 面向对象方法通过对属性和操作的封装实现了软 件工程倡导的信息隐藏原则。
• 在面向对象的软件结构中,每个类均拥有完成其 操作所必需的数据
• 这些数据通过访问权限控制关键字private隐藏于 类的内部,或通过protected关键字隐藏于类及其 子类的内部
(Course Offering)。 • 一门具体的“课程”对象是由一到多个“课程设置”对象组成。
2020/8/20
国防科技大学计算机学院
13
面向对象的概念
• 多态。
多态是指,在父类及其子类中,对外接口的定义 形式相同,却可以对应多种接口的实现形态。
在面向对象软件实际运行时,对接口实现的查找 从对象所属的最具体的子类开始,沿继承结构逐 级向上,直至发现为止。
• 面向对象的思想最初起源于1960年代中期的仿真程 序设计语言Simula67。
• 1980年代初出现的Smalltalk语言及其程序设计环境 对面向对象技术的推广应用起到了显著的促进作用。
• 1990年代中后期诞生并迅速成熟的UML(统一建模 语言,Unified Modeling Language)是面向对象技术 发展的一个重要里程碑。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档