欢迎来到天天文库
浏览记录
ID:44962308
大小:1.29 MB
页数:73页
时间:2019-11-06
《第7章 统一建模语言(UML)2》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第7章统一建模语言UML面向对象方法统一建模语言UMLUML模型中9种类型的图面向对象的分析与设计过程主要内容面向对象方法与结构化方法相比,突出的优势体现在以下几个方面。(1)对问题空间的理解更直接,更符合人们认识客观事物的思维规律。结构化方法把现实世界映射成数据流和加工,但它把数据流和控制流分开讨论,二者有时难以统一,而且数据流方法主要构造的还是过程模型,它描述数据结构的能力仍然很弱,一般还需要另外使用诸如E-R图之类的工具来建立数据的逻辑模型,造成了过程和数据的分离。一、面向对象方法而面向对象方法把二者统一于对象内部,加工
2、过程映射为对象的操作,数据映射为对象的属性,任何数据和与这些数据相关的过程都是与相关的对象共同生存的,这样增强了模型的一致性和准确性。(2)系统分析和系统设计使用同一模型,不存在过渡困难。结构化方法的另一个主要问题是从分析过渡到设计有双重负担,一是构造方法的转换;一是添加实施细节。而在面向对象方法中,从分析到设计使用相同的基本表示,对象模型是整个开发过程中的一个统一的表示工具。好处不仅是减少了各个阶段模型之间的转换,较好地支持模型到代码的正向工程及代码到模型的逆向工程,而且可以使需求的变化较为容易地同步到模型和代码中。(3)开
3、发出来的信息系统从本质上具有更强的生命力。需求的不断变化是我们不得不接受的事实。结构化方法基于功能分析与功能分解,而用户的需求变化往往是功能或流程的变化,因此开发出来的系统是不稳定的。而问题空间的对象最稳定,它们对潜在变化最不敏感。面向对象方法使代表共性的对象稳定下来,而把不稳定的东西隐藏起来。这样可避免增加复杂性,系统对环境的适应和应变能力也随之增强。(4)维护成本降低。采用结构化方法开发出来的系统是模块层次结构的,而模块的划分具有随意性,不同的开发人员可能分解成不同的软件结构。这样的系统维护工作相当困难。面向对象方法中的类
4、是更理想的模块机制,其独立性好,类对外的接口设计好后,类内部的修改不会影响到其他类。“工欲善其势,必先利其器”。20世纪80年代末,一些方法论学者、研究人员和专家就开始提出面向对象的表示符号和方法。其中具有代表性的有科德一约顿(Coad-Yourdon)的OOA&OOD、格雷迪·布奇(GradyBooch)的Booch方法、吉姆·朗姆恩(JimRumbaugh)的对象建模技术(OMT)、艾瓦·雅格布森(IvarJacobson)的面向对象软件工程(OOS)等。二、统一建模语言UMLUML统一了面向对象建模的基本概念、术语及其图
5、形符号,为不同领域的人员提供一个交流的标准,它不仅可以应用于软件开发从分析到测试的各个阶段,还可以支持多种领域的建模,如信息系统、嵌人式实时系统、机械系统、商业系统等。就像数据流图作为结构化分析的建模语言,模块结构图作为结构化总体设计的建模语言一样,UML是面向对象的系统分析与设计的建模语言,不要将它理解为一种方法论或是一种开发过程。UML定义了以下几种视图,从不同角度反映系统:用例视图(usecaseview)描述系统的功能需求,是最终用户、分析人员和测试人员看到的系统行为。该视图的静态方面(即系统要实现的功能)由用例图(u
6、secasediagram)表现;动态方面(即功能实现的过程)由交互图(interactiondiagram)、状态图(statechartdiagram)和活动图(activitydiagram)表现。设计视图(designview)表达系统的基本逻辑结构,描述问题以及问题的逻辑解决方案,包含了类、接口和协作。该视图的静态方面采用类图(classdiagram)和对象图(objectdiagram)表现,动态方面由交互图、状态图和活动图表现。进程视图(processview)包含了形成系统并发与同步机制的线程和进程,该视图用
7、于系统性能、可伸缩性和吞吐量的设计。在UML中,对进程视图的静态方面和动态方面的表现与设计视图相同,但注重描述线程和进程的主动类。实现视图(deploymentview)表达软件成分的组织结构,包含用于装配与发布物理系统的构件和文件。该视图主要用于系统发布的配置管理,其中静态方面由构件图(componentdiagram)表现,动态方面由交互图、状态图和活动图表现。实施视图(deploymentview)包含了形成系统硬件拓扑结构的节点。这种视图主要描述组成物理系统的部件的分布、交付和安装。该视图主要由实施图(deployme
8、ntdiagram)表现。三、UML模型中9种类型的图1.用例图用例实际上就是从用户的角度去定义具有交互过程的系统功能。每个功能与一个或多个参与者(actor)相连接。参与者是指处于系统之外,需要使用用例的人或事物。一个系统的用例一般有多个,用例图就是用来组织这些用例的。下面
此文档下载收益归作者所有