第2章 UML通用知识点概述分解
UML基本概念与语法解析
UML基本概念与语法解析软件开发是一个复杂而繁琐的过程,为了更好地组织和管理这个过程,人们发明了一种通用的建模语言——UML(Unified Modeling Language)。
UML提供了一套丰富的图形符号和规则,用于描述和分析软件系统的结构、行为和交互。
在本文中,我们将深入探讨UML的基本概念和语法,帮助读者更好地理解和应用UML。
首先,让我们从UML的基本元素开始。
UML中最重要的元素是类(Class),它是描述对象的属性和行为的基本单位。
类可以用矩形图形表示,矩形中包含类的名称、属性和方法。
属性表示类的特征,方法表示类的行为。
除了类,UML还提供了其他重要的元素,如接口(Interface)、对象(Object)和关联(Association)等。
接口用来定义类的行为规范,对象表示类的实例,而关联则描述类之间的关系。
在UML中,类之间的关系是非常重要的。
UML提供了多种关系类型,如继承(Inheritance)、关联(Association)、聚合(Aggregation)和组合(Composition)等。
继承表示一个类从另一个类继承属性和方法,关联表示两个类之间的关系,聚合表示一个类包含另一个类的实例,而组合则表示一个类包含另一个类的实例,并且这个实例的生命周期与包含它的类相同。
通过使用这些关系,我们可以更好地描述和分析软件系统的结构和行为。
除了类和关系,UML还提供了多种图形符号来表示软件系统的结构和行为。
其中最常用的图形符号是用例图(Use Case Diagram)、类图(Class Diagram)和序列图(Sequence Diagram)。
用例图用来描述软件系统的功能需求,类图用来描述软件系统的静态结构,而序列图则用来描述软件系统的动态行为。
通过使用这些图形符号,我们可以更直观地理解和交流软件系统的设计和实现。
在使用UML进行软件开发过程中,我们还需要遵守一些基本的语法规则。
第2章 UML通用知识点综述
行为物件
分组物件
注解物件
UML模型中的名词,如类、接口、协作、用例、活动类、组件、节点 UML模型的动词,如交互、状态机 包,它用于把语义上相关的建模元素分组为内聚的单元 注解,它附加到模型以捕获特殊信息,同黄色便笺很相像
关系
.
关系
relationships
关联
association
依赖
dependency
UML系统分析与设计
UML-System Analysis & Design
第2章 UML通用知识点综述
重点内容:
UML概述 常用的UML元素分析
UML的通用机制
UML的扩展机制
一、UML概述
创始于1994年10月
由Grady Booch、Jim Rumbaugh和Ivar Jacobson共同提出, 1996年正式命名; 1997年被OMG采纳;
用例视图
作用:描述系统的功能需求,找出用例和执行者; 适用对象:客户、分析者、设计者、开发者和测试者; 描述使用的图:用例图和活动图; 重要性:系统的中心,它决定了其他视图的开发,用于确 认和最终验证系统。
逻辑视图
作用:描述如何实现系统内部的功能 ; 适用对象:分析者、设计者、开发者 ; 描述使用的图:类图和对象图、状态图、顺序图、合作图 和活动图 ; 重要性:描述了系统的静态结构和因发送消息而出现的动 态协作关系 。
•
•
类图
• 类图显示了系统的静态结 构,表示了不同的实体 (人、事物和数据)是如 何彼此相关联起来。 • 类图可用于表示逻辑 类,逻辑类通常就是用户 的业务所谈及的事物,比 如说学生、学校等。类图 还可用于表示实现类,实 现类就是程序员处理的实 体。
UML第2章 UML-2
第2章 案例-续
8
是否可以这样衡量用例的重要性:我们询问开发人员,如
果这个用例在本次迭代中忽略掉,或者用其他的用例来取 代,那么用户将会怎样反应?让他们从以下的答案中选择一 个:
1)他们几乎不会注意到这个用例不存在,在没有它的情况下使用这 个系统不会有什么影响。 2)他们会注意到这个用例不存在,但是,稍加想像,这个系统仍然 可以很好的使用。 3)系统的大部分可以独立于这个用例。 4)系统的一部分可以独立于这个用例。 5)没有它,就不可能使用这个系统。
第2章 案例-续
<<Lifecycle>> NewClass
23
1.实体对象(entity object) 对系统的业务数据和业务逻辑进行封装(encapsulate)。
一般来说,这种对象比较容易发现,它们是用来描述问题
的关键部分的名词。 有两个办法可以找到实体对象:
一种是考虑解决问题所需要的全部数据和行为,然后将数据按相
类的名字就应该是一个名词,它描述这个系统元素的本性
(nature)或者职责。
一般来说,类的名字是以大写字母开头,并使用大小写来
区分单词的边界。 而另一方面,类的名字也可能是一个动词的变形。
在英语中,有大量的可以转换成名词的动词:教(teach)书的人是
教师(teacher),照管花园(garden)的人是园丁(gardener),编写 (program)计算机程序的人是程序员(programmer),指导 (instruct)你的人是导师(instructor)。
第2章 案例-续
11
2.1.2评估用例
1.评估“Extract Time Entries”用例 通过“Extract Time Entries”用例,支付系统能够从考勤系 统中抽取出指定时间范围内的考勤条目。
02 第二章 UML通用知识点概述
2.2常用UML元素
3 模型元素——结构事物——用例
用例(Use Case):描述系统所提供的功能,定义了系统是 如何被参与者使用的
用例表现为对系统的功能描述。
2.2常用UML元素
3 模型元素——结构事物——主动类
主动类能自动地启动控制活动,至少拥有一个进程或线 程
在许多UML工具中,主动类的表示和一般类的表示并无 区别
组合关系是关联关系的一种,是强的关联关系;同样,关联和 组合在语法上无法区分,必须考察具体的逻辑关系。
节点是系统运行时切实存的物理对象,表示某种可计算 资源,往往具有一定的存储能力和处理能力
在Rational Rose中包含两种节点,分别是设备节点和处 理节点
设备节点
处理节点
2.2常用UML元素
3 模型元素——行为事物
结构事物描述模型的静态部分,而行为事物描述模型的 动态部分
行为事物包括:交互(Interaction) 和 状态机(State Machine)
表述对象在它的生命周期中所经历的状态序列以及它们 对那些事件的响应
状态
注意:这是圆 角矩形
2.2常用UML元素
3 模型元素——分组事物
大型软件通常会包含大量的类,因此存在大量的结构事 物和行为事物,为了能够更加有效地对其整合,就需要 进行分组。分组事物就是用于组织管理的。
UML提供了“包(Package)” 来完成这一目标
2.2常用UML元素
3 模型元素——关系
UML要建立并描述软件模型,其构成包括了事物以及事 物之间的关系。
UML中事物间的关系主要包含: 1. 依赖关系 2. 关联关系 3. 泛化关系 4. 实现关系 5. 组合关系 6. 聚合关系
UML概述
45
UML的基本视图
UML的五类基本视图;
UML的用例视图; UML的逻辑视图; UML的构件视图; UML的并发视图; UML的配置视图。
2020/1/4
成都信息工程学院软件工程系
2020/1/4
成都信息工程学院软件工程系
33
场景(Scenarios)
场景用于刻画构件之间的相互关系,将四个视 图有机地联系起来。可以描述一个特定的视图 内的构件关系,也可以描述不同视图间的构件 关系。
2020/1/4
成都信息工程学院软件工程系
34
UML中的图和各视图的对应关系
场景视图:用例图 逻辑视图:类图和对象图 开发视图:类图和组件图 进程视图:顺序图、协作图、状态图、活
2020/1/4
成都信息工程学院软件工程系
3
Rational三剑客
Jim Rumbaugh Ivar Jacobson
Grady Booch
2020/1/4
成都信息工程学院软件工程系
4
方法学大 战阶段
UML的历史
统一阶段
公
标准化阶 段
众 反
馈
工业化阶 段
2020/1/4
成都信息工程学院软件工程系
依赖( dependency)
依赖关系描述一个元素对另一个元素的依附。
聚合(aggregation)
描述元素之间整体和部分的关系
2020/1/4
成都信息工程学院软件工程系
15
图(diagram)
UML模型图(5类,9种): 用例图 静态图(类图,对象图) 行为图(状态图,活动图) 交互图(顺序图,协作图) 实现图(构件图,配置图)
UML各章知识点小结
UML各章知识点小结第一章面向对象分析和设计在OO开发中,至关重要的能力是什么?为软件对象分配职责什么是分析?▪强调的是对问题和需求的调查研究,而不是解决方案▪澄清两个概念:需求分析:对需求的调查研究面向对象分析:对领域对象的调查研究什么是设计?▪强调的是满足需求的概念上的解决方案(在软件方面和硬件方面),而不是其实现。
面向对象分析(做正确地事)▪强调的是在问题领域内发现和描述对象(或概念)面向对象设计(正确地做事)▪强调的是定义软件对象以及它们如何协作以实现需求。
OOAD 最关心流程与元件1. 描述流程(剧情) ---- 分析2. 安排主/配角(元件)演出---- 设计OOAD 最主要的工具UML (Unified Modeling Language)第一章思维导图第二章迭代、进化和敏捷动机:迭代和进化式瀑布生命周期▪在编程之前就预先完成需求和设计步骤▪软件项目的高失效率迭代和进化式开发▪及早地引入编程和测试,并重复这一循环▪会在还没有详细定义所有需求的情况下假设开发开始▪使用反馈来明确和改进演化中的规格说明▪依赖于短时快速的开发步骤、反馈和改写来不断明确需求和设计▪软件项目的较高成功率什么是迭代和进化式开发如何在迭代项目中处理变更抱以接受变更和改写的态度,是迭代和进化式开发真正本质的驱动力!!迭代反馈和进化向预期系统的方向发展。
需求和设计的不稳定性随着时间逐步下降迭代开发的优点⏹减少项目失败可能性,提高生产率、降低缺陷率⏹在早期缓解高风险⏹早期可见的进展⏹早期反馈、用户参与和调整,会产生更接近涉众真实需求的精华系统⏹可控复杂性⏹一次迭代中的经验可以被系统地用于改进开发过程本身UP的阶段第三章案例研究案例研究中涵盖的内容☐一个应用程序通常包括:✓UI元素✓核心应用逻辑✓数据库访问✓与外部软硬件的协作用户界面应用逻辑层其它层或构件较少关注讨论如何与其它层连接案例研究主要关注讨论如何设计对象次要关注UP 思维导图敏捷开发 思维导图第四章初始不是需求阶段初始阶段是建立项目共同愿景和基本范围的比较简短的起始步骤它包括:▪10%的用例进行分析▪关键的非功能需求的分析▪业务案例创建▪开发环境的准备▪初始阶段需解决的问题:本项目的愿景(vision)和业务案例(business case)?可行性(Feasible)?购买/开发(Buy and/or build)?粗略估计成本(cost): 1万-10万,还是百万?项目是进行下去还是停止?什么是初始阶段用一句话来概括初始阶段:预见项目的范围、愿景和业务案例用一句话来概括初始阶段要解决的主要问题:涉众是否就项目愿景基本达成一致,项目是否值得继续进行认真研究。
UML系统建模基础教程课后习题答案
UML系统建模基础教程课后答案第一章面向对象设计与UML1.填空题(1)UML(2)封装继承多态(3)继承(4)瀑布模型喷泉模型基于组件的开发模型XP开发模型2. 选择题(1)C(2)A B C D(3)A B C D(4)A B C(5)A3.简答题1.试述对象和类的关系。
(1)类是具有相同或相似结构、操作和约束规则的对象组成的集合,而对象是某一类的具体化实例,每一个类都是具有某些共同特征的对象的抽象。
类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类对象的抽象就是类.类描述了一组有相同特性和相同行为的对象。
第二章UML通用知识点综述1.填空题(1)依赖泛化关联实现(2)视图图模型元素(3)实现视图部署视图(4)构造型标记值约束(5)规格说明修饰通用划分2. 选择题(1)D(2)C(3)A(4)A B(5)D3.简答题(1)在UML中面向对象的事物有哪几种?在UML中,定义了四种基本的面向对象的事物,分别是结构事物、行为事物、分组事物和注释事物等。
(2)请说出构件的种类。
构件种类有:源代码构件、二进制构件和可执行构件。
(3)请说出试图有哪些种类。
在UML中主要包括的视图为静态视图、用例视图、交互视图、实现视图、状态机视图、活动视图、部署视图和模型管理视图。
(4)请说出视图和图的关系。
视图和图是包含和被包含的关系。
在每一种视图中都包含一种或多种图。
(5)请简述UML的通用机制。
UML提供了一些通用的公共机制,使用这些通用的公共机制(通用机制)能够使UML在各种图中添加适当的描述信息,从而完善UML的语义表达。
通常,使用模型元素的基本功能不能够完善的表达所要描述的实际信息,这些通用机制可以有效地帮助表达,帮助我们进行有效的UML建模。
UML提供的这些通用机制,贯穿于整个建模过程的方方面面。
前面我们提到,UML的通用机制包括规格说明、修饰和通用划分三个方面。
第三章Rational统一过程1.填空题(1)角色活动产物工作流(2)逻辑视图过程视图物理视图开发视图用例视图(3)设计开发验证(4)二维(5)周期迭代过程里程碑2.选择题(1)A B C D(2)A C D(3)A C D(4)A B C(5)A B C D3.简答题(1)请描述迭代过程有几个阶段。
02 第二章 UML通用知识点概述
2.1 UML概述
3 UML发展历史
2.2 常用UML元素
UML模型 元素的 构成
2.2常用UML元素
1 视图
UML是用模型来描述系统的结构或静态特征以及行为或动 态特征的,从不同的视角为系统的架构建模形成系统的不 同视图(View)。
软件建模的目的
1. 模型帮助我们按照实际情况,或按照我们所需要的 样式对系统进行可视化
2. 模型允许详细说明系统的结构和行为 3. 模型给出一个知道我们开发系统的模板 4. 模型对我们的决策进行文档化
2.1 UML概述
2 我们为什么需要UML?
UML是客户、产品经理和 研发人员之间的高效沟 通工具。
图由各种不同的模型元素组成 ✓ 每个模型元素表达不同的基本概念 ✓ 每个模型元素都有相应的符号和语义直观的表示
模型元素可分为两大类: ✓ 事物:UML模型中基本的面向对象的模块,主要包括:
结构事物、行为事物、分组事物、注释事物
✓ 关系:各事物之间的互相关系和影响,主要包括:
依赖关系、关联关系、泛化关系、实现关系
显示了跨越多个对象的系统控制流程
交互视图下的主要的图形表达为:序列图和协作图
2.2常用UML元素
1 视图——状态机视图
状态机视图下主要是观察对象的各种状态来描述对象随 时间和事件变化的动态行为
与交互视图的侧重点不同,状态机视图主要是以独立的 对象为中心进行描述
2.2常用UML元素
1 视图——活动视图
右图表示了一个类, 类与类之间的关系 后面再详细说明。
类名 属性
操作
垂直维度/时间维度
2.2常用UM水L元平维素度
UML知识点概述
UML知识点概述UML(Unified Modeling Language)是一种为面向对象软件系统的开发和设计提供标准化描述的语言。
它是一种图形化的语言,旨在帮助软件开发人员和系统分析师更好地理解、设计和构建现代软件系统。
UML包含了一系列的图形符号和规则,可以描述软件系统的结构、行为和交互。
本文将对UML的基本概念和知识点进行概述。
1.UML的历史与发展UML最初由Grady Booch、Jim Rumbaugh和Ivar Jacobson等软件工程领域的专家共同创建于1994年。
他们试图将各自开发的建模方法结合起来,形成一个统一的建模语言,以解决在软件开发过程中的沟通和理解问题。
UML从那时起逐渐成为业界标准,并于1997年被OMG(Object Management Group)正式接受为标准规范。
2.UML的基本元素UML主要包括结构图和行为图两种类型的图。
结构图用于描述系统的静态结构,行为图用于描述系统的动态行为。
UML的基本元素主要包括类、对象、接口、用例、活动、组件、节点等。
其中,类是UML中最基本的元素,它用于描述系统中的对象类型和对象之间的关系。
3.UML的结构图UML的结构图主要包括类图、对象图、组件图、部署图等。
类图用于描述系统中的类及之间的关系,包括类的属性和方法;对象图用于描述系统中对象之间的关系,主要用于实例化类图中的类;组件图用于描述系统的组件及其之间的关系;部署图用于描述系统的物理部署情况,包括系统的硬件和软件设备。
4.UML的行为图UML的行为图主要包括用例图、活动图、状态图、时序图、通信图、交互概述图等。
用例图用于描述系统的功能需求,包括系统的参与者和用例之间的关系;活动图用于描述系统中的活动过程,显示系统中各个活动之间的控制流程;状态图用于描述系统中对象的状态和状态之间的转换;时序图用于描述系统中对象之间的交互过程;通信图用于描述对象之间的消息传递关系;交互概述图用于描述多个交互图的关系。
第二章UML概述
结构事物
• 类(class)和对象(object) • 接口(interface) • 主动类(active class) • 用例(use case) • 协作(collaboration) • 构件(component) • 节点(node)
应注意的问题
• UML是一种建模语言,不是一种建模方法。 循特定的规则、允许创建各种模型、并 不告诉设计者需要创建哪些模型,不提 供开发过程.
主要内容
• UML的含义 • 发展历史 • UML的特点及构成 • UML的应用领域 • 支持UML的工具 • 小结
UML的历史
• 方法学大战阶段(上世纪90年代初) • 统一阶段(1996年) • 标准化阶段(上世纪90年代末) • 工业化阶段(2001年至今)
Odell Shlaer - Mellor Object lifecycles Classification
说明: • 标准建模语言UML是软件工程领域中具有划 时代意义的研究成果。 • UML吸取了面向对象技术领域中其它流派的 长处。 • 随着UML被OMG采纳为标准,面向对象领域 的方法学大战(method wars)也告结束。 • UML得到了诸多大公司的支持,如IBM,HP, Oracle,Microsoft等。 • 预计:UML将成为面向对象技术领域内占主 导地位的标准建模语言。
• 有两个元素X、Y,如果修改元素X的定义可能会引起对
另一个元素Y的定义的修改,则称元素Y依赖
(Dependency)于元素X。
图
• 什么是图
–图包括了用来显示各种图形元素符号的实 际图形,这些元素经过特定的排列组合来阐 明系统的某个特定部分或方面 –一个系统模型可以有多个不同类型的图 –图是特定视图的一部分 –某些图可以是多个不同视图的 组成部分
UML书上整理的知识点
第一章:1:Uml:中文名为统一建模语言。
(已纳入OMG标准,成为业务,应用和系统架构的标准可视化建模语言)2:uml的三大特性:UML是一种Language(语言);UML是一种Modeling(建模)Language;UML是Unified(统一)Modeling Language。
3:uml的发展现状:(1)已进入全面应用阶段的事实标准(2)应用领域正在逐渐扩展,包括嵌入式系统建模、业务建模、流程建模等多个领域(3)成为“生产式编程”的重要支持技术:MDA、可执行UML等4:模型是对现实的简化:常见的模型:生活相关:气象图、道路交通图、交通标志…:展示相关:建筑物模型、沙盘、公司总部的3D复制品…;数据分析相关:条形图、饼状图…;业务分析相关:组织结构图、跨职能流程图……;设计相关:建筑平面图、管线图、电路板设计图5:对于软件系统而言,涉及的模型主要是描述业务,业务规则,系统使用,运用程序,系统架构以及系统内交互的一种可视化表示方式。
6:建模的最大好处在于:更好的理解正在开发的系统。
7:建模的目的(1)帮助我们按照实际情况或按我们需要的样式对系统进行可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系统构造的模板;对我们所做出的决策进行文档化;(2)仅当需要模型时,才构建它建模的原则:选择要创建什么模型对如何动手解决问题和如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度级别上表示;最好的模型是与现实相联系的;单个模型是不充分的。
对每个重要的系统最好用一组几乎独立的模型去处理8:为什么使用UML建模,可以建立什么模型:(1)UML是一种统一的、标准化的建模语言(2)UML是一种应用面很广泛的建模语言10:草图与蓝图:蓝图一般是指采用CASE工具绘制的、正式的、规范的UML模型;草图则通常是指手工绘制的、规范度较低的在纸张的UML模型11:选择蓝图和草图的原则:大胆地绘制草图,尽可能基于草图进行讨论。
2-UML基础知识扫盲-学习笔记(20200512)
(一)用例图(1)要用好UML,要多多培养:(1)书面表达能力;(2)归纳总结能力;(3)“面向对象”的思维能力和抽象能力;(2)下面通过这个表格来总结一下我在需求分析工作中应用各种UML图的情况:(3)用例图:用例图源于Jacobson的OOSE方法,用例图是需求分析的产物,描述了系统的参与者与系统进行交互的功能,是参与者所能观察和使用到的系统功能的模型图。
它的主要目的就是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”关系以及系统各个功能之间的关系。
它通过用例(Use Case)来捕获系统的需求,再结合参与者(Actor)进行系统功能需求的分析和设计。
用例图表达的是什么角色通过软件系统能做什么事情,我们可以使用用例图系统地表达软件系统的绝大部分需求。
(4)用例图有四部分组成:用例(Use Case)、参与者(Actor)、系统边界、关联参与者:在一个系统开发前,我们必定首先要确定系统的用户,系统的用户就是系统的参与者。
除此以外,我们还会想打,我们开发的系统与其他的系统有什么关联?因此,系统的参与者可分为两类,一类是人,包括系统的使用者、维护者等,另外一类是其他系统。
用例:用例(Use Case)是参与者(Actor)可以感受到的系统服务或功能单元。
任何用例都不能在缺少参与者的情况下独立存在。
同样,任何参与者也必须要有与之关联的用例,所以识别用例的最好方法就是从分析系统参与者开始,在这个过程中往往会发现新的参与者。
用例是有粒度的,用例的粒度指的是用例所包含的系统服务或功能单元的多少。
用例的粒度越大,用例包含的功能越多,反之则包含的功能越少。
系统边界:所谓系统边界是指系统与系统之间的界限。
把系统边界以外的同系统相关联的其他部分称之为系统环境。
关联:为了减少模型维护的工作量、保证用例模型的可维护性和一致性,可以在用例之间抽象出包含(Include)、扩展(Extend)和泛化(Generalization)这几种关系;包含关系是指用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分。
chapter02 UML概述
山东科技大学(泰山科技学院)信息工程系
UML范老师
2.2 UML的概念范围
顺序图
顺序图表示了对象之间传送消息的时间顺序。每一个类元 角色用一条生命线来表示—即用垂直线代表整个交互过程 中对象的生命期。生命线之间的箭头连线代表消息。顺序 图可以用来进行一个场景说明—即一个事务的历史过程。 顺序图的一个用途是用来表示用例中的行为顺序。当执行 一个用例行为时,顺序图中的每条消息对应了一个类操作 或状态机中引起转换的触发事件。
山东科技大学(泰山科技学院)信息工程系 UML范老师
2.2 UML的概念范围
2、用例视图
用例视图是被称为参与者的外部用户所能观察到的系统功能 的模型图。用例是系统中的一个功能单元,可以被描述为参 与者与系统之间的一次交互作用。用例模型的用途是列出系 统中的用例和参与者,并显示哪个参与者参与了哪个用例的 执行。 用例也可以有不同的层次。用例可以用其他更简单的用例进 行说明。在交互视图中,用例做为交互图中的一次协作来实 现。
山东科技大学(泰山科技学院)信息工程系 UML范老师
2.2 UML的概念范围
UML 还包括多种具有扩展能力的组件,这些扩展能力有限 但很有用。这些组件包括约束、构造型和标记值,它们适用 于所有的视图元素。
山东科技大学(泰山科技学院)信息工程系
UML范老师ຫໍສະໝຸດ 2.2 UML的概念范围主要的域 视图
静态视图 结构 用例视图 类图 用例图
图
主要概念
类、关联、泛化、依赖关系、实现、接口 用例、参与者、关联、扩展、包括、用例泛化
实现视图
部署视图 状态机视图 活动视图
构件图
部署图 状态机图 活动图 顺序图 协作图
构件、接口、依赖关系、实现
UML体系结构第2章
还有—些动词:投篮(shoot)、推进(advance)、运
球(dribble)、传球(Pass)、犯规(Foul)、抢篮板球 (rebound)。你还可得到上述名词的一些附加信息——
例如每个位置的队员的相对高度、篮球场大小、进攻
时间以及比赛时间。 最后,根据常识可以为这些类建立一些属性和操 作。例如,通常球类都有体积(vo1ume)和直径 (diameter)等属性。
UML提供了另一种方式(也是非常形式化的一种 表达方式)表示施加约束,以便模型元素的语义定义 更加明确。它实际上是也一个完整的语言,被称为对 象约束语言(ObjectConstraint Language,0CL)。0CL
是UML的一个高级的但是很有用的工具,有自己的
规则、术语和操作符。
2.6 附加注释
(Guard)、前锋队员(Forward)、中锋(Center)、投球
(Shot)、进攻时间时钟(Shot Clock)、三分线(three— point line)、罚球(free throw)、犯规(Foul)、罚球线
(free-throw line)、球场(Court)、比赛时钟(GameClock)。
列表放在类名之下,并且和类名之间用分隔线隔开,
如下图所示。
类的属性在该类的每个对象中都有具体值。下 图是一个例子。注意,对象名首字母小写,后面跟 一个冒号,冒号后面是该对象所属的类名,并且整 个名字要带下划线。
名字myWasher:WashingMachine是一个命名实 例。也可以有诸如:WashingMachine这样的匿Байду номын сангаас实 例。
能对这个类做的事情。和属性名的表示类似,单字
操作名小写。如果操作名包含了多个字,这些字要 合并,并且除了第一个字外其余字首字母要大写。
UML基础教程概论 第二章 用例图
Vehicle
{abstract}
- fMaxSpeed : float
+ Start ()
: int
+ Stop ()
: int
+ Run (float fSpeed) : int
UML
C++代码 class Vehicle { public:
virtual int Start() = 0; virtual int Stop() = 0; virtual int Run(float fSpeed) = 0; private: float fMaxSpeed; };
Java代码 public class SavingsAccount extends Account {}
-6-
3. 类图
UML
3.4.4 实现关系的映射
Shape + Draw ()
Circle
- ptCenter : Point - nRadius : int + Draw ()
Rectangle
3. 类图
3.1 类图概要
※ 类图以反映类的结构(属性、操作)以及类之间的关系为主要目的,描述了软件系统的结构,是一种静态 建模方法
※ 类图中的“类”与面向对象语言中的“类”的概念是对应的,是对现实世界中的事物的抽象
UML
3.2 类图中的事物及解释
3.2.1 类
※ 从上到下分为三部分,分别是类名、属性和操作。类名是必须有的
※ 一组操作的集合,只有操作的声明而没有实现
3.2.3 抽象类
※ 不能被实例化的类,一般至少包含一个抽象操作
3.2.4 模版类
※ 一种参数化的类,在编译时把模版参数绑定到不同的数据类型,从而产生不同的类
第二章UML的概述
实现关系(Realization)
• 实现关系将一种模型元素(如类)与另一种模型 元素(如接口)连接起来,其中接口只是行为的 说明而不是结构或者实现。真正的实现由前一个 模型元素来完成。 • 在UML图中,实现关系一般用带有一条带有空心 箭头的虚线来表示 。
2.3UML的公共机制
• 2.3.1 UML的通用机制 • 1.规格说明(Specification) • 元素语意的文本描述,用来描述细节。
2.修饰(adornment)
• 对标准的表示符号增加细节描述。
• 3.通用划分(common division) • 类和对象的划分 • 接口和实现的划分
2.3.2 UML的扩展机制
• 1. 构造型(stereotype) • 构造型扩展机制是指在已有的模型元素基础上 建立一种新的模型元素。该类与现有的元素相 差不多,只不过比现有的元素多一些特别的语 义罢了。版类与产生该版类的原始元素的使用 场所是一样的。版类可以建立在所有的元素类 型上,比如:类、结点、组件、笔记、关系、 (关联、通用化和依赖)。UML语言中已经预 定义了一些版类,这些预定义的版类可以直接 使用。从而免去了再定义新版类的麻烦,使得 UML语言用起来比较简单。
2.2.3模型元素
• 1、UML中的事物 • 事物是UML模型中面向对象的基本模块,在 模型中属于静态部分。事物作为对模型中最 具代表性的成分的抽象。
• UML中的事物(Things)包括结构事物、行为事 物、分组事物和辅助事物(也称注释事物)。
结构事物(Structure Things)
结构事物是UML中的名词部分。负责描述静态 概念和客观元素。 结构事物主要包括7种,分别是类、接口、协作、用 例、主动类、构件和节点。 • 类(Class)是具有相同属性、相同方法、相同语 义和相同关系的一组对象的集合。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
UML统一建模语言
二、常用的UML元素分析
1、视图
用 例 视 图
用例视图描述了系统的参与者与系统进行交互的功能,是参与者所 能观察和使用到的系统功能的模型图。一个用例是系统的一个功能单元, 是系统参与者与系统之间进行的一次交互作用。
UML统一建模语言
二、常用的UML元素分析
1、视图
交 互 视 图
2、图
活 动 图
活动图是用来表 示两个或者更多的 对象之间在处理某 个活动时的过程控 制流程。 活动图能够在业 务单元的级别上, 对更高级别的业务 过程进行建模,或 者对低级别的内部 类操作进行建模。
UML统一建模语言
二、常用的UML元素分析
1、视图
视 图
UML是用模型来描述系统的结构或静态特征以及行为或动态特征的, 它从不同的视角为系统的架构建模形成系统的不同视图(view)。 在UML中主要包括的视图为静态视图、用例视图、交互视图、实现 视图、状态机视图、活动视图、部署视图和模型管理视图。
UML统一建模语言
二、常用的UML元素分析
2、图
用 例 图
用例图描述了系统提供的一 个功能单元。用例图的主要目的 是帮助开发团队以一种可视化的 方式理解系统的功能需求,包括 基于基本流程的“角色”关系, 以及系统内用例之间的关系。 使用用例图可以表示出用例 的组织关系,这种组织关系包括 整个系统的全部用例或者是完成 相关功能的一组用例。 在用例图中画出某个用例方 式是在用例图中绘制一个椭圆, 然后将用例的名称放在椭圆的中 心或椭圆下面的中间位置。
UML统一建模语言
二、常用的UML元素分析
1、视图
活 动 视 图
活动视图是一种特殊形式的状态机视图,是状态机的一个变体,用 来描述执行算法的工作流程中涉及的活动。 通常活动视图用于对计算流程和工作流程建模。活动视图中的状态 表示计算过程中所处的各种状态。 活动视图是在假定整个计算处理的过程中没有外部事件引起的中断 的条件下进行描述的,否则普通的状态机更加适合于描述这种情况。
UML统一建模语言
二、常用的UML元素分析
1、视图
静 态 图 视
静态视图是对在应用领域中的各种概念以及与系统实现相关的各种 内部概念进行的建模。 由于这种视图不描述与时间有关的系统行为所以我们称之为是静态 的,描述与时间相关的系统行为我们在其他视图中进行描述。静态视图 主要是由类与类之间的关系构成。 这些关系包括:关联、泛化和依赖关系,我们又把依赖关系具体可 以再分为使用和实现关系。
UML统一建模语言
二、常用的UML元素分析
2、图
状 态 图
状态图表示某个类所处的不同状态及该类在这些状态中的转换过程。 状态图的符号集包含了下列五个基本的元素:初始起点,状态之间 的转换,状态,判断点,一个或者多个终止点,它们使用内部包含实心 圆的圆来绘制。
UML统一建模语言
二、常用的UML元素分析
2、图
序 列 图
序列图显示了一个具体用例或者用例的一部分的一个详细流程。它几 乎是自描述的,序列图不仅可以显示了流程中不同对象之间的调用关系, 还可以很详细地显示对不同对象的不同调用。 序列图有两个维度:垂直维度,也称时间维度,以发生的时间顺序显 示消息或调用的序列;水平维度显示消息被发送到的对象实例。
UML统一建模语言
二、常用的UML元素分析
2、图
类 图
类图显示了系统的静态结构,表示了不同的实体(人、事物和 数据)是如何彼此相关联起来。 类图可用于表示逻辑类,逻辑类通常就是用户的业务所谈及的 事物,比如说学生、学校等。类图还可用于表示实现类,实现类就 是程序员处理的实体。
UML统一建模语言
二、常用的UML元素分析
UML统一建模语言
二、常用的UML元素分析
1、视图
模 型 管 理 视 图
模型管理视图是对模型自身组织进行的建模,是由自身的一系列模 型元素(如类、状态机和用例)构成的包所组成的模型。模型是从某一 观点以一定的精确程度对系统所进行的完整描述。 从不同的视角出发,对同一系统可能会建立多个模型,例如有系统 分析模型和系统设计模型等等。模型是一种特殊的包。一个包 (package) 还可以包含其他的包。 整个系统的静态模型实际上可看成是系统最大的包,它直接或间接 包含了模型中的所有元素内容。
UML统一建模语言
第2章 UML通用知识点综述
重点内容:
UML概述 常用的UML元素分析 UML的通用机制 UML的扩展机制
UML统一建模语言
一、 UML概述
UML能够在尽可能简单的同时能够满足对实际开发需要,进行系统 的各个方面建模。 UML拥有足够的表达能力以便可以处理现代软件开发中出现的所有 概念。 UML是一个通用语言,不仅仅和一种通用程序设计语言一样,也是 一个庞大的标准符号体系,提供了多种模型。
UML统一建模语言
二、常用的UML元素分析
1、视图
状 态 机 视 图
状态机视图是通过对象的各种状态来建立模型来描述对象随时间变 化的动态行为。状态机视图也是通过不同对象间的相互作用来描述系统 的行为的,不同的它是以独立的对象为中心进行描述。 状态机视图中,每一个对象都拥有自己的状态,这些状态之间的变 化是通过事件进行触发的。 对象被看成为通过事件进行触发并做出相应的动作来与外界的其他 对象进行通信的独立实体。事件表达了对象可以被使用操作,同时反映 了对象状态的变化。
交互视图描述了执行系统功能的各个角色之间相互传递消息的顺序 关系,是描绘系统中各种角色或功能交互的模型。交互视图显示了跨越 多个对象的系统控制流程。 我们通过不同对象间的相互作用来描述系统的行为,是通过两种方 式进行的,一种是以独立的对象为中心进行描述,另外一种方式是以相 互作用的一组对象为中心进行描述。 交互视图可运使用两种图的形式来表示:序列图和协作图。
UML统一建模语言
二、常用的UML元素分析
1、视图
物 理 视 图
物理视图是对应用自身的实现结构建模,例如系统的构件组织情况 以及运行节点的配置等等。 物理视图提供了将系统中的类映射成物理构件和节点的机制。 物理视图提供了将系统中的类映射成物理构件和节点的机制。系统 模型的大部分内容反映了系统的逻辑和设计方面的信息,并且独立于系 统的最终实现单元。