统一建模语言UML课件-构件图
- 格式:pptx
- 大小:677.73 KB
- 文档页数:32


《实用软件工程入门》
4 统一建模语言 —— UML
4.1 UML的基本概念
1997年11月国际对象管理组织(Object Manager Group,OMG)通过了UML 1.0版,这标志着一种建立在先进的面向对象技术基础上的建模语言标准诞生了。
4.1.1 UML概念
统一建模语言UML(Unified Modeling Language)是一种支持面向对象技术的建模语言,能够清晰地描述系统中的对象及其相互关系。
UML结合了当时三种流行的面向对象的建模方法:(1)Grady Booch的“Booch方法”;(2)James Rumbuagh的对象建模技术(OMT);(3)Ivar Jacobson的面向对象软件工程方法(OOSE)。
如今,UML已经是许多软件公司用于软件开发的主要工具之一,成为了现代国际软件业的标准。
4.1.2 建模的目标和本质
由于客观世界的复杂性,导致了用户不能准确地理解和描述一个将要开发的系统。通过建模可以使用户和开发者更好地理解系统本身。
UML系统建模的本质就是要为用户以及项目小组成员之间搭建一个交流的平台,如果没有这样一个平台,那么每个开发小组的成员只能按照自己的理解来构建这个系统。也就是说,通过系统建模可以有效避免个人理解的偏差对整个系统的影响。
一般的系统建模至少完成以下4个目标:
(1) 帮助项目开发小组把系统的抽象结构可视化;
(2) 帮助说明系统的结构和行为;
(3) 提供一个指导建立系统的模版;
(4) 记录项目开发小组的决策文档。
总之,UML不仅提供了用户和开发者都能理解的语言,更重要的是它可以提供一种与软件实现方法相一致的表示方法,即面向对象技术的表示法。
4.1.3 UML在软件开发中的作用
从严格意义上讲,UML并不是一个系统开发的方法,而是一种表示方法。它可以用来确定、显示和记录软件系统及其开发过程,而且通过UML建立的模型是十分精确和完整的。
对UML统一建模的认识
通过一学期的学习,现将自己的一些认识总结如下:
一、UML的发展历程
公认的面向对象建模语言出现于70年代中期。从1989年到1994年,其数量从不到十种增加到了五十多种。在众多的建模语言中,语言的创造者努力推崇自己的产品,并在实践中不断完善。但是,OO方法的用户并不了解不同建模语言的优缺点及相互之间的差异,因而很难根据应用特点选择合适的建模语言,于是爆发了一场"方法大战"。90年代中,一批新方法出现了,其中最引人注目的是Booch
1993、OOSE和OMT-2等。Booch是面向对象方法最早的倡导者之一,他提出了面向对象软件工程的概念。1991年,他将以前面向Ada的工作扩展到整个面向对象设计领域。Booch 1993比较适合于系统的设计和构造。Rumbaugh等人提出了面向对象的建模技术(OMT)方法,采用了面向对象的概念,并引入各种独立于语言的表示符。这种方法用对象模型、动态模型、功能模型和用例模型,共同完成对整个系统的建模,所定义的概念和符号可用于软件开发的分析、设计和实现的全过程,软件开发人员不必在开发过程的不同阶段进行概念和符号的转换。OMT-2特别适用于分析和描述以数据为中心的信息系统。
jacobson于1994年提出了OOSE方法,其最大特点是面向用例(Use-Case),并在用例的描述中引入了外部角色的概念。用例的概念是精确描述需求的重要武器,但用例贯穿于整个开发过程,包括对系统的测试和验证。OOSE比较适合支持商业工程和需求分析。此外,还有Coad/Yourdon方法,即著名的OOA/OOD,它是最早的面向对象的分析和设计方法之一。该方法简单、易学,适合于面向对象技术的初学者使用,但由于该方法在处理能力方面的局限,目前已很少使用。概括起来,首先,面对众多的建模语言,用户由于没有能力区别不同语言之间的差别,因此很难找到一种比较适合其应用特点的语言;其次,众多的建模语言实际上各有千秋;第三,虽然不同的建模语言大多类同,但仍存在某些细微的差别,极大地妨碍了用户之间的交流。因此在客观上,极有必要在精心比较不同的建模语言优缺点及总结面向对象技术应用实践的基础上,组织联合设计小组,根据应用需求,取其精华,去其糟粕,求同存
面向对象:面向对象技术是一种以对象为基础,以事件或消息来驱动对象执行处理的程序设计技术。
对象:面向对象系统的基本构架块,是一些相关变量和方法的软件集。
类:具有相同属性和操作的一组对象的组合。
消息与事件:消息是描述事件发生的信息,是对象间相互联系和相互作用的方式。
事件是指一种预先定义而由用户或系统发出动作。
面向对象三要素:封装,就是把对象的状态和行为绑到一起的机制,使对象形成一个独立整体,隐藏对象内部细节。
继承:连接类与类之间的层次模型,指特殊类的对象拥有一般类的属性和行为。
多态:两个或多个属性不同的对象对于同一个消息或方向调用所做出的不同响应的能力。
UML:是软件开发和系统建模的标准工具,该统一建模语言用于软件系统的可视化,说明,
构建和建立文档等方面。
UML包括视图有静态试图,用例视图,交互试图,实现试图,状态机试图,活动试图,物
理视图,和模型管理试图。
图:UML作为一种可视化的建模语言,主要形式是将模型进行图形化展示
1. 用例图:描述系统提供的一个功能单元,主要目的是帮助开发团队以一种可视化方式理解系统功能需求。
2. 类图:显示系统静态结构,表示不同的实体(人,事物,数据)是如何彼此相互关联的。
3. 序列图:显示一个具体用例或者用例一部分的一个详细流程。不仅可以显示流程中不同对象之间调用关系,还可以详细显示对不同对象不同调用。
4. 状态图:表示某个类所处的不同状态以及该类在这些状态中转换过程。
5. 活动图:表示两个或多个对象之间处理某个活动的过程控制流程。
6. 构件图:提供物理视图,根据系统代码显示系统代码的整个物理结构。
7. 部署图:表示该软件系统如何部署到硬件环境中,显示了系统中不同构件在何处物理的运行,以及彼此通信。
用例视图:由参与者,用例以及他们之间关系构成的用于描述系统功能的状态视图称为用例图。构成要素:参与者,参与者间的关系,系统边界。
类图:显示系统静态结构,系统静态结构成了系统的概念基础。组成:类名,累的属性,类的操作。
UML(UnifiedModelingLanguage统⼀建模语⾔)
UML(Unified Modeling Language 统⼀建模语⾔),⼜称标准建模语⾔。是⽤来对软件密集系统进⾏可视化建模的⼀种语⾔。
UML是⼀种⾯向对象的建模语⾔,它可以实现⼤型复杂系统各种成分描述的可视化、说明并构造系统模型,以及建⽴各种所需的⽂档,是⼀
种定义良好、易于表达、功能强⼤且普遍适⽤的建模语⾔。
UML基本内容详述
(1)视图 视图是表达系统的某⼀⽅⾯特征的UML建模元素的⼦集;试图并不是图,它是由⼀个或多个图组成的对系统某个⾓度的抽象。1)⽤例视图(核⼼视图)
强调从⽤户的⾓度看到的或需要的系统功能。2)逻辑视图
该视图⽤于描述系统内实现的逻辑功能,展现系统的静态或结构组成及特征。
3)组件视图
该视图从系统实现的⾓度来描述模型对象间的关系。
4)配置视图
该视图⽤于说明系统的物理配置。
(2)图表 图表是描述视图内容的图。1)⽤例图
⽤于描述外部项与系统提供的使⽤事件之间的联系。⼀个使⽤事件是系统提供的功能的具体描述,是系统分析⼈员从⽤户⾓度描述系统
的功能,是功能与功能之间以及功能与⽤户之间的关系。使⽤事件定义了系统的功能需求。简单理解:⽤来描述系统的功能。
2)类图
⽤于描述系统的静态结构。类可以⽤不同⽅式连接,主要包括联合、依赖、独⽴和包装。⼀个系统⼀般有多张类图,⼀个类可在不同的
视图中出现。
3)对象图
⽤于表述系统在某个时刻的静态结构。对象图也可作为协作图的⼀部分,说明⼀组对象之间的动态协作关系。
对象图与类图的区别:对象图表⽰的是类中的许多对象实例,⽽不是类本⾝。
4)状态图
⽤于说明类中的对象可能具有的状态,以及由时间引起的状态的改变。
简单理解:描述了系统元素的状态条件和响应。
5)顺序图(时序图)
⽤于描述对象间的动态协作关系。表达了对象间发⾏消息的时序,同时也表达出对象间的相互作⽤,以及当系统执⾏到某个特定位置时