UML面向对象建模 静态模型

昆明理工大学信息工程与自动化学院学生实验报告
( 2015 — 2016 学年第一学期)
课程名称:面向对象建模技术开课实验室:信自楼442 2015年11月24日年级、专业、班计科122班学号201210405204 姓名邹华宇成绩
上机项目名称实验二静态模型指导教师付晓东
教师评语该同学是否了解实验原理: A.了解□ B.基本了解□ C.不了解□
该同学的实验能力: A.强□ B.中等□ C.差□
该同学的实验是否达到要求: A.达到□ B.基本达到□ C.未达到□
实验报告是否规范: A.规范□ B.基本规范□ C.不规范□
实验过程是否详细记录: A.详细□ B.一般□ C.没有□
注:5个A 为优 4个A为良 3个A 为及格其余为不及格。

教师签名:
年月日
一、实验目的
1、掌握 UML 的静态建模的方法。

2、实践用 UML 建立静态模型。

二、实验原理
对象类静态结构模型描述了系统的体系结构,包括构成系统的类和对象、它们的属性和操作,以及这些对象类之间的联系。

实质上是定义系统“对谁做”的问题。

对象是一种人的认知概念,对应于现实世界和机器世界的各种元素。

软件系统也是由对象构成的。

要理解对象世界,首先要进行对象分析,建立对象类模型。

类是对象的抽象,认识对象的类别是人类的本领。

类之间的各种关系都可以在对象世界里找到对应物。

UML的对象类模型把类分解为属性和操作,属性也可以按照这种方法再进行分解,这是解决问题的一种基本原理。

操作与系统的改变有关,系统的改变被分解为对象的变化,而类的操作代表与之相关的对象改变的计算过程。

在建立对象类静态结构模型时,主要是将对象间的关系(如继承、聚集等)标注在关联线上,使对象间的关联关系更加明了。

根据已建立的用例图和客户业
务要求,采用CRC卡片(如下图所示)的方法来确定对象类及其属性和操作。

通过检查类的定义,分析问题的需求和应用领域知识来完善和确定类的属性。

根据系统功能要求和系统设计需求来完善和确定类的操作。

说明:CRC 卡片分成三部分:类名描述、类的责任(属性和操作)描述和类的协作者(为完成该责任而提供信息的其它相关的类)描述,其目的是开发一个有组织的类表示法。

一个复杂的大系统有很多类图,类图之间关联又构成一个复杂网络。

为了CRC 卡片的格式完整、清晰地描述对象类静态结构模型,常用包图(子系统)来描述一个系统的体系结构。

即系统由多个包组成,包还可以含有子包,包之间可以有关系,形成层次结构。

叶结点的包必须由类图来描述。

包是UML的模型元素之一,它可以用来封装一组通过相互协作来完成某一特定功能的类,对外仅展示一组接口,代表包所接受的消息。

作为模型组织的分组机制,包仅在建模时有用,它无需转化成可执行系统。

建立系统的对象类静态模型步骤如下:
1.寻找确定对象类。

根据客户业务和系统实现需要,采用CRC卡方式建立
对象类。

例:销售合同:
●类名:销售合同
●类的编号:040101
●类的类型:该类创建的对象为持久对象,存储在服务器的数据库中,可
以共享
●功能:负责建立销售合同的基本信息并对这些信息进行处理,包括添加、
删除、查询操作等,进行添加和删除操作时要按合同编号进行索引处理
●属性:合同编号、甲方、乙方、商品名称、规格、单位、数量等
●操作:添加新合同()、查询()、删除合同()、修改合同()、履约率()等。

2.定义类的接口。

为了系统的安全性和类之间的独立性,为一些通用的类
建立接口。

例:建立采购合同接口:
●接口类名:建立采购合同
●接口类名编号:04010101
●接口类型:抽象类
●功能:为合同管理人员提供建立新采购合同信息管理的操作
●抽象操作:创建新采购合同()、录入采购合同()、修改采购合同()等
3.定义类之间的关系。

为满足系统功能要求和优化系统设计,定义类之间
的关系。

4.建立对象类图。

将确定的类、接口及类之间的关系用图标符号描述,建
立对象类图:
1)连线建立网络图。

根据 CRC 卡片,画出有关联的类
2)连接线命名。

定义连线的主题
3)确定关联基数。

连线两端之间消息传递的数目
5.建立系统包图。

对一个复杂的大系统用简单的包(子系统)的形式描述
其系统体系结构。

三、所用仪器、材料
个人计算机一台、SyBase Power Designer15.1软件。

四、实验过程、内容
1、实验题目
用下面需求描述建立一个汽车租赁信息管理系统的类图。

B1:顾客(分为会员和非会员)浏览车型、车辆索引。

B2:会员预约车辆/车型,当这辆车可用时或当有这个车型的汽车时,会员得到通知。

B3:非会员预约车辆/车型,当他缴纳了定金后,这辆车可用时或有这个车型的汽车时,顾客得到通知。

B4:顾客取消预约。

顾客可以随时取消未结束的预约。

B5:顾客到店提车,助手发车。

B6:顾客归还汽车。

2、实验过程
1) 分别为B1、B2、…、B6 建立对象类图。

2) 建立系统的对象类图。

B1:
B3
系统的对象类图
五、实验结果分析、经验总结和结论
本次实验主要进行系统静态建模,UML的静态建模机制包括:用例图、类图、对象图、包、构件图和配置图。

其中类图描述类和类之间的静态关系。

与数据模型不同,它不仅显示了信息的结构,同时还描述了系统的行为。

类图是定义其它图的基础。

在类图的基础上,状态图、合作图等进一步描述了系统其他方面的特性。

通过本次实验,我掌握UML的静态建模的方法,实践用UML建立静态模型。

并且学习了Power Designer画类图和对象图的功能。

感谢付晓东老师的指导和同学们的帮助。

合集下载

UML面向对象分析、建模与设计课件第五章 类图

UML面向对象分析、建模与设计课件第五章 类图
即可变、只增与冻结。
类——操作
操作是一个可以由类的对象请求以影响其行为的服务的实现,也即 是对一个对象所做的事情的抽象,并且由这个类的所有对象共享。
操作是类的行为特征或动态特征。 操作的语法格式为:
可见性OPT 操作名 ⌊(参数列表)⌋OPT ⌊:返回类型⌋OPT ⌊{特性}⌋OPT
操作名:操作的标识符。在描述操作时,操作名是必须的,其他部 分可选。
Student
+monitor 1
1..*
自关联
类图中的关系——关联关系
关联名称:放在关联路径的旁边,但远离关联端。 角色:放在靠近关联端的部分,表示该关联端连接的类在这一关联
关系中担任的角色。角色名上也可使用可见性修饰符号。 多重性:放在靠近关联端的部分,表示在关联关系中源端的一个对
象可以与目标类的多少个对象之间有关联。 导航性:一个布尔值,用来说明运行时刻是否可能穿越一个关联。 限定符:是二元关联上的属性组成的列表的插槽,其中的属性值用
/WorksForCompany
Department * +department 1 WorksForDepartment
* Person
类图中的关系——泛化关系
泛化关系定义为一个较普通的元素与一个较特殊的元素之间的类元 关系。其中描述一般的元素称为父,描述特殊的元素称为子。
通过泛化对应的继承机制使子类共享父类的属性和操作,小了模型 的规模,同时也防止了模型的更新所导致的定义不一致的意外。
法了,此时称之为N元关联。
类图中的关系——关联关系
class Logical View
ClassA
AssociationName
+rolename 0..*

基于UML的面向对象的系统建模

基于UML的面向对象的系统建模
模。
2 1 建立用例 图 .
用例 图展示了用例 之间 以及用 例与 参与者 之间 的相互 联系 。角色 是位 于你 所 工作 的系统 外 部 的人 或其 它 系统 。
用例 就是用 户 因某 外部 事 件而 与计 算 机进 行 的一 次交 互 。
建立用例图 , 首先要 识别 系统 的使用 者和 相关外 部系统 , 确 立好 角色( c r , A  ̄ )然后再依据系统 功能来建 立用例 图。通 过 对办公 自动化 系统 的前 台使用 部分 进行 需求 分析得 到如 下
U ML是一种通用的可视化建模语言 , 用于对 软件进 行描述 、 可视 化处理 、 构造 和建立软 件 系统 的文档。 它是 面向对象分析和设计过程 中重要 的建模 工具 。本文 以办公 自动化 系统的建模 为 实例 , 介绍 了一种 基于 U ML的面向对 象的 系统建模方法。 统 一建模语言 面向对师范大学管理学院 山东 济 南 20 1 5 .04
据于其与系统之 间进行 的不 同交 互。用 户角色 是对 系统 中
维普资讯
僵毫技木 与■I亿 t
多个 角色 的概 化 , 些角 色包括 : 经理 , 这 总 公司领 导 , 办公室

登记( 来信/ 来电/ . 发文) 收Y/
行通信 的机制 。相应地 ,M U L定义 了 9 种模 型图 , 从静 态与
动态两方面来描 述系统 。其 中, 表示 静态 结构 的模 型 图有 : 用例 图 , 类图 , 象 图 , 件 图, 署 图。表 示动 态行 为 的模 对 组 部 型图有 : 顺序 图, 协作图 , 活动 图 , 状态 图。此 外 , ML还定义 U 了一些关 系 , 与类 之间的关 系有 : 类 关联 , 继承 ( 泛化 )依 赖 , , 聚合 ; 用例 与用例之 间的关 系有 : 包含 , 扩展 , 泛化 。 下面 以办公 自动化 系统 为例 , 看如何 运 用 U 看 ML的建 模机制进行面向对 象 的系统建 模 。由于办 公 自动 化 系统 总 共可以分成 3 部分 : 台使用 , 台管理 , 前 后 工作流 的定制 。本 文仅 以前 台使用为例进行 阐述 。

UML(UnifiedModelingLanguage统一建模语言)

UML(UnifiedModelingLanguage统一建模语言)

UML(UnifiedModelingLanguage统⼀建模语⾔)UML(Unified Modeling Language 统⼀建模语⾔),⼜称标准建模语⾔。

是⽤来对软件密集系统进⾏可视化建模的⼀种语⾔。

UML是⼀种⾯向对象的建模语⾔,它可以实现⼤型复杂系统各种成分描述的可视化、说明并构造系统模型,以及建⽴各种所需的⽂档,是⼀种定义良好、易于表达、功能强⼤且普遍适⽤的建模语⾔。

UML基本内容详述(1)视图 视图是表达系统的某⼀⽅⾯特征的UML建模元素的⼦集;试图并不是图,它是由⼀个或多个图组成的对系统某个⾓度的抽象。

1)⽤例视图(核⼼视图) 强调从⽤户的⾓度看到的或需要的系统功能。

2)逻辑视图 该视图⽤于描述系统内实现的逻辑功能,展现系统的静态或结构组成及特征。

3)组件视图 该视图从系统实现的⾓度来描述模型对象间的关系。

4)配置视图 该视图⽤于说明系统的物理配置。

(2)图表 图表是描述视图内容的图。

1)⽤例图 ⽤于描述外部项与系统提供的使⽤事件之间的联系。

⼀个使⽤事件是系统提供的功能的具体描述,是系统分析⼈员从⽤户⾓度描述系统的功能,是功能与功能之间以及功能与⽤户之间的关系。

使⽤事件定义了系统的功能需求。

简单理解:⽤来描述系统的功能。

2)类图 ⽤于描述系统的静态结构。

类可以⽤不同⽅式连接,主要包括联合、依赖、独⽴和包装。

⼀个系统⼀般有多张类图,⼀个类可在不同的视图中出现。

3)对象图 ⽤于表述系统在某个时刻的静态结构。

对象图也可作为协作图的⼀部分,说明⼀组对象之间的动态协作关系。

对象图与类图的区别:对象图表⽰的是类中的许多对象实例,⽽不是类本⾝。

4)状态图 ⽤于说明类中的对象可能具有的状态,以及由时间引起的状态的改变。

简单理解:描述了系统元素的状态条件和响应。

5)顺序图(时序图) ⽤于描述对象间的动态协作关系。

表达了对象间发⾏消息的时序,同时也表达出对象间的相互作⽤,以及当系统执⾏到某个特定位置时可能会发⽣的事。

第三章 初识UML-UML面向对象分析、建模与设计-吕云翔-清华大学出版社

第三章 初识UML-UML面向对象分析、建模与设计-吕云翔-清华大学出版社

行为图
状态图
活动图
顺序图
协作图
用例图
UML 2中的图
UML图
结构图
类图
组件图
对象图
外廓图
组合结构 图
部署图
包图
顺序图
行为图
用例图
活动图
状态机图
交互图
通信图
交互概览 图
时间图
UML 1.4与UML 2中不同图的对比
UML 1.4
状态图 活动图
UML 2 包图 状态机图 活动图
对比说明
尽管UML 1.4使用包图说明规范的组织结构,但是没有对包图进行明确 定义。
例如,在一个类的符号中暗示了一种规格说明:它提供类所有的属性、 操作等信息的全面描述。
修饰
修饰是对规格说明的文字的或图形的表示。
例如,通过对类名添加斜体修饰来表明这是一个抽象类。
在UML中的每个元素符号都以一个基本的符号开始,在其上添加一 些具有独特性的修饰。
例如,这里有一个类,我们可以通过不同的修饰来标示出它是一个抽象 类,拥有两个公有性的操作,一个保护性的操作和一个私有性的操作。
通用划分
在面向对象系统建模中,通常有几种划分方法,其中最常见的有两 种划分:
类型-实例:是通用描述与某个特定元素的对应。
➢例如,类和对象就是一种典型的类型-实例划分。
接口-实现:接口是一个系统或对象的行为规范,这种规范预先告知使 用者或外部的其它对象这个系统或对象的某项能力,和其提供的服务。 实现是接口的具体行为,它负责执行接口的全部语义,是具体的服务兑 现过程。
只是名称不同,技术上完全相同。 UML 2的活动图独立于状态机存在。
组合结构图 显示结构化类元或协作的内部结构,和普通类图之间没有严格界限。

面向对象设计与UML建模

面向对象设计与UML建模

面向对象设计与UML建模面向对象设计是一种软件开发方法,它将现实世界的实体抽象为对象,并以对象之间的相互关系来组织和描述系统的行为。

而UML(统一建模语言)是一种用于可视化、规范化软件系统设计的标准建模语言。

本文将从面向对象设计的概念入手,介绍面向对象设计与UML建模的关系及应用。

一、面向对象设计的概念面向对象设计(Object-oriented Design)是一种以对象为中心的软件开发方法。

在面向对象设计中,将系统中的各个对象抽象出来,通过定义对象之间的属性和方法,以及对象之间的关系,来描述系统的功能和行为。

面向对象设计的核心思想是将现实世界的实体抽象为对象,对于每个对象,描述其属性和方法,并通过对象之间的交互来实现系统的功能。

这样的设计方式使得系统更加模块化,易于扩展和维护。

二、UML建模的概念UML(Unified Modeling Language)是一种用于规范化、可视化软件系统设计的标准建模语言。

它提供了一套丰富的符号和约定,用于描述系统的结构、行为和交互。

UML建模是面向对象设计的重要工具之一,它能够帮助开发人员更好地理解和设计系统。

通过使用UML,开发人员可以绘制出类图、时序图、用例图等各种类型的图表,来描述系统的不同方面和视角。

三、面向对象设计与UML建模的关系面向对象设计与UML建模是紧密相关的。

面向对象设计将系统抽象为对象,定义了对象的属性和方法,以及对象之间的关系。

而UML建模则是通过各种类型的图表来表示和描述这些对象、属性、方法和关系。

具体来说,面向对象设计中的类可以通过UML的类图来表示。

类图用于描述系统中的类及其之间的继承、关联、聚合等关系。

类图能够清晰地展示系统的结构,有助于开发人员对系统进行整体把握和分析。

此外,面向对象设计中的时序和交互可以通过UML的时序图、活动图和通信图来表示。

时序图用于描述对象之间的交互顺序,活动图用于描述系统的流程和行为,通信图用于描述对象之间的消息传递。

什么是UML

什么是UML

什么是UMLUML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。

UML支持面向对象的技术,能够准确的方便地表达面向对像的概念,体现面向对象的分析和设计风格。

UML不仅可用于软件设计,也可以用于软件需求分析。

UML的模型主要有三部分构成事物(Things):UML模型中最基本的构成元素,是具有代表性的成分的抽象。

关系(Relationships):关系把事物紧密联系在一起。

图(Diagrams ):图是事物和关系的可视化表示。

UML图分为结构型和行为型两种结构型的图描述的是某种结构,这种结构在某段时间内应该是稳定的,静态的;而结构型的图描述的是某种行为,是动态的。

结构型的图(Structure Diagram)类图(Class Diagram)对象图(Object Diagram)构件图(Component Diagram)部署图(Deployment Diagram)包图(Package Diagram)行为型的图(Behavior Diagram)活动图(Activity Diagram)状态机图(State Machine Diagram)顺序图(Sequence Diagram)通信图(Communication Diagram)用例图(Use Case Diagram)时序图(Timing Diagram)类图描述一组对象、接口、协作等事物之间的关系。

类图描述系统中类的静态结构,不仅定义系统中的类,表示类之间的联系,如关联、依赖、聚合等,也包括类的属性和操作。

类图描述的是一种静态关系,在系统的整个生命周期都是有效的。

类图是业务概念模型分析的有利武器,也是面向对象分析能力的强有力训练工具。

对象图是类图的实例,几乎使用与类图完全相同的标识。

一个对象图是类图的一个实例。

由于对象存在生命周期,因此对象图只能在系统某一时间段存在。

《软件工程》- UML 的静态与动态建模机制


35
§6.2.2 类图 7 依赖
依赖关系的起因:
§6.2 UML静态建模机制
如果对的X修改将导致Y必须修改,则称Y依赖于X 发送消息 一个类的对象是另一个类的对象的数据成员
一个类的对象是另一个类的操作参数,等
36
§6.2.2 类图 8 约束
定义形式: {字符串}
§6.2 UML静态建模机制
{ordered} 3..*
Point
Composition 1
Polygon
* 1
Circle
radius
Style
Color isFilled
*
1
Aggregation
34
§6.2.2 类图 6 继承
§6.2 UML静态建模机制
概念层: 一般类具有的属性操作及关联,特殊类也隐含地具有 特殊类还应包含额外的属性或操作 规范层:特殊类的接口与一般类的接口相一致 实现层:特殊类是一般类的子类(在OOPL的意义上)
UML的可视化建模机制分为静态和动态:
静态机制包括:用例图、类图、对象图、包图、构件图、配臵图 动态机制包括:顺序图、合作图、状态图、活动图
5
§6.1.2 UML的历史
§6.1 UML概述
80年代末期到90年代,各种OO软件开发方法纷纷涌现: OOA/OOD, Booch, OMT, OOSE… …
Order Line
Quantity:Integer price:Money isSatisfied:Boolean
Employee 0 1 Product
Multiplicity: optional
24
§6.2.2 类图
§6.2 UML静态建模机制

面向对象与UML


类B
类A
44
约束与派生
范畴: 表示法:
约束和派生机制能应用与仸何模型元素
用花括号括起放在模型元素旁边 典型的属性约束是该属性的取值范围 通常在派生属性前面加一个“/”表示 可由其它属性通过某种方式计算得到
约束属性: 派生属性
关联关系可以被约束(班级由学生组成,管理关 系的班干是学生的子集),也可以被派生 (公司 的VIP客户)
关注交互的时间顺序
打印文件 计算机 打印服务器 打印机 打印队列
打印文件 异步模式
[打印机就绪] 打印文件 [打印机忙] 保存文件
51
协作图(Collaboration Diagram)
关于交互的静态链接
计算机 打印队列
[打印机忙] 2.2:保存文件 1:打印文件
打印服务器
[打印机就绪] 2.1:打印文件
8
面向对象的模型表示法
9
模型的特征优势是什么?
10
模型的特征优势
1. 反映性——模型用来反映客观实体
2. 简化性——以简化的方式来反映客观事物 3. 直观性——方便、直观的方式反映客观
4. 抽象性——以抽象的方式描述客观事物及 其规律
11
从抽象角度看,模型分为哪几种?
12
从抽象角度看,模型分为
55
活劢图的作用
活劢图具有广泛地用途,在软件建模中,活劢图 可以用来
描述工作流
35
建立用例图
保险商务系统
签定保险 单
销售统计
客户
客户统计
保险销售员
36
用例乊间的关系
扩展关系
根据指定的条件,一个用例中有可能加入另一个 用例的劢作

软件工程与UML 03 系统的静态建模


• 关联关系的不同重数与代码的映射
• (3)单向关联(1..*)
public class Manager { private Vector theAccounts; public void addAccount (Account acc) { theAccount.addElement ( acc ) ; } public void removeAccount (Account acc) {theAccount.removeElement(acc); } }
户可以达成对系统的初步共识。
• 在本任务环节中,请根据之前书写的书店借书系统的用例 模型,寻找出书店借书系统的实体类。
• 静态模型包括类图、对象图、包图、组件图和部署图。 其中类图描述系统中类的静态结构,它不仅定义系统中 的类,表示类之间的关系(如关联、依赖、聚集等), 也表达类的内部结构(即类的属性和操作)。类图描述 的这种静态关系涉及软件系统开发的整个生命周期。对 象图是类图的实例,符号与类图非常相似,可以认为对 象图是类图在程序执行的某个过程中一瞬间的快照。包 图由包或类组成(有时也包括组件),表示包与包之间 的关系。包图可以用于描述系统的分层结构。组件图和 部署图涉及程序的物理实现。
• 销售。顾客将硬币投入售货机,经累加金额足额的饮料选择 键灯亮,等顾客按键选择。顾客按键后饮料由取物篓掉出, 并自动结算及找钱。 • 取消。顾客可在按下选择键前任何一个时刻,拉动退币杆取 消交易收回硬币。
• 3.2 类图
• 3.2.1 类关系的含义及表示方法 • 3.2.2 关联关系的重数与代码的映射
• 关系
• 关联关系:在对系统建模时,特定的对象间将会彼此关联,我
们称这种关系为关联关系,它反映了对象之间相互依赖、相互

UML建模工具中的五大视图

UML建模工具中的五大视图本节和大家一起学习一下UML建模工具方面的知识,本节主要包括面向对象建模概念和UML中的五大视图等内容,相信通过本节的介绍你对UML建模工具有一定的认识。

下面让我们一起来学习UML建模工具吧。

UML建模工具1.面向对象建模建模把复杂得问题分解为易于理解的小元素,以达到问题的求解模型帮助你具体化和指出系统的不同方面,模型也显示不同的部分如何彼此相关并有助于它们的工作形象化。

UML定义了软件工程领域中的不同模型。

下面给出模型和它们的描述:.类模型描述其静态结构,状态模型表示对象的动态行为,用例模型解释用户的要求,交互模型描述消息流,实现模型包含工作单元,部署模型包含属于进程分配的细节。

提供一种简单的、准备使用的、表现为可视的建模语言,是独立于过程的,是独立于语言的2.UML建模工具的五大视图:UML定义了软件工程领域中的不同模型。

下面给出模型和它们的描述:.类模型描述其静态结构,状态模型表示对象的动态行为,用例模型描述用户的要求,交互模型描述消息流,实现模型描述工作单元,部署模型属于进程分配的细节。

◆用户视图–表示系统的目的和目标◆结构视图–表示系统的静态或空闲的状态◆行为视图–表示系统的动态状态或状态的变动◆实现视图–表示系统的逻辑元素的分布◆环境视图–表示系统物理元素的分布3.用户视图系统的用户视图由用例图组成,用例图包含执行者、用例、及它们的关系,用例图表示了系统对外部实体提供的功能,用例图由执行者和用例组成(执行者对系统做什么的)执行者主要可分为四类:主要执行者–直接与系统交互的人,次要执行者–涉及到系统维护的人,外部硬件–运行应用的非计算机的系统部分,其他系统–为其工作需要与你系统交互的外部系统4.结构视图UML建模工具中结构视图代表系统的静态方面,包含类图(描述不同的类和它们的关联,描述系统中声明的类)和对象图(描述不同的对象和它们彼此间的链接)。

类:用来描述具有特征的现实世界的实体。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档