基本信息

【插图】

编辑推荐
大量的范例讲解,丰富的扩展练习,使读者快速进入项目实战状态
详解Rational Rose软件的操作方法,使UML建模过程变得轻松异常
内容简介
数学书籍
UML是以面向对象的方式来描述任何类型的系统,应用领域非常广泛,其中最常用的是建立软件系统的模型,本书依据统一建模语言 UML与面向对象编程语言,结合实际案例,深入全面地讲解了 UML的基本概念和建模方法。
《UML统一建模基础教程》共 14章,前 4章介绍了建模基础知识、面向对象技术、建模工具 Rational Rose和 UML的一些基本理论和概念;第 5~13章详尽介绍了 UML中的用例图、类图、对象图、包图、序列图、协作图、活动图、状态图、构件图、部署图、 Rational Rose统一过程的概念以及在实际中的应用;第 14章通过一个建模的综合案例——学籍管理系统对使用 Rational Rose进行 UML建模的全过程进行深入剖析。此外,章后配有适量的扩展练习,并在附录中提供 5个综合的建模案例,以加深读者的理解。
《UML统一建模基础教程》既可以作为各大院校计算机软件工程专业学生学习 UML和面向对象技术的教材,也可作为广大软件开发人员和系统架构设计人员自学 UML的参考和指导用书。
目录
前言
第 1章建模基础知识1
1.1软件工程概述1
1.1.1软件工程的产生 1
1.1.2软件工程的内容和基本原理3
1.1.3现代软件工程4
1.2建模概述4
1.2.1什么是模型4
1.2.2建模的原理5
1.2.3为什么要建模6
1.2.4建模的目标和原则 7
1.3UML概述 7
1.3.1UML的起源和发展8
1.3.2UML的主要特点9
1.3.3UML的应用领域9
1.3.4UML的模型种类 10
1.4扩展练习 15
第 2章面向对象技术 16
2.1面向对象的基本知识16
前言
本书内容
本书共有 14章和 5个附录。
第 1章:本章主要对软件工程的目标、过程和原则,以及 UML等方面的问题和基本概念进行简要介绍,以便读者在进入软件建模之前,对软件工程的一些基本知识有一定的理解。
第 2章:本章主要介绍面向对象开发、面向对象设计和面向对象实现的方法,以便读者对 UML有初步的认识。
第 3章:本章对 UML的主流开发工具 ——Rational Rose进行介绍,包括其安装、使用、视图模型和生成代码的方法。
第 4章:本章对 UML进行概要介绍,包括常用的 UML元素、UML的通用机制、UML的扩展机制和对象约束语言等。
第 5章:介绍用例图的概念和作用,讲解用例图的重要组成元素和如何通过 Rational Rose创建用例图。
第 6章:介绍了类图和对象图的基本概念、类图到数据库的转换以及在 UML中的表示。通过讲解使用 Rational Rose创建类图的方式,使读者在学完本章后,能够根据类图和对象图描绘出系统的静态结构。
第 7章:本章主要是对包图中的基本概念以及它们的使用方法进行详细介绍。
第 8章:针对 UML中的序列图进行介绍,包括它的基本概念、组成和使用 Rational Rose创建序列图的方法。
第 9章:通过本章的学习,可以掌握协作图的基本概念以及使用方法,进而能够熟练使用协作图描述系统中对象之间的交互。
第 10章:介绍活动图的基本概念、组成元素,以及使用 Rational Rose创建活动图的方法。
第 11章:读者在学习本章后,能够从整体上理解状态图并掌握状态图的画法。
第 12章:对构件图和部署图进行详细讲解,读者在学完本章后,能够根据构件图和部署图的基本概念,创建图中的各种模型元素,描绘出系统的物理结构,并将前面介绍过的其他图结合起来,完成对整个系统的建模。
第 13章:介绍统一过程的概念、结构、配置和实现 Rational统一过程的方法。
第 14章:给出一个学籍管理系统的综合实例,将前面各章介绍的 UML图形以及模型元素综合起来,实现对一个完整系统的设计和建模过程。整个过程按照软件设计的一般流程进行,让读者对实际项目的系统建模有一个直观的认识。
附录 A~E通过新闻发布系统、网上教学系统、网上购物商店、汽车租赁系统和超市管理系统 5个综合性的建模实例来巩固读者对 UML建模知识的理解。
面向读者
本书既可以作为各大院校计算机软件工程专业学生学习 UML和面向对象技术的教材,也可作为广大软件开发人员和系统架构设计人员自学 UML的参考和指导用书。
书摘
近年来,人们对环境工程、生物工程、软件工程等给予了极大的关注,许多高等院校都增设了这些专业,以培养研究这些新兴学科的专业人才。然而,由于人们对这些新兴工程学科认识不足,还处在一个艰难的探索阶段,如软件工程,因此国内许多软件企业对软件工程还不够重视,事实上,软件工程在计算机的发展和应用中的地位非常显著,它对软件产业的形成和发展起着定性的推动作用,是现代信息产业的巨大支柱。本章将对软件工程的目标、过程和原则,以及 UML等方面的问题和基本概念进行简要介绍,以便读者在进入软件建模之前,对软件工程的一些基本知识有一定的理解。
1.1 软件工程概述
软件工程是在 20世纪 60年代末期提出的。这一概念的提出,其目的是倡导以工程的原理、原则和方法进行软件开发,以期解决当时出现的“软件危机”。
1.1.1 软件工程的产生
软件工程(Software Engineering)是一门指导计算机软件系统开发和维护的工程学科,涉及到计算机科学、工程管理科学、数学等多学科,其研究范围广泛,主要研究如何应用软件开发的科学理论和工程技术来指导大型软件系统的开发。例如,现代操作系统的开发,如果不采用软件工程的方法是不可能实现的。
在我国加入 WTO后,大力推广、应用软件工程的开发技术及管理技术,提高软件工程的应用水平,对促进我国软件产业与国际接轨,推动我国软件产业的迅速发展起到了关键作用。
软件工程的产生和发展是与软件的发展紧密相关的。软件是计算机系统中与硬件相互依存的一部分,是包括程序、数据及其相关文档的完整集合。其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文材料。
自 20世纪 40年代中期出现了世界上第一台计算机以后,就有了程序的概念,开始了软件的开发,其后经历了几十年的发展,计算机软件经历了三个发展阶段。
程序设计时代( 1946年~1956年):采用“个体生产方式”,即软件开发完全依赖于程序员个人的能力水平。
程序系统时代( 1956年~1968年):由于软件应用范围及规模的不断扩大,个体生产已经不能够满足软件生产的需要,一个软件需要由几个人协同完成。在该阶段的后期,随着软件需求量、规模及复杂度的增大,生产作坊的方式已经不能够适应软件生产的需要,出现了所谓的软件危机。
软件工程时代(1968年至今):该阶段的主要任务是为了克服软件危机、适应软件发展的需要,而采用工程化的生产方式。
20世纪 60年代中期以后,需要开发一些大型软件系统。然而软件技术的进步一直未能满足形势发展的需要,在大型软件的开发过程中出现了复杂程度高、研制周期长、正确性难以保证的三大难题。遇到的问题找不到解决办法,致使问题堆积起来,形成了人们难以控制的局面,出现了所谓的“软件危机”。
软件危机( Software Crisis)是指在软件开发和维护中所产生的一系列严重的问题:一是如何开发新的软件,满足用户对软件的需求;二是如何维护数量众多的已有软件。其主要表现如下:
用户需求不明确、变更过多。
软件成本日益增长。
开发进度难以控制。
软件质量差。
软件维护困难。
软件危机的出现是由于软件的规模越来越大,复杂度不断增加,软件需求量增大。而软件开发过程是一种高密集度的脑力劳动,软件开发的模式及技术不能适应软件发展的需要,致使大量质量低劣的软件涌向市场,有的软件花费了大量的人力物力,却在开发过程中就夭折。例如: IBM公司的 OS/360操作系统由 5000人开发,经费达数亿美元,但软件产品的每个版本均有 1000多个大大小小的错误,系统根本无法正常运行。