前 言
20世纪90年代,人们推出了许多不同的面向对象设计和分析方法。这些不同的面向对象的方法具有不同的建模符号体系,这些不同的符号体系极大地妨碍了软件的设计人员、开发人员和用户之间的交流。因此,有必要在分析、比较不同的建模语言以及总结面向对象技术应用实践的基础上,建立一个标准的、统一的建模语言。UML就是这样的建模语言,UML在1997年11月17日被对象管理组织OMG采纳为基于面向对象技术的标准建模语言。统一建模语言UML不仅统一了面向对象方法中的符号表示,而且在其基础上进一步发展,并最终被统一为被人们所接受的标准。
UML相当适合于以体系结构为中心的、用例驱动的、迭代式和渐增式的软件开发过程,其应用领域颇为广泛,除了可用于具有实时性要求的软件系统建模以及处理复杂数据的信息系统建模外,还可用于描述非软件领域的系统。
UML适用于系统开发过程中从需求分析到完成测试的各个阶段:在需求分析阶段,可以用用户模型视图来捕获用户需求;在分析和设计阶段,可以用静态结构和行为模型视图来描述系统的静态结构和动态行为;在实现阶段,可以将UML模型自动转换为用面向对象程序设计语言实现代码。
本书主要内容
本书以渐进的顺序来介绍UML,从需求分析开始,然后再构建和部署系统。
第1章介绍UML入门的基础知识。本章首先介绍面向对象的分析方法和设计方法,介绍现实软件开发模式所面临的问题,然后介绍面向对象分析的工具和方法——UML,最后简单介绍统一过程RUP的知识。
第2章介绍什么是用例图,主要包含用例图的构成、用例间的关系、用例描述以及如何使用用例图建模等内容。
第3章介绍UML中类图的基本概念,重点介绍了类图的概念、表示方法、接口以及类图中常用的几种关系,如泛化关系、关联关系、依赖关系、实现关系以及聚合关系和组合关系等。
第4章介绍对象图和包图的相关内容,包括对象图的概念、表示方法和类图的区别以及包图的概念、表示方法、包之间的关系与类图的区别等。
第5章介绍活动图的概念、组成元素和控制结点,还介绍了活动图与状态图之间的不同点。
第6章介绍顺序图的作用、定义、构成、使用以及创建方法等内容。
第7章介绍系统交互的动态视图——通信图,包括通信图的含义、构成、消息对象、消息迭代以及顺序图和通信图的比较等。
第8章介绍与时间图有关的内容,包括时间图的构成、时间约束和时间图的替换表示法等。
第9章介绍UML中属于行为图之一的状态机图,重点介绍状态机图的构成、标记符、转移、组合状态以及如何建模等内容。
第10章介绍交互结构图与交互概况图的内容。
第11章介绍组件图和部署图的概念、构成、组件间和部署间的关系以及如何建模等。
第12章介绍RUP的二维空间、核心工作流程以及十大开发要素等。
第13章介绍如何将UML模型映射到关系型数据库,其内容主要涉及模型结构的映射和模型功能的映射两部分。
第14章介绍UML的核心语义以及UML的体系结构。
第15章介绍对象约束语言的概念,对象约束语言的结构、语法、表达式和数据类型等内容,最后介绍集合和约束的使用。
第16章以面向对象的代表语言——C++为例介绍UML模型转换为实现的原理和方法,包括实现类,泛化的实现、类之间各种关系的实现以及接口等。
第17章介绍如何使用UML进行建模绘制不同的图,如用例图、类图、顺序图和组件图等。
第18章介绍如何使用UML绘制网上购物系统的相关模型图,通过本章的介绍,使读者更全面、更快速地了解UML中各种模型图的功能和建模步骤。
本书特色
本书是一本完整介绍UML在软件设计和开发过程中应用的教程,在编写过程中我们精心设计了丰富的实例,以帮助读者顺利学习本书内容。
? 理论紧密结合实践 全书提供了3个完整的分析案例,通过示例分析、设计过程讲解UML的应用知识。
? 图文并茂 UML理论知识比较抽象,本书绘制了大量UML图,帮助读者直观理解抽象内容。
? 网站互动 我们在网站上提供了本书案例和扩展内容的资料链接,便于读者继续学习相关知识;授课教师也可以下载本书教学课件和其他教学资源。
? 思考与练习 简答题测试读者对各章内容的掌握程度;分析题理论结合实际,引导读者深入掌握UML理论知识。
读者对象
本书在多家院校成熟教案以及自编教材的基础上整合编写,全面介绍使用UML进行软件设计、分析与开发的知识,适合作为普通高校计算机专业教材,也可以作为软件设计人员和开发人员的参考资料。
本书作者均从事软件分析、开发和教学工作,拥有丰富的UML开发案例。参与本书编写的除了封面署名人员外,还有王敏、马海军、祁凯、孙江玮、田成军、刘俊杰、赵俊昌、王泽波、张银鹤、刘治国、何方、李海庆、王树兴、朱俊成、康显丽、崔群法、孙岩、倪宝童、王立新、王咏梅、辛爱军、牛小平、贾栓稳、郭磊、杨宁宁、郭晓俊、方宁、王黎、安征、亢凤林、李海峰等人。由于时间仓促、水平有限,疏漏之处在所难免,欢迎读者朋友登录清华大学出版社的网站www.tup.com.cn与我们联系,帮助我们改进提高。
编 者