UML用户指南(第2版)(UML方面最权威的一本著作)
基本信息
- 作者: (美)Grady Booch,James Rumbaugh,Ivar Jacobson [作译者介绍]
- 译者: 邵维忠 麻志毅 马浩海 刘辉
- 丛书名: 图灵计算机科学丛书
- 出版社:人民邮电出版社
- ISBN:7115148333
- 上架时间:2006-6-30
- 出版日期:2006 年6月
- 开本:16开
- 页码:362
- 版次:2-1
- 所属分类:
计算机 > 软件工程及软件方法学 > UML
教材 > 研究生/本科/专科教材 > 工学 > 计算机
教材 > 计算机教材 > 本科/研究生 > 计算机专业教材 > 计算机专业课程 > 软件工程
教材 > 教材汇编分册 > 高等理工
本版教材征订号:0044096532-5
内容简介回到顶部↑
本书是uml方面最权威的一本著作,三位作者是面向对象方法最早的倡导者,是uml的创始人。本版涵盖了uml 2.0。书中为具体的uml特征提供了参考,描述了一个使用uml进行开发的过程,旨在让读者掌握uml的术语、规则和语言特点,以及如何有效地使用这种语言,知道如何应用uml去解决一些常见的建模问题。本书由7个部分组成,而且每章都描述了一个特定uml特征的具体用法,其中大部分按入门、术语和概念、常见建模技术、提示和技巧的方式组织。本书还为高级开发人员提供了在高级建模问题中应用uml的一条非常实用的线索。
本书适合作为高等院校计算机及相关专业本科生或研究生“统一建模语言(uml)”课程的教材,也适用于进行软件生产、部署和维护的人员,特别适合于分析员、最终客户、架构师、开发人员、质量保证人员、构件库管理人员以及项目和程序管理者。
uml(统一建模语言)已经成为对软件密集型系统的制品进行可视化、详述、构造和文档化的工业标准。作为事实上的标准建模语言,uml便于项目各方之间的交流,并能减少相互之间的误解。uml2.0标准化进一步扩大了语言的范畴和生存能力。其内在的表达能力允许用户对从企业信息系统、基于web的分布式应用到实时嵌入式系统中的各种事物建模。
本书是权威的uml使用指南,uml语言的创始人在书中提供了uml核心内容的指南。本书从uml概述开始,然后逐步地通过在每一章中引入一些概念和表示法来解释该语言,此外还阐述了uml在诸多领域的各种复杂建模问题中的应用。
深入、全面的内容和丰富的示例使得本书前一版成为软件开发人员的必读著作,本版继承了这些优点,并对内容进行了全部更新,以反映uml 2.0在表示法和用法上的变化。通过这本必备指南,读者可以迅速地掌握工业标准建模语言的最新特性,并能将其应用到软件项目中。
本版最显著的变化
·添加一章介绍构件和内部结构,包括用于构造封装设计的一些相当重要的新能力。
·添加和更新了关于供接口、需接口、协作和uml外扩方面的内容。
·添加和更新了有关顺序图、活动图等方面的讨论。
·涵盖了uml 2.0规范所引入的其他修改。
本书适合作为高等院校计算机及相关专业本科生或研究生“统一建模语言(uml)”课程的教材,也适用于进行软件生产、部署和维护的人员,特别适合于分析员、最终客户、架构师、开发人员、质量保证人员、构件库管理人员以及项目和程序管理者。
uml(统一建模语言)已经成为对软件密集型系统的制品进行可视化、详述、构造和文档化的工业标准。作为事实上的标准建模语言,uml便于项目各方之间的交流,并能减少相互之间的误解。uml2.0标准化进一步扩大了语言的范畴和生存能力。其内在的表达能力允许用户对从企业信息系统、基于web的分布式应用到实时嵌入式系统中的各种事物建模。
本书是权威的uml使用指南,uml语言的创始人在书中提供了uml核心内容的指南。本书从uml概述开始,然后逐步地通过在每一章中引入一些概念和表示法来解释该语言,此外还阐述了uml在诸多领域的各种复杂建模问题中的应用。
深入、全面的内容和丰富的示例使得本书前一版成为软件开发人员的必读著作,本版继承了这些优点,并对内容进行了全部更新,以反映uml 2.0在表示法和用法上的变化。通过这本必备指南,读者可以迅速地掌握工业标准建模语言的最新特性,并能将其应用到软件项目中。
本版最显著的变化
·添加一章介绍构件和内部结构,包括用于构造封装设计的一些相当重要的新能力。
·添加和更新了关于供接口、需接口、协作和uml外扩方面的内容。
·添加和更新了有关顺序图、活动图等方面的讨论。
·涵盖了uml 2.0规范所引入的其他修改。
作译者回到顶部↑
本书提供作译者介绍
Grady Booch、James Rumbaugh和Ivar Jacobson是UML的创始人,均为软件工程界的权威,除了著有多部软件工程方面的著作之外,在对象技术发展上也有诸多杰出贡献,其中包括Booch方法、对象建模技术(OMT)和Objectory(OOSE)过程。目前Booch和Rumbaugh在IBM工作,Jacobson是独立咨询师。.
邵维忠北京大学信息科学技术学院教授、博士生导师,中国计算机学会理事。1970年毕业于北京大学数学力学系,1979~1983年在计算机科学技术系任教并攻读硕士学位。早期主要从事操作系统和软件工程领域的研究。1987~19.. << 查看详细
邵维忠北京大学信息科学技术学院教授、博士生导师,中国计算机学会理事。1970年毕业于北京大学数学力学系,1979~1983年在计算机科学技术系任教并攻读硕士学位。早期主要从事操作系统和软件工程领域的研究。1987~19.. << 查看详细
目录回到顶部↑
第一部分 入门.
第1章 为什么要建模
1.1 建模的重要性
1.2 建模原理
1.3 面向对象建模
第2章 uml介绍
2.1 uml概述
2.2 uml的概念模型
2.3 体系结构
2.4 软件开发生命周期
第3章 hello,world!
3.1 关键抽象
3.2 机制
3.3 制品
第二部分 对基本结构建模
第4章 类
4.1 入门
4.2 术语和概念
4.3 常用建模技术
4.4 提示和技巧
第1章 为什么要建模
1.1 建模的重要性
1.2 建模原理
1.3 面向对象建模
第2章 uml介绍
2.1 uml概述
2.2 uml的概念模型
2.3 体系结构
2.4 软件开发生命周期
第3章 hello,world!
3.1 关键抽象
3.2 机制
3.3 制品
第二部分 对基本结构建模
第4章 类
4.1 入门
4.2 术语和概念
4.3 常用建模技术
4.4 提示和技巧
译者序回到顶部↑
开发一个复杂的软件系统和编写一个简单的程序大不一样,其间的差别,借用Grady Booch的比喻,如同建造一座大厦和搭一个狗窝。大型的、复杂的软件系统开发是一项系统工程,必须按工程学的方法来组织软件生产,需要经过一系列的软件生命周期阶段。这是人们从软件危机中获得的最重要的教益。这一认识促使了软件工程学的诞生。虽然编程仍然是重要的,但是更具有决定意义的是系统建模。只有在分析和设计阶段建立了良好的系统模型,才有可能保证工程的正确实施。正是出于这一原因,在编程领域出现的许多新方法和新技术,总是很快地拓展到软件生命周期的分析与设计阶段。
面向对象方法正是经历了这样的发展过程,它首先在编程领域兴起,作为一种崭新的程序设计范型引起世人瞩目。继Smalltalk-80之后,20世纪80年代有一大批面向对象编程语言问世,标志着面向对象方法走向成熟和实用。此时,面向对象方法开始向系统设计阶段延伸,出现了一批早期的面向对象的设计(OOD)方法。到20世纪80年代末期,面向对象方法的研究重点转向面向对象的分析(OOA),并将OOA与OOD密切地联系在一起,出现了一批面向对象的分析与设计(OOA&D)方法。至1994年,公开发表并具有一定影响的OOA&D方法已达50余种。这种繁荣的局面表明面向对象方法已经深入到分析与设计领域。目前,大多数比较成熟的软件开发组织已经从分析、设计到编程、测试全面地采用面向对象方法,使面向对象毋庸置疑地成为当前软件领域的主流技术。
各种OOA&D方法都为面向对象理论与技术的发展做出了贡献。这些方法的主导思想以及所采用的主要概念与原则大体上是一致的,但是也存在不少差异。这些差异所带来的问题是:不利于OO方法向一致的方向发展,妨碍了技术交流,也给用户的选择带来困惑。在这种形势下,统一建模语言(Unified Modeling Language,UML)应运而生。
UML是在多种面向对象分析与设计方法相互融合的基础上形成的,其发展历史可以大致概括为四个阶段。最初的阶段是面向对象方法学家的联合行动,由G. Booch、J. Rumbaugh和I. Jacobson将他们各自的方法结合起来,形成UML 0.9。第二阶段是公司的联合行动,由十多家公司组成UML伙伴组织,共同提出UML 1.0和1.1,于1997年被对象管理组织(OMG)正式采纳作为建模语言规范。第三阶段是在OMG控制下对UML规范进行修订和改进,产生了UML 1.2、1.3、1.4和1.5等版本。目前所处的阶段是本世纪开始以来的重大的修订,推出了全新的版本UML 2.0。
UML用于对软件密集型系统进行可视化、详述、构造和文档化,也可以用于业务建模以及其他非软件系统的建模。UML定义了系统建模所需的概念并给出其可视化表示法,但是它并不涉及如何进行系统建模。因此它只是一种建模语言,而不是一种建模方法。UML是独立于过程的,就是说,它可以适应不同的建模过程。UML的出现使面向对象建模概念和表示法趋于统一和标准化。目前,UML已成为被广泛公认的工业标准,拥有越来越多的用户。现今的大部分面向对象系统的建模均采用UML。
G. Booch、J. Rumbaugh和I. Jacobson是UML的三位主要奠基人,被称为“三友”(three amigos),他们为UML的形成和发展做出了卓越贡献。在广大读者的殷切期待中,“三友”联名撰写的三本介绍UML以及Rational统一软件开发过程的著作(The Unified Modeling Language User Guide、The Unified Modeling Language Reference Manual和The Unified Software Development Process)于1999年由Addison-Wesley出版,深受广大读者的欢迎,被视为UML方面的权威性著作。在此之后,UML经历了一次重大的版本修订,UML 2.0问世。与UML 1.x系列相比,UML 2.0从结构到内容都有许多重要的变化。在这种背景下,“三友”对他们的上述三本著作进行了再创作,以适应UML2.0的新内容,作为第2版,于2005年陆续出版。
现在我们翻译的《UML用户指南(第2版)》(The Unified Modeling Language User Guide,Second Edition)是“三友”的上述三本著作中的一本,是阅读另外两本著作的基础。书中为如何使用UML提供了指南,旨在让读者掌握UML的术语、规则和惯用法,学会如何有效地使用UML 进行开发,如何应用UML去解决常见的建模问题。实际上,这不仅仅是一部深入介绍UML的技术文献,而且处处闪烁着作者在方法学方面的真知灼见,凝结了作者在软件工程、面向对象方法、构件技术等诸多领域的经验和智慧。该书语言生动、深入浅出、实例丰富、图文并茂。对于想学习和使用UML的广大读者,这是一本难得的好书。该书的宗旨并不是全面地介绍UML,也不是完整地介绍软件开发过程,这些内容属于“三友”的另外两本著作。
承担这样一本好书的翻译工作是一项愉快而又严肃的任务。尽管我们对UML进行过多年的研究,并且翻译过该书的第1版,但是在新版的翻译中仍不敢有驾轻就熟的心理。对翻译中遇到的一些疑难问题,往往要经过反复讨论,并通过对UML的进一步研究,才能获得比较准确的译法。这些研究工作得到国家自然科学基金项目60473064和国家重点基础研究发展计划(973计划)课题2005CB321805的支持。忠实于原文是我们始终遵循的宗旨!但是原著中存在着个别前后不一致或者与UML规范不一致的现象,译文中采用了两种处理方式:对比较明显的错误在译文中做了订正,并通过译者注加以说明;对不太明显的错误按原文翻译,并在译者注中指出疑点。
本书的技术术语译法,以国家标准GB/T11457-1995《信息技术 软件工程术语国家标准》和正在制定中的《统一建模语言术语标准》作为主要依据。书中绝大部分术语都遵照这两个标准化文件的译法。只有个别的几处例外,其原因在译者注中做了说明。
本书的翻译得到北京大学信息科学技术学院软件研究所许多同事的支持,其中许多问题曾与这些同事进行过深入的研究与探讨。软件研究所的面向对象建模工具课题组的教师和学生也多次参加讨论,贡献了宝贵意见。在此,向他们表示衷心感谢。同时,我们诚恳地希望广大读者对书中可能存在的疏漏和错误给予批评和指正。
译者
2006年5月于北京
面向对象方法正是经历了这样的发展过程,它首先在编程领域兴起,作为一种崭新的程序设计范型引起世人瞩目。继Smalltalk-80之后,20世纪80年代有一大批面向对象编程语言问世,标志着面向对象方法走向成熟和实用。此时,面向对象方法开始向系统设计阶段延伸,出现了一批早期的面向对象的设计(OOD)方法。到20世纪80年代末期,面向对象方法的研究重点转向面向对象的分析(OOA),并将OOA与OOD密切地联系在一起,出现了一批面向对象的分析与设计(OOA&D)方法。至1994年,公开发表并具有一定影响的OOA&D方法已达50余种。这种繁荣的局面表明面向对象方法已经深入到分析与设计领域。目前,大多数比较成熟的软件开发组织已经从分析、设计到编程、测试全面地采用面向对象方法,使面向对象毋庸置疑地成为当前软件领域的主流技术。
各种OOA&D方法都为面向对象理论与技术的发展做出了贡献。这些方法的主导思想以及所采用的主要概念与原则大体上是一致的,但是也存在不少差异。这些差异所带来的问题是:不利于OO方法向一致的方向发展,妨碍了技术交流,也给用户的选择带来困惑。在这种形势下,统一建模语言(Unified Modeling Language,UML)应运而生。
UML是在多种面向对象分析与设计方法相互融合的基础上形成的,其发展历史可以大致概括为四个阶段。最初的阶段是面向对象方法学家的联合行动,由G. Booch、J. Rumbaugh和I. Jacobson将他们各自的方法结合起来,形成UML 0.9。第二阶段是公司的联合行动,由十多家公司组成UML伙伴组织,共同提出UML 1.0和1.1,于1997年被对象管理组织(OMG)正式采纳作为建模语言规范。第三阶段是在OMG控制下对UML规范进行修订和改进,产生了UML 1.2、1.3、1.4和1.5等版本。目前所处的阶段是本世纪开始以来的重大的修订,推出了全新的版本UML 2.0。
UML用于对软件密集型系统进行可视化、详述、构造和文档化,也可以用于业务建模以及其他非软件系统的建模。UML定义了系统建模所需的概念并给出其可视化表示法,但是它并不涉及如何进行系统建模。因此它只是一种建模语言,而不是一种建模方法。UML是独立于过程的,就是说,它可以适应不同的建模过程。UML的出现使面向对象建模概念和表示法趋于统一和标准化。目前,UML已成为被广泛公认的工业标准,拥有越来越多的用户。现今的大部分面向对象系统的建模均采用UML。
G. Booch、J. Rumbaugh和I. Jacobson是UML的三位主要奠基人,被称为“三友”(three amigos),他们为UML的形成和发展做出了卓越贡献。在广大读者的殷切期待中,“三友”联名撰写的三本介绍UML以及Rational统一软件开发过程的著作(The Unified Modeling Language User Guide、The Unified Modeling Language Reference Manual和The Unified Software Development Process)于1999年由Addison-Wesley出版,深受广大读者的欢迎,被视为UML方面的权威性著作。在此之后,UML经历了一次重大的版本修订,UML 2.0问世。与UML 1.x系列相比,UML 2.0从结构到内容都有许多重要的变化。在这种背景下,“三友”对他们的上述三本著作进行了再创作,以适应UML2.0的新内容,作为第2版,于2005年陆续出版。
现在我们翻译的《UML用户指南(第2版)》(The Unified Modeling Language User Guide,Second Edition)是“三友”的上述三本著作中的一本,是阅读另外两本著作的基础。书中为如何使用UML提供了指南,旨在让读者掌握UML的术语、规则和惯用法,学会如何有效地使用UML 进行开发,如何应用UML去解决常见的建模问题。实际上,这不仅仅是一部深入介绍UML的技术文献,而且处处闪烁着作者在方法学方面的真知灼见,凝结了作者在软件工程、面向对象方法、构件技术等诸多领域的经验和智慧。该书语言生动、深入浅出、实例丰富、图文并茂。对于想学习和使用UML的广大读者,这是一本难得的好书。该书的宗旨并不是全面地介绍UML,也不是完整地介绍软件开发过程,这些内容属于“三友”的另外两本著作。
承担这样一本好书的翻译工作是一项愉快而又严肃的任务。尽管我们对UML进行过多年的研究,并且翻译过该书的第1版,但是在新版的翻译中仍不敢有驾轻就熟的心理。对翻译中遇到的一些疑难问题,往往要经过反复讨论,并通过对UML的进一步研究,才能获得比较准确的译法。这些研究工作得到国家自然科学基金项目60473064和国家重点基础研究发展计划(973计划)课题2005CB321805的支持。忠实于原文是我们始终遵循的宗旨!但是原著中存在着个别前后不一致或者与UML规范不一致的现象,译文中采用了两种处理方式:对比较明显的错误在译文中做了订正,并通过译者注加以说明;对不太明显的错误按原文翻译,并在译者注中指出疑点。
本书的技术术语译法,以国家标准GB/T11457-1995《信息技术 软件工程术语国家标准》和正在制定中的《统一建模语言术语标准》作为主要依据。书中绝大部分术语都遵照这两个标准化文件的译法。只有个别的几处例外,其原因在译者注中做了说明。
本书的翻译得到北京大学信息科学技术学院软件研究所许多同事的支持,其中许多问题曾与这些同事进行过深入的研究与探讨。软件研究所的面向对象建模工具课题组的教师和学生也多次参加讨论,贡献了宝贵意见。在此,向他们表示衷心感谢。同时,我们诚恳地希望广大读者对书中可能存在的疏漏和错误给予批评和指正。
译者
2006年5月于北京
前言回到顶部↑
统一建模语言(Unified Modeling Language,UML)是一种用于对软件密集型系统的制品进行可视化、详述、构造和文档化的图形语言。UML给出了一种描绘系统蓝图的标准方法,其中既包括概念性的事物(如业务过程和系统功能),也包括具体的事物(如用特定的编程语言编写的类、数据库模式和可复用的软件构件)。.
本书旨在教会读者如何有效地使用UML。
本书涵盖了UML2.0。
目标
在本书中,读者将获益于以下几点:
.明白UML是什么,不是什么,以及为什么UML对于开发软件密集型系统的过程非
常重要。
.掌握UML的术语、规则和惯用法,一般说来,还将学会如何有效地使用这种语言。
.知道如何应用UML去解决许多常见的建模问题。
本书为UML具体特征的使用提供了参考资料,但它不是一本全面的UML参考手册;全面的参考请参阅我们编写的The Unified Modeling Language Reference Manual第2版(Rumbaugh、Jacobson、Booch合著,Addison-Wesley出版公司2005年出版)1。
本书描述了使用UML进行开发的过程,但并没有提供对于开发过程的完整参考资料。开发过程是The Unified Software Development Process(Jacobson、Booch、Rumbaugh合著,Addison-Wesley出版公司1999年出版)9一书的重点。
最后,本书提供了如何运用UML去解决许多一般的建模问题的提示和技巧,但没有讲述如何去建模。本书类似于一本编程语言的用户指南,它教用户如何使用语言,而不教用户如何编程。
读者对象
进行软件开发、部署和维护的人员均可使用UML。本书主要针对用UML进行建模的开发组成员,但它也适用于为了理解、建造、测试和发布一个软件密集型系统而一起工作的人员,他们要阅读这些模型。虽然这几乎包含了软件开发组织中的所有角色,但本书特别适
合下述人员阅读:分析员和最终客户(他们要详细说明系统应该具有的结构和行为)、体系结构设计人员(他们设计满足上述需求的系统)、开发人员(他们把体系结构转换为可执行的代码)、质量保证人员(他们检验并确认系统的结构和行为)、库管理人员(他们创建构件并对构件进行编目)、项目及程序管理者(他们一般是把握方向的领导者,要进行有序的管理,并合理地分配资源,以保证系统的成功交付。
使用本书的人员应该具有面向对象概念的基本知识。如果读者具有面向对象编程的经验或懂得面向对象的方法,就能更容易掌握本书内容,但这并不是必需的。
怎样使用本书
初次接触UML的开发人员最好按顺序阅读本书。第2章提出了UML的概念模型,读者应特别予以注意。所有的章节都是这样组织的——每一章建立在前面各章的内容之上,循序渐进。
至于正在寻求用UML解决常见的建模问题的有经验的开发人员,可以按任意顺序阅读本书。读者应该特别注意在各章中提到的常见建模问题。
本书的组织及特点
本书旨在教会读者如何有效地使用UML。
本书涵盖了UML2.0。
目标
在本书中,读者将获益于以下几点:
.明白UML是什么,不是什么,以及为什么UML对于开发软件密集型系统的过程非
常重要。
.掌握UML的术语、规则和惯用法,一般说来,还将学会如何有效地使用这种语言。
.知道如何应用UML去解决许多常见的建模问题。
本书为UML具体特征的使用提供了参考资料,但它不是一本全面的UML参考手册;全面的参考请参阅我们编写的The Unified Modeling Language Reference Manual第2版(Rumbaugh、Jacobson、Booch合著,Addison-Wesley出版公司2005年出版)1。
本书描述了使用UML进行开发的过程,但并没有提供对于开发过程的完整参考资料。开发过程是The Unified Software Development Process(Jacobson、Booch、Rumbaugh合著,Addison-Wesley出版公司1999年出版)9一书的重点。
最后,本书提供了如何运用UML去解决许多一般的建模问题的提示和技巧,但没有讲述如何去建模。本书类似于一本编程语言的用户指南,它教用户如何使用语言,而不教用户如何编程。
读者对象
进行软件开发、部署和维护的人员均可使用UML。本书主要针对用UML进行建模的开发组成员,但它也适用于为了理解、建造、测试和发布一个软件密集型系统而一起工作的人员,他们要阅读这些模型。虽然这几乎包含了软件开发组织中的所有角色,但本书特别适
合下述人员阅读:分析员和最终客户(他们要详细说明系统应该具有的结构和行为)、体系结构设计人员(他们设计满足上述需求的系统)、开发人员(他们把体系结构转换为可执行的代码)、质量保证人员(他们检验并确认系统的结构和行为)、库管理人员(他们创建构件并对构件进行编目)、项目及程序管理者(他们一般是把握方向的领导者,要进行有序的管理,并合理地分配资源,以保证系统的成功交付。
使用本书的人员应该具有面向对象概念的基本知识。如果读者具有面向对象编程的经验或懂得面向对象的方法,就能更容易掌握本书内容,但这并不是必需的。
怎样使用本书
初次接触UML的开发人员最好按顺序阅读本书。第2章提出了UML的概念模型,读者应特别予以注意。所有的章节都是这样组织的——每一章建立在前面各章的内容之上,循序渐进。
至于正在寻求用UML解决常见的建模问题的有经验的开发人员,可以按任意顺序阅读本书。读者应该特别注意在各章中提到的常见建模问题。
本书的组织及特点


点击看大图







加载中...
