导图社区 UML复习大纲
统一建模语言(Unified Modeling Language,UML)的定义、发展、特点
编辑于2018-12-24 09:15:29UML复习大纲
UML的定义、发展、特点
定义: UML(Unified Modeling Language,统一建模语言)是一种能够描述问题、描述解决方案、起到沟通作用的语言。通俗地说,它是一种用文本、图形和符号的集合来描述显示生活中各类事物、活动及其之间关系的语言。
发展: UML起源于多种面向对象建模方法,由OMG开发,目前已经成为工业标准。面向对象建模语言最早出现于20世纪70年代中期。 面向对象软件工程的概念最早是由Booch提出的,他是面向对象方法最早的倡导者之一 后来,Rumbaugh等人提出了面向对象的建模技术(OMT)方法,采用了面向对象的概念,并引入各种独立于语言的表示符。这种方法用对象模型、动态模型、功能模型和用例模型,共同完成对整个系统的建模,所定义的概念和符号可用于软件开发的分析、设计和实现的全过程,软件开发人员在开发过程的不同阶段不需要进行概念和符号的转换。OMT-2特别适用于分析和念书以数据为中心的信息系统。 在美国,截止996年10月,UML获得了工业界、科技界和应用界的广泛支持,已有七百多个公司表示支持采用UML作为建模语言。1996年年底,UML已经稳占面向对象技术市场的85%,成为可视化建模语言事实上的工业标准。1997年11月17日,OMG采纳UML1.1作为基于全面对象技术的标准建模语言。UML代表了全面对象方法的软件开发技术的发展方向,具有巨大的市场前景,也具有重大的经济价值和国防价值。1997年11月4日UML被OMG采纳。此后进行不断的修订,并产生了UML1.2、UML1.3和UML1.4版本。2000年,UML1.4在语义上添加了动作语义的定义,使得UML规格说明在计算上更加完整。2005年,UML2.0规范形成,定义了许多化语法,特别是元模型的定义,至此,代表早期最好思想的、融合的UML已经呈现在人们面前,至今最新的版本已是UML2.1。
特点: (1)UML统一了Booch、OMT和OOSE等方法中和基本概念和符号。 (2)UML吸取了全面对象领域中各种优秀的思想,其中也包括非OO方法的影响。 UML符号表示考虑了各种方法的图形表示,删掉了很多容易引起混乱的、多余的和极少使用的符号,同时添加了一些新符号。因此,在UML中凝聚了面向对象领域中很多人的思想。这些思想并不是UML的开发者们发明的,而是开发者们依据最优秀的OO方法和丰富的计算机科学实践应验综合提炼而形成的。 (3)在UML标准中新加了模板(Stereotypes)、职责(Responsibilities)、扩展机制(Extensibility Mechanisms)、线程(Threads)、过程(Processes)、分布式(Distribution)、并发(Concurrency)、模式(Patterns)、合作(Collaborations)、活动图(Activity Diagram)等新概念,并清晰地区分类型(Type)、类(Class)和实例(Instance)、细化(Refinement)、接口(Interfaces)和组件(Components)概念。
UML的主要图形有那些
用例图: 用例图是从用户角度描述系统功能,并指出各功能的操作者。用例图是UML中最简单也是最复杂的一种图。说它简单是因为它采用了面向对象的思想,基于用户角度来描述系统,绘制非常容易,图形表示直观并且容易理解。说它复杂是因为用例图往往不容易控制,要么过于复杂,要么过于简单。用例图展示了一组用例、参与者以及它们之间的关系。
类图: 类图是UML面向对象中最常用的一种图,类图可以帮助人们更直观地了解一个系统的体系结构。通过关系和类表示的类图,可以图形化地描述一个系统的设计部分。
对象图: UML面向对象中对象图是类图的实例,几乎使用与类图完全相同的标识。它们的不同点在于对象图显示类的多个对象实例,而不是实例的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。
状态机图: 描述一个实体基于事件反应的动态行为,显示了该实体是如何根据当前所处的状态对不同的事件作出反应。
活动图: UML面向对象中活动图记录了单个操作或方法的逻辑,或者单个业务流程的逻辑。描述系统中各种活动的执行顺序,通常用于描述一个操作索要进行的各项活动的流程执行流程。同时,它也常被用来描述一个用例的处理流程,或者某种交互流程。
顺序图: 顺序图描述了对象之间动态的交互关系,主要体现对象之间进行消息传递的时间顺序。 顺序图由一组对象构成,每个对象分别带有一条竖线,称做生命线,它代表时间轴,时间沿竖线向下延伸。UML面向对象中顺序图描述了这些对象随着时间的推移项目之间交换消息的过程。消息用从一个对象的生命线指向另一个对象的生命线的水平箭头表示。
通信图: UML面向对象中通信图用于显示组件及其交互关系的空间组织结构,它不侧重于交互的顺序。通信图显示了交互中哥哥对象之间的组织交互关系以及对象彼此之间的链接。与顺序同不同,通信图显示的是对象之间的关系。另外,通信图没有将时间作为一个单独的维度,因此序列号就决定了信息及并发线程的顺序。它用带标号的箭头来描述特定的方案,以显示在整个方案过程中信息的移动情况。通信图主要用于描绘对象之间消息的移动情况来反映更具体的方案,显示对象及其交互关系的空间组织结构,而非交互的顺序。
构件图: 构件图,也称为组件图。构件图描述代码部件的物理结构及各部件之间的依赖关系,构件图有助于分析和理解部件之间的相互影响程度。从构件图中,可以了解各软件组件(如源代码文件或动态链接库)之间的编译机器和运行时依赖关系。使用构件图可以将系统划分为内聚组件并显示代码自身的结构。
部署图: 部署图,也称为配置图。UML面向对象中配置图描述系统中硬件和软件的物理配置情况和系统体系结构。 在配置图中,用结点表示实际的物理设备,如计算机和各种外部设备等,并根据它们之间的连接关系,将相应的结点连接起来,并说明其连接方式。在结点里面,说明分配给该结点上运行的可执行件或对象,从而说哪些软件单元被分配在哪些结点上运行。
8b13632762d0f7030bcb2dd70efa513d2697c544