资源预览内容
第1页 / 共364页
第2页 / 共364页
第3页 / 共364页
第4页 / 共364页
第5页 / 共364页
第6页 / 共364页
第7页 / 共364页
第8页 / 共364页
第9页 / 共364页
第10页 / 共364页
亲,该文档总共364页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
公开UML参考手册65UML参考手册目录译者序i前言iv第一部分 背景知识1第 1 章 UML综述11.1 UML简介11.2 UML 的历史11.2.1 面向对象的开发方法11.2.2 统一工作21.2.3 标准化31.2.4 核心组员31.2.5 统一的意义31.3 UML的目标41.4 UML概念域51.5 表达式和图表语法6第 2 章 模型的性质与目标72.1 什么是模型72.2 模型的用途72.3 模型的层次82.4 模型内容102.5 模型说明了什么?11第二部分 基本概念13第 3 章 UML初览143.1 UML视图143.2 静态视图153.3 用例视图163.4 交互视图173.4.1 顺序图173.4.2 协作图183.5 状态机视图193.6 活动视图203.7 物理视图213.8 模型管理视图243.9 扩展组件253.10 各种视图间的关系26第 4 章 静态视图274.1 概述274.2 类元274.3 关系294.4 关联304.5 泛化334.5.1 继承344.5.2 多重继承344.5.3 单分类和多重分类354.5.4 静态与动态类元354.6 实现364.7 依赖374.8 约束384.9 实例394.10 对象图39第 5 章 用例视图415.1 概述415.2 参与者415.3 用例42第 6 章 状态机视图446.1 概述446.2 状态机446.3 事件446.4 状态466.5 转换476.6 组成状态50第 7 章 活动视图557.1 概述557.2 活动图557.3 活动和其他图57第 8 章 交互视图588.1 概述588.2 协作588.3 交互588.4 顺序图598.5 激活598.6 合作图608.7 模板62第 9 章 物理视图649.1 概述649.2 构件649.3 节点65第 10 章 模型管理视图6610.1 概述6610.2 包6610.3 包间的依赖关系6610.4 访问与引入依赖关系6710.5 模型和子系统67第 11 章 扩展机制6911.1 概述6911.2 约束6911.3 标签值7011.4 构造型7111.5 裁制UML72第 12 章 UML环境7312.1 概述7312.2 语义职责7312.3 表示法职责7412.4 程序语言职责7412.5 使用建模工具建模7512.5.1 工具问题7512.5.2 工作进展过程中产生的不一致模型7512.5.3 空值和未详细说明的值75第三部分 参考资料77第 13 章 术语大全78第 14 章 标准元素334第四部分 附录343附录 UML元模型344索引347译者序随着计算机硬件性能的不断提高和价格的不断下降,其应用领域也在不断扩大。人们在越来越多的领域希望把更多、更难的问题交给计算机去解决。这使得计算机软件的规模和复杂性与日俱增,从而使软件技术不断地受到新的挑战。60年代软件危机的出现就是因为系统的复杂性超出了人们在当时的技术条件下所能驾御的程度。此后在软件领域,从学术界到工业界,人们一直在为寻求更先进的软件方法与技术而奋斗。每当出现一种先进的方法与技术,都会使软件危机得到一定程度的缓和。然而这种进步又立刻促使人们把更多、更复杂的问题交给计算机去解决。于是又需要更先进的方法与技术。开发一个具有一定规模和复杂性的软件系统和编写一个简单的程序大不一样。其间的差别,借用G. Booch的比喻,如同建造一座大厦和搭一个狗窝的差别。大型的、复杂的软件系统的开发是一项工程,必须按工程学的方法组织软件的生产与管理,必须经过分析、设计、实现、测试、维护等一系列的软件生命周期阶段。这是人们从软件危机中获得的最重要的教益。这一认识促使了软件工程学的诞生。编程仍然是重要的,但是更具有决定意义的是系统建模。只有在分析和设计阶段建立了良好的系统模型,才有可能保证工程的正确实施。正是由于这一原因,许多在编程领域首先出现的新方法和新技术,总是很快地被拓展到软件生命周期的分析与设计阶段。面向对象方法正是经历了这样的发展过程,它首先在编程领域兴起,作为一种崭新的程序设计范型引起世人瞩目。继Smalltalk-80之后,20世纪80年代又有一大批面向对象的编程语言问世,标志着面向对象方法走向成熟和实用。此时,面向对象方法开始向系统设计阶段延伸,出现了如Booch86、GOOD(通用面向对象的开发)、HOOD(层次式面向对象的设计)、OOSD(面向对象的结构设计)等一批OOD(“面向对象的设计”或“面向对象的开发”的缩写)方法。但是这些早期的OOD方法不是以面向对象的分析(OOA)为基础的,而主要是基于结构化分析。到1989年之后,面向对象方法的研究重点开始转向软件生命周期的分析阶段,并将OOA和OOD密切地联系在一起,出现了一大批面向对象的分析与设计(OOA&D)方法,如Booch方法、 Coad/Yourdon方法、 Firesmith方法、Jacobson的OOSE、 Martin/Odell方法、 Rumbaugh等人的OMT、 Shlaer/Mellor方法等等。截至1994年,公开发表并具有一定影响的OOA & D方法已达50余种。这种繁荣的局面表明面向对象方法已经深入到分析与设计领域,并随着面向对象的测试、集成与演化技术的出现而发展为一套贯穿整个软件生命周期的方法体系。目前,大多数较先进的软件开发组织已经从分析、设计到编程、测试阶段全面地采用面向对象方法,使面向对象无可置疑地成为当前软件领域的主流技术。各种面向对象的分析与设计方法都为面向对象理论与技术的发展作出了贡献。这些方法各有自己的优点和缺点,同时在各自不同范围内拥有自己的用户群。各种方法的主导思想以及所采用的主要概念与原则大体上是一致的,但是也存在不少差异。这些差异所带来的问题是,不利于面向对象方法向一致的方向发展,也会给用户的选择带来一些困惑。为此,Rational公司的G. Booch和J. Rumbaugh决定将他们各自的方法结合起来成为一种方法。1995年10月发布了第1个版本,称作“统一方法”(Unified Method 0.8)。此时OOSE的作者I. Jacobson也加入了Rational公司,于是也加入了统一行动。1996年6月发布了第2个版本UML0.9。鉴于统一行动的产物只是一种建模语言,而不是一种建模方法,(因为不包含过程指导),所以自0.9版起,改称“统一建模语言”(Unified Modeling Language)。在此过程中,由Rationl公司发起成立了UML伙伴组织。开始时有12家公司加入,共同推出了UML1.0版,并于1997年1月提交到对象管理组织(OMG)申请作为一种标准建模语言。此后,又把其他几家分头向OMG提交建模语言提案的公司扩大到UML伙伴组织中,并为反映他们的意见而对UML进一步做了修改,产生了UML1.1版。该版本于1997年11月4日被OMG采纳。此后UML还在继续改进,目前最新的版本是UML1.3。关于UML的历史、发起的动机、目标、权衡的问题等,这里不想做更多的介绍,因为读者很快会从UML用户指南的前言中看到更详细的叙述。这里想着重指出的是以下三点:第一点是UML的三位发起人G. Booch、J. Rumbaugh和I. Jacobson是从事面向对象研究的著名专家,他们各自的方法和著作在该领域均具有很大的影响;第二点是众多的大公司加入了UML阵营,为UML的制定和推广提供了强有力的支持;第三点是UML经过数年的努力终于被OMG采纳,成为该组织承认的一种标准建模语言。总之,UML是吸收多种方法的成果、凝结许多组织和个人智慧的产物。UML是一种用于对软件密集型系统进行可视化、详述、构造和文档化的建模语言,主要适用于分析与设计阶段的系统建模。UML最主要的特点是表达能力丰富。因为它从各种OOA&D方法中吸取了大量的概念,并在“UML语义”、“UML表示法指南”、“对象约束语言规约”等UML文献中对这些概念的语义、图形表示法和使用规则作了完整而详细的定义。可以说,UML对系统模型的表达能力超出了以往任何一种OOA&D方法。当然,随之而来的问题是,它的复杂性也超出了以往任何一种方法。UML的问世引起了计算机软件界的广泛重视,因为它代表了一种积极的方向多种方法相互借鉴、相互融合、趋于一致、走向标准化。建模语言的标准化将为软件开发商及其用户带来诸多便利。因此,在美国等国家已有大量的软件开发组织开始用UML进行系统建模。学习和使用UML已经成为一种潮流。我国软件界对UML也相当关注。许多研究人员和技术人员已在数年前开始学习和研究UML。更有许多人想学习UML,但苦于找不到合适的书籍。由于UML的复杂性,仅通过UML的标准文献来学习和使用它确实不是一件轻松的事。以往国内外也曾发表过一些介绍或评述UML的著作或论文,但是与UML的丰富内容相比,这些介绍远不能满足读者的要求。值得高兴的是,UML的三位主要设计者G. Booch、J. Rumbaugh和I. Jacobson现在已亲自撰写了这套详细阐述UML的著作,由Addison Wesley公司于1999年出版。这套著作对UML进行了详细、深入而准确的介绍和论述,而且语言生动、深入浅出、实例丰富、图文并茂。这是一套教会读者掌握和使用UML的教材和指导手册,而不是枯燥的标准文献。对于想学习和使用UML的广大读者,这是一套难得的好书。为了使中国的读者能够更好地从中受益,我们在机械工业出版社的恳切建议下,分头翻译了这三本书,即UML用户指南、UML参考手册和统一软件开发过程。三本原著都是由这三位作者合著,既各自独立、又有很强的内在联系。其中UML用户指南介绍了UML的基础知识,包括UML的术语、规则和语言特点,以及如何运用该语言去解决常见的建模问题,初学者学习UML最好从阅读该书开始。UML参考手册对UML的组成和概念作了详细的介绍,包括这些概念的语义、语法、表示法和用途,是一本适合软件专业人员使用的方便而全面的参考读物。统一软件开发过程给出了一种以UML作为建模语言进行软件开发的过程指导。其内容不是UML固有的组成部分,因为被OMG采纳的UML只是一种建模语言,并不包含过程指导。实际上,UML是独立于过程的,可以用于不同的软件过程。但是该书介绍的软件开发过程是三位作者在开发UML时一直在头脑中思考的,因此很切合UML的特点。该书对于如何运用UML的概念进行软件开发提供了详细指导,适合软件专业人员使用。鉴于UML本身以及这套著作的重要意义,译者在翻译这些著作时采取了特别慎重和严谨的态度,力求准确和通顺。在翻译过程中,一个重要问题是要使这套书中的专业术语的中文译法保持一致。这三本书的译者以往曾分别开展过一些与UML有关的研究和写作,对有些术语的译法互有差异。本次翻译工作中,所有译者在机械工业出版社的组织下进行了多次讨论、研究和交流,首先对所有专业术语的译法统一意见,达成共识。其中某些术语的译法颇难定夺:既要确切反映英文本意,又要符合中文习惯
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号