理解UML语言基础_第1页
理解UML语言基础_第2页
理解UML语言基础_第3页
理解UML语言基础_第4页
理解UML语言基础_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第1010章章 理解理解UMLUML语言基础语言基础本章主要内容本章主要内容:UMLUML的组成结构的组成结构元模型层元模型层UMLUML的扩展的扩展构造型、约束、和标签值构造型、约束、和标签值 要利用要利用UMLUML来开发设计软件系统结来开发设计软件系统结构蓝图,第一步需要先了解构蓝图,第一步需要先了解umluml的基本的基本组成要素,在组成要素,在UMLUML中共有三大基本组成中共有三大基本组成要素要素事物、关系、图形事物、关系、图形一、事物一、事物UMLUML的模型中最基本的成员,分为:的模型中最基本的成员,分为: 结构事物结构事物 行为事物行为事物 分组事物分组事物 备注事物备注事

2、物 这四类事物也可以说是这四类事物也可以说是UMLUML中最基本的中最基本的面向对象建模的重要组成部分,利用这四类面向对象建模的重要组成部分,利用这四类事物可规划设计出合适的模型系统。事物可规划设计出合适的模型系统。1 1、结构事物、结构事物结构事物主要表示概念或者和结构事物主要表示概念或者和实体的组件,而在实体的组件,而在UMLUML建模中,结构事物建模中,结构事物大多属于静态部分元素。大多属于静态部分元素。类类界面界面合作合作使用案例使用案例活动类活动类组件类组件类节点类节点类 这这7 7个结构事物是个结构事物是UMLUML建模中的最基本建模中的最基本的结构事物的结构事物2 2、行为事物、

3、行为事物 简单的说简单的说“行为事物行为事物”就是就是UMLUML模型里面属于模型里面属于“动作动作”的部分,这种事物会随着时间和空间的转的部分,这种事物会随着时间和空间的转变不断的执行的动作。在变不断的执行的动作。在UMLUML中行为事物分为两中行为事物分为两类类 交互、状态机交互、状态机 第一种第一种“交互交互”是指对象之间的相互沟通的动作是指对象之间的相互沟通的动作消息,这种沟通消息基本上包含着预实现特定的目消息,这种沟通消息基本上包含着预实现特定的目的所需的环境和动作序列。的所需的环境和动作序列。 而对象之间的群体行为或者是单一执行的行为间而对象之间的群体行为或者是单一执行的行为间都会

4、产生特定的都会产生特定的“交互交互”行为。其中一点必须注意行为。其中一点必须注意的是的是“交互交互”行为一定与其他的元素有关,因为至行为一定与其他的元素有关,因为至少要有两个以上的对象才能产生交互少要有两个以上的对象才能产生交互 消息显示消息显示 第二种第二种“行为事物行为事物”是是“状态机状态机”,状态机本身,状态机本身是一种行为,这种行为是用来是一种行为,这种行为是用来“表示对象的一连串状表示对象的一连串状态态”,但状态机不是单一的元素,而是包含了相当多,但状态机不是单一的元素,而是包含了相当多的元素,这些元素包含有的元素,这些元素包含有“状态状态、转换转换(指两状态之(指两状态之间的流程

5、)、间的流程)、事件事件(指经触发而产生的交互动作的行(指经触发而产生的交互动作的行为)和为)和活动活动(指执行转换所产生的反应)(指执行转换所产生的反应)”状态的表示方式状态的表示方式3 3、分组事物、分组事物 分组事物是指分组事物是指UMLUML中属于中属于“组织组织”的结构。利的结构。利用一个个的分组事物可将用一个个的分组事物可将“模型模型”按特定的结构切按特定的结构切分为不等的元素,目前在分为不等的元素,目前在UMLUML中属于中属于“分组事物分组事物”的只有一个,那就是类库也可以称为包。的只有一个,那就是类库也可以称为包。 包可以说是一种一般用途的分组包可以说是一种一般用途的分组/

6、/分类机制,包分类机制,包可以将元素分门别类一封装,不论结构事物、行为可以将元素分门别类一封装,不论结构事物、行为事物或者是其他元素都可以放置到包中。事物或者是其他元素都可以放置到包中。 通过包可以将通过包可以将UMLUML模型加以分组,而包也会有模型加以分组,而包也会有一些变化,一些变化,A A、软件框架,软件框架,B B、模型,模型,C C、子系统子系统? ? 1 1包的图形表示方式包的图形表示方式4、备注事物、备注事物 备注事物是备注事物是UML中用来作为中用来作为“说明说明/表示表示”的元的元素,可说是素,可说是UML模型中最基本的一种说明事物,主模型中最基本的一种说明事物,主要用途是

7、说明、描述、和标注在模型元素的状况,要用途是说明、描述、和标注在模型元素的状况,备注事物与分组事物相同,只有一中主要的备注事备注事物与分组事物相同,只有一中主要的备注事物,物,“批注批注”。 批注简单的说就是用来说明和描述元素的符批注简单的说就是用来说明和描述元素的符号,这种符号可以用在一个元素或者一组元素上作号,这种符号可以用在一个元素或者一组元素上作为说明之用。为说明之用。 UMLUML中批注的图形表示方法中批注的图形表示方法二、关系二、关系 UML模型中第二个组成要素是模型中第二个组成要素是“关系关系”在在UML中一共有四中基本的中一共有四中基本的“关系元素关系元素”分分别是:别是: A

8、、依赖关系依赖关系 B、关联关系关联关系 C、一般化关系(泛化关系)一般化关系(泛化关系) D、实现关系实现关系 实现关系是一般化关系和依赖关系的综合体实现关系是一般化关系和依赖关系的综合体1 1、依赖关系、依赖关系 依赖关系是指两个事物依赖关系是指两个事物/ /元素之间拥有相互影元素之间拥有相互影响的关联、也就是说当一个事物或者元素在发生改响的关联、也就是说当一个事物或者元素在发生改变时,会影响到另一个事物,这是因为变化而产生变时,会影响到另一个事物,这是因为变化而产生的关联影响,即为依赖关系的关联影响,即为依赖关系 依赖关系包括依赖关系包括 包含和扩展包含和扩展2 2、关联关系、关联关系

9、关联关系实际上是一种结构关系,主要是指两关联关系实际上是一种结构关系,主要是指两个事物之间的相互联接结构。个事物之间的相互联接结构。 包括包括“聚合关聚合关系系”“”“组成关系组成关系” ” 特殊的关系,这种关系是指某特殊的关系,这种关系是指某个整体和其一部分之间的关系。个整体和其一部分之间的关系。 关联包括关联包括聚合和组成聚合和组成3 3、一般化关系(泛化关系)、一般化关系(泛化关系) 在两个以上对象或者元素之间互为主从(一般和在两个以上对象或者元素之间互为主从(一般和特殊化)的关系类型,特殊化元素(为子元素)可以特殊化)的关系类型,特殊化元素(为子元素)可以共享一般化元素(父元素)的结构

10、和行为。因此形成共享一般化元素(父元素)的结构和行为。因此形成特殊化元素(子元素)的对象能被一般化元素的对象特殊化元素(子元素)的对象能被一般化元素的对象所取代。从模型上分,一般化关系的表方法为一条具所取代。从模型上分,一般化关系的表方法为一条具有空心箭头由特殊元素指向一般化元素的实线。有空心箭头由特殊元素指向一般化元素的实线。4 4、实现关系、实现关系 实现关系是指分类器与分类起之间的语意关系。实现关系是指分类器与分类起之间的语意关系。其中一个分类器必须依据两者间的关系确定合约,另其中一个分类器必须依据两者间的关系确定合约,另外一个分类器则必须保证能实现合约。外一个分类器则必须保证能实现合约

11、。三、图形三、图形 UML图形是由元素、事务、关系和行为图形是由元素、事务、关系和行为所绘制的图形表示方法。所绘制的图形表示方法。 在在 UML中的图形都是利用中的图形都是利用“可视化可视化”的的方式来绘制的,因此所绘制的图形即可视为方式来绘制的,因此所绘制的图形即可视为系统的结构图标,按照结构系统用途上区分,系统的结构图标,按照结构系统用途上区分,在在 UML中总共有中总共有9个个 标准的、最常使用的图标准的、最常使用的图形,这形,这9类图形可分用静态和动态两种不同视类图形可分用静态和动态两种不同视图的图形来图的图形来 分析分析 使用案例图使用案例图类图类图对象图对象图构件图构件图部署图部署

12、图模型顺序图顺序图协作图协作图状态图状态图活动图活动图动态视图动态视图静态视图静态视图1 1、类图、类图 用途:用途:主要强调系统的静态的设计视图,用来表主要强调系统的静态的设计视图,用来表现一个系统的类和逻辑视图上的关系。但不在于描述现一个系统的类和逻辑视图上的关系。但不在于描述其行为。其行为。 使用类图的主要目的为表现出系统中概括模型使用类图的主要目的为表现出系统中概括模型与名称描述类(与名称描述类(classclass)间的合作关系以及可以用来描间的合作关系以及可以用来描述数据库中的大纲。述数据库中的大纲。 特点:特点:类图是软件系统的抽象化结构,基本上类图是软件系统的抽象化结构,基本上

13、可分为可分为“逻辑运算逻辑运算”和和“数据流逻辑数据流逻辑”两大结构部分,两大结构部分,在系统分析中进行数据逻辑分析时,很重要的一件事在系统分析中进行数据逻辑分析时,很重要的一件事就是就是“设计数据库大纲设计数据库大纲”,类图则非常适合用来,类图则非常适合用来“设设计数据库大纲计数据库大纲”2 2、对象图、对象图 用途:用途:主要强调系统的静态的设计视图和静态进主要强调系统的静态的设计视图和静态进程视图。对象图主要描述在在特定时刻系统的静态结程视图。对象图主要描述在在特定时刻系统的静态结构。构。 对象图可将类图中的全部事物的静态逻辑反映出对象图可将类图中的全部事物的静态逻辑反映出来。主要用途为

14、产生系统中数据和对象的结构。来。主要用途为产生系统中数据和对象的结构。 特点:特点:对象图主要描述某一特定时刻系统的静对象图主要描述某一特定时刻系统的静态结构,类图描述的是所有可能的情况,对象图则是态结构,类图描述的是所有可能的情况,对象图则是描述某一特定的情况。描述某一特定的情况。3 3、顺序图、顺序图 用途:用途:是一种交互图形,主要强调的是消息的是一种交互图形,主要强调的是消息的 时时间顺序,以及系统的动态视图,因此此图形是以时间间顺序,以及系统的动态视图,因此此图形是以时间为主,来描述对象间的交互关系。为主,来描述对象间的交互关系。 其主要目的为规划模型流程的控制以及描述活动其主要目的

15、为规划模型流程的控制以及描述活动的的 发展过程。发展过程。 顺序图和协作图都是同结构图形,因此这两种图顺序图和协作图都是同结构图形,因此这两种图形之间可以相互转换。形之间可以相互转换。 特点:特点:顺序图主要是描述多个对象之间的交互关顺序图主要是描述多个对象之间的交互关系。这些关系是已北模块化为消息的交换。顺序图所系。这些关系是已北模块化为消息的交换。顺序图所关注的焦点是类和它们所交换的消息上,借此来实现关注的焦点是类和它们所交换的消息上,借此来实现某些特定的预期的行为。某些特定的预期的行为。4 4、协作图、协作图 用途:用途:协作图也是一种交互图形,主要强调的是协作图也是一种交互图形,主要强

16、调的是收发消息和对象之间的结构组织。收发消息和对象之间的结构组织。 协作图强调对象之间的数据流、控制流与消息之协作图强调对象之间的数据流、控制流与消息之间的传递活动。间的传递活动。 所以利用协作图即可分析出各个对象之间的关系,所以利用协作图即可分析出各个对象之间的关系,如此就能了解整个系统的控制流程。如此就能了解整个系统的控制流程。5 5、用例图、用例图 用途:用途:主要强调的是系统的静态地使用案例视图,主要强调的是系统的静态地使用案例视图,利用此视图可将特定的使用案例与角色间的关系表现利用此视图可将特定的使用案例与角色间的关系表现出来。出来。 使用这种图可了解系统的需求和表达出使用案例使用这

17、种图可了解系统的需求和表达出使用案例与角色之间的关系。与角色之间的关系。 使用案例图最主要的用途为分析系统的功能内容使用案例图最主要的用途为分析系统的功能内容和取得结构系统的功能以及控制系统构建时与测试时和取得结构系统的功能以及控制系统构建时与测试时的案例执行。的案例执行。6 6、状态图、状态图 用途:用途:最主要强调的是系统的动态视图,由于状最主要强调的是系统的动态视图,由于状态图中可显示出状态,因此对于模型界面和类或者所态图中可显示出状态,因此对于模型界面和类或者所协作间的行为模型来说都是非常重要。协作间的行为模型来说都是非常重要。 状态图主要用途用来说明行为的状态和响应,因状态图主要用途

18、用来说明行为的状态和响应,因此其可以用来作为模型中个对象生命周期的指示和响此其可以用来作为模型中个对象生命周期的指示和响应。应。7 7、活动图、活动图 用途:用途:活动图可将系统中活动与活动间的执行的活动图可将系统中活动与活动间的执行的流程表现出来,其主要强调的是系统的动态视图。流程表现出来,其主要强调的是系统的动态视图。 而活动图也可以视为是一种特殊的状态图。而活动图也可以视为是一种特殊的状态图。 活动图主要用途为指出一个执行动作的类中的活活动图主要用途为指出一个执行动作的类中的活动和行为。并描述此类为响应内部动作所作的所有反动和行为。并描述此类为响应内部动作所作的所有反映。映。 活动图的主

19、要功能为控制模型的工作流程和活动图的主要功能为控制模型的工作流程和 工作工作活动。活动。8 8、构件图(组件)、构件图(组件) 用途:用途:主要强调的是系统中静态的实现视图,利主要强调的是系统中静态的实现视图,利用构件图可以看出构件与构件之间的组织和依赖的关用构件图可以看出构件与构件之间的组织和依赖的关系。系。 构件图的主要的用途是在规划系统构件图的主要的用途是在规划系统 整合开发结构整合开发结构时,定义出系统的实现视图以及描述系统在实际开发时,定义出系统的实现视图以及描述系统在实际开发构建的组织结构和依赖关系。构建的组织结构和依赖关系。 由于构件对应到一个类或者多个类、界面或是合由于构件对应

20、到一个类或者多个类、界面或是合作上,因此构件图与类图具有相当密切的关系。作上,因此构件图与类图具有相当密切的关系。1010、部署图、部署图 用途:用途:其主要强调的是系统的动态视图。其主要强调的是系统的动态视图。 而活动图也可以视为是一种特殊的状态图。而活动图也可以视为是一种特殊的状态图。 利用部署图可将系统在运行时的节点设置和利用部署图可将系统在运行时的节点设置和 存在存在与该节点上的所有相关构件表现出来。与该节点上的所有相关构件表现出来。 部署图的若从系统整合开发结构分析上看部署图的若从系统整合开发结构分析上看 ,主要,主要扮演的角色是系统的环境视图,主要功能是为用来描扮演的角色是系统的环

21、境视图,主要功能是为用来描述系统处理资源元素间的组态,以及系统实际运行构述系统处理资源元素间的组态,以及系统实际运行构件间的对应方式。件间的对应方式。 部署图最主要的用途是说明系统中各个分布式的部署图最主要的用途是说明系统中各个分布式的组件和找出组件间无法显示出的问题所在。组件和找出组件间无法显示出的问题所在。 四、利用四、利用UMLUML规划软件的系统结构规划软件的系统结构 一套良好的一套良好的“系统结构系统结构”至少必须做到下至少必须做到下述述5个重要开发策略:个重要开发策略: 1、软件系统的组织、软件系统的组织:包含系统整体组织和包含系统整体组织和个组件组织。个组件组织。 2、系统中结构元素和界面的选择分析系统中结构元素和界面的选择分析 3、依照结构元素制定行为模型。、依照结构元素制定行为模型。 4、依照基础结构元素和行为元素的渐进组、依照基础结构元素和行为元素的渐进组成而设计出大型子系统。成而设计出大型子系统。 5、从结构样式导出软件应用结构组织:包、从结构样式导出软件应用结构组织:包含静态和动态元素和界面、静态和动态元素的含静态和动态元素和界面、静态和动态元素的合作和组成。合作和组成。五、标准的软件结构概念五、标准的软件结构概念“4+1”“4+1”视图视图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论