内容简介
《软件入门与提高丛书:UML2软件建模入门与提高》从初学者的角度出发,由浅入深、循序渐进地介绍统一建模语言UML的相关知识,书中提供了大量操作UML的示例。另外,还向读者提供了很多实战案例和上机练习,用于演练。
本书共分为16章,内容包括面向对象思想和软件建模分类,UML发展历史、组成元素、体系结构、建模流程和应用领域,常用的UML建模工具,用例图、类图、对象图和包图、状态机图、活动图、顺序图和时间图、通信图和交互概览图、组件图和部署图,UML到关系型数据库的映射,UML与统一过程,UML与Java语言的映射,以及UML与设计模式等。最后一章提供了一个综合的案例。
本书示例新颖,内容丰富,涉及面广泛,适合所有的UML初学者学习,也可以帮助有基础知识的读者提高创建UML模型图的技能。另外,对于大中专学生和培训班的学生来说,本书更是一本不可多得的教材和自学用书。
目录
第1章 面向对象和软件建模
1.1 模型
1.2 面向对象的思想
1.2.1 了解面向对象
1.2.2 面向对象的三大要素
1.2.3 面向对象的三大模型
1.2.4 面向对象的常用三层
1.2.5 面向对象的开发方法
1.3 软件建模
1.3.1 软件建模概述
1.3.2 建模的三要素
1.3.3 面向对象建模
1.4 建模分类
1.4.1 业务建模
1.4.2 数据建模
1.4.3 应用程序建模
1.5 思考与练习
第2章 UML入门基础
2.1 UML概述
2.1.1 UML简介
2.1.2 UML发展历史
2.1.3 UML的目标
2.2 UML的基本组成
2.2.1 建模元素
2.2.2 关系
2.2.3 图
2.2.4 规则
2.2.5 通用机制
2.2.6 UML标准通用机制
2.3 UML其他内容
2.3.1 UML的体系结构
2.3.2 UML建模流程
2.3.3 UML的应用领域
2.4 UML 2.0概述
2.5 思考与练习
第3章 UML建模工具
3.1 使用建模工具需知
3.1.1 建模工具的作用
3.1.2 选择建模工具的方法
3.1.3 常用建模工具
3.2 Visio 2010
3.2.1 Visio 2010简介
3.2.2 实战--绘制论坛系统的用例图
3.3 Enterprise Architect 8
3.3.1 Enterprise Architect 8简介
3.3.2 实战--绘制论坛系统的类图
3.4 PowerDesigner 16.5
3.4.1 PowerDesigner简介
3.4.2 实战--安装
PowerDesigner 16.5
3.4.3 实战--绘制活动图
3.4.4 实战--生成模型报告
3.4.5 实战--对MySQL进行反向工程
3.5 思考与练习
第4章 用例图
4.1 用例图简介
4.2 用例图的构成
4.2.1 系统
4.2.2 参与者
4.2.3 用例
4.2.4 关系
4.3 使用参与者
4.3.1 参与者的确定
4.3.2 参与者的使用
4.4 用例的使用
4.4.1 识别用例
4.4.2 用例描述
4.5 关系
4.5.1 关联关系
4.5.2 泛化关系
4.5.3 包含关系
4.5.4 扩展关系
4.6 实战--图书馆管理系统用例图
4.7 思考与练习
第5章 类图
5.1 类图和元素
5.1.1 类图概述
5.1.2 类
5.1.3 抽象类
5.1.4 接口
5.2 依赖关系
5.2.1 依赖关系概述
5.2.2 依赖关系分类
5.3 关联关系
5.3.1 关联关系概述
5.3.2 常见的关联
5.3.3 聚合关联
5.3.4 组合关联
5.3.5 建立关联
5.4 泛化关系
5.4.1 泛化关系概述
5.4.2 常用的泛化
5.4.3 泛化集
5.4.4 泛化约束
5.5 实现关系
5.6 类图建模步骤
5.7 实战--构建病房监护系统的类型
5.8 思考与练习
第6章 对象图和包图
6.1 了解对象
6.1.1 对象概述
6.1.2 对象符号
6.2 对象图
6.2.1 对象图概述
6.2.2 绘制和阅读对象图
6.2.3 使用对象图建模
6.3 对象图和类图
6.4 实战--绘制订单管理系统的对象图
6.5 了解包
6.5.1 包概述
6.5.2 包的符号
6.6 包图
6.6.1 包图概述
6.6.2 包图分类
6.6.3 包导入和包合并
6.6.4 使用包图建模
6.6.5 包图设计原则
6.7 实战--绘制剧院系统的包图
6.8 思考与练习
第7章 状态机图
7.1 状态机图简介
7.1.1 状态机概述
7.1.2 状态机标记
7.1.3 状态类型
7.1.4 状态机图的应用
7.2 转移
7.2.1 转移简介
7.2.2 事件
7.2.3 动作
7.2.4 活动与延迟事件
7.2.5 转移的类型
7.3 组合状态
7.3.1 顺序状态
7.3.2 并发状态
7.3.3 同步状态
7.3.4 历史状态
7.3.5 子状态机引用
7.4 实战--自动存取款系统状态机图
7.5 思考与练习
第8章 活动图
8.1 活动图的基本概念
8.1.1 活动图的定义
8.1.2 活动图的作用
8.1.3 活动图的主要元素
8.1.4 理解活动与动作
8.1.5 活动图与状态图的区别
8.2 活动图的元素详解
8.2.1 动作状态
8.2.2 活动状态
8.2.3 开始和结束状态
8.2.4 分支与合并
8.2.5 分叉与汇合
8.2.6 对象流
8.2.7 泳道
8.3 活动转换
8.3.1 转移
8.3.2 判定
8.3.3 发送和接收信号动作
8.3.4 事件和触发器
8.3.5 可中断区间
8.3.6 异常
8.4 实战--活动图的应用
8.5 思考与练习
第9章 顺序图和时间图
9.1 顺序图简介
9.2 顺序图的构成
9.2.1 对象
9.2.2 生命线和激活期
9.2.3 消息
9.2.4 序号
9.2.5 参数
9.2.6 激活期规范
9.3 消息类型
9.3.1 同步消息
9.3.2 异步消息
9.3.3 反身消息
9.3.4 接收发送消息
9.3.5 消息分支和从属流
9.4 组合片段
9.4.1 组合片段简介
9.4.2 选项组合片段
9.4.3 备选组合片段
9.4.4 循环组合片段
9.4.5 引用组合片段
9.5 时间图
9.5.1 时间图概述
9.5.2 时间图的构成
9.5.3 时间约束
9.5.4 替代表示法
9.6 实战--团购系统顺序图
9.7 思考与练习
第10章 通信图和交互概览图
10.1 通信图简介
10.1.1 通信图概述
10.1.2 对象与类角色
10.1.3 关联角色与链接
10.1.4 消息
10.2 消息序号和控制点
10.2.1 消息序号
10.2.2 消息控制点
10.3 创建对象
10.4 消息迭代
10.4.1 对象的迭代
10.4.2 消息的迭代
10.5 交互图
10.6 交互概览图
10.6.1 交互概览图简介
10.6.2 绘制交互概览图
10.7 实战--在线报考系统的交互图
10.8 思考与练习
第11章 绘制UML的实现图
11.1 了解组件
11.1.1 组件概述
11.1.2 组件的符号
11.2 组件图
11.2.1 组件图概述
11.2.2 组件间的关系
11.2.3 组件图和类图
11.2.4 实战--绘制组件图
11.3 使用组件图建模
11.3.1 对源代码建模
11.3.2 对可执行体的发布建模
11.3.3 对物理数据库建模
11.3.4 对可适应的系统建模
11.4 了解节点
11.4.1 节点的符号
11.4.2 节点和组件的区别
11.5 部署图
11.5.1 部署图概述
11.5.2 部署图的关系
11.5.3 实战--绘制部署图
11.6 使用部署图建模
11.6.1 对嵌入式系统建模
11.6.2 对客户/服务器建模
11.6.3 对全分布式系统建模
11.7 思考与练习
第12章 UML到关系型数据库的映射
12.1 关系型数据库与UML模型
12.1.1 关系型数据库管理系统
12.1.2 UML模型
12.2 基本结构映射
12.2.1 主键的生成
12.2.2 属性类型到域的映射
12.2.3 属性到列的映射
12.3 泛化关系的映射
12.3.1 所有类的映射
12.3.2 除无属性外类的映射
12.3.3 父类属性下移
12.3.4 子类属性上移
12.3.5 映射方法比较
12.4 关联关系的映射
12.4.1 一对一关联的映射
12.4.2 零或一对一关联的映射
12.4.3 一对多关联的映射
12.4.4 多对多关联的映射
12.4.5 聚合和组合关系的映射
12.4.6 映射时应避免的情况
12.5 完整性与约束检查
12.5.1 父表的约束
12.5.2 子表的约束
12.6 其他相关问题
12.6.1 存储过程
12.6.2 触发器
12.6.3 索引
12.7 实战--软件公司UML模型的映射
12.8 思考与练习
第13章 UML与统一过程
13.1 软件开发过程简介
13.2 定义和理解软件工程的过程
13.3 软件成熟标准:CMM
13.3.1 使用CMM的意义
13.3.2 CMM等级
13.3.3 CMM框架
13.3.4 CMM结构
13.4 RUP简介
13.4.1 使用RUP的意义
13.4.2 什么是RUP
13.4.3 RUP的特点
13.4.4 RUP六大开发经验
13.5 RUP二维开发模型
13.5.1 时间维
13.5.2 RUP的静态结构
13.6 RUP工作流程
13.6.1 初始阶段
13.6.2 细化阶段
13.6.3 构造阶段
13.6.4 交付阶段
13.7 RUP的核心工作流
13.7.1 商业建模
13.7.2 需求
13.7.3 分析和设计
13.7.4 实现
13.7.5 测试
13.7.6 部署
13.7.7 配置和变更管理
13.7.8 项目管理
13.7.9 环境
13.8 如何在过程中使用UML
13.8.1 以架构为中心
13.8.2 用例驱动
13.8.3 UML对迭代开发的支持
13.8.4 UML图与工作流程之间的关系
13.9 思考与练习
第14章 UML与Java语言映射
14.1 模型映射为Java的实现
14.1.1 转换为Java类
14.1.2 转换原则
14.2 实现常见关联
14.2.1 基本关联
14.2.2 强制对可选或者强制关联
14.2.3 可选对可选关联
14.2.4 可选对多关联
14.2.5 强制对多关联
14.2.6 多对多关联
14.2.7 关联类的实现
14.2.8 聚合关联的实现
14.2.9 组合关联的实现
14.3 实现泛化
14.4 特殊模型的映射
14.4.1 包
14.4.2 接口
14.4.3 枚举
14.5 实战--类图与Java的工程化
14.5.1 正向工程
14.5.2 逆向工程
14.6 思考与练习
第15章 UML与设计模式
15.1 了解模式
15.2 软件设计模式
15.2.1 了解设计模式
15.2.2 设计模式的诞生
15.2.3 设计模式的原则
15.2.4 设计模式的分类
15.3 设计模式的元素
15.3.1 关键元素
15.3.2 其他元素
15.4 创建型模式
15.4.1 了解创建型模式
15.4.2 简单工厂模式
15.4.3 工厂方法模式
15.4.4 抽象工厂模式
15.4.5 单例模式
15.5 结构型模式
15.5.1 了解结构型模式
15.5.2 适配器模式
15.5.3 外观模式
15.6 观察者模式
15.6.1 了解观察者模式
15.6.2 实战--自定义观察者模式
15.7 思考与练习
第16章 即时通信系统
16.1 系统建模概述
16.1.1 系统开发的背景
16.1.2 系统建模的基本步骤
16.2 系统分析
16.2.1 系统结构
16.2.2 需求分析
16.3 用例图
16.3.1 确定参与者
16.3.2 确定用例
16.3.3 绘制系统用例图
16.4 静态图
16.4.1 即时通信类
16.4.2 即时通信类图
16.5 行为图
16.5.1 行为分析
16.5.2 用户聊天的活动图
16.5.3 可疑言论处理活动图
16.6 交互图
16.6.1 用户登录顺序图
16.6.2 离线消息顺序图
16.6.3 言论处理顺序图
16.6.4 在线通信顺序图
16.6.5 交互概览图
16.7 组件图
附录 各章思考与练习答案
前言/序言
UML是英文Unified Modeling Language的缩写,又称为统一建模语言,或者标准建模语言,它是始于1997年的一个OMG标准,是一个支持模型化和软件系统开发的图形化语言,可为软件开发的所有阶段提供模型化和可视化支持。面向对象的分析与设计方法在20世纪80年代末至90年代中出现了一个高潮,UML正是这个高潮的产物,它不仅统一了Booch、Rumbaugh和Jacobson的表示方法,而且做了进一步的发展,并最终统一为大众所接受的标准建模语言。
本书内容
全书共分16章,主要内容如下。
第1章:面向对象和软件建模。从模型开始介绍,接着介绍面向对象思想的三大要素、三大模型、常用的三层开发方法、软件建模知识,最后介绍常用的建模分类。
第2章:UML入门基础。着重介绍UML的基础知识,包括UML的概念、发展历史、目标、组成元素、体系结构、建模流程以及应用领域等内容。
第3章:UML建模工具。从目前众多的UML建模工具中挑选出应用最广泛且在建模工具中最有影响力的3种工具(Visio、Enterprise Architect和PowerDesigner)进行介绍。
第4章:用例图。介绍用例图的构成、设计和使用,包括用例图的组成部分、各个部分成员的确定和使用,以及如何绘制完整的用例图等。
第5章:类图。详细介绍UML中的类图,包括类图中的类、抽象类、接口和各种关系的实现等内容,还介绍如何使用类图进行建模。
第6章:对象图和包图。首先介绍对象图,包括概念、组成、绘制和阅读,以及如何建模等;然后介绍包图,包括概念、组成、分类、设计原则以及如何建模等。
第7章:状态机图。详细介绍状态机图的绘制,首先介绍状态机图的基本内容,包括概念、标记、状态类型和状态机图的应用等,然后介绍状态机图中的转移元素,最后介绍组合状态。
第8章:活动图。详细介绍活动图的绘制,其内容包括活动图的定义、作用、与状态机图的区别、组成元素和活动转换等。
第9章:顺序图和时间图。介绍UML中的两种交互图,即顺序图和时间图。顺序图描述系统对象之间的交互顺序,但是这个顺序没有细致的时间刻度,只是一个大概的流程,而时间图弥补了这个不足,它们共同绘制了系统对象间交互的顺序和时间。
第10章:通信图和交互概览图。首先对通信图的概念进行介绍,然后介绍通信图中的消息、对象的创建和消息迭代等内容,最后介绍交互图和交互概览图的绘制。
第11章:绘制UML的实现图。首先介绍组件图的绘制和建模,然后介绍部署图的绘制和建模。
第12章:UML到关系型数据库的映射。着重介绍如何将UML类图中的类和关系映射到关系型数据库表。首先介绍基本结构的映射,然后介绍泛化关系和关联关系的映射,最后介绍完整性与约束检查以及存储过程、触发器和索引等内容。
第13章:UML与统一过程。首先讨论软件开发过程和成熟标准,然后详细介绍一种使用UML的过程,即统一过程,最后简单介绍使用UML过程的一般特征。
第14章:UML与Java语言映射。主要介绍UML类图映射为Java语言实现的方法,包括转换为Java类、转换原则、转换类之间的关联、泛化关联以及包和接口等。
第15章:UML与设计模式。首先介绍模式的一些基本概念,接着介绍UML对设计模式的支持,然后通过具体的示例讨论如何使用设计模式进行系统设计。
第16章:即时通信系统。综合UML建模系统的各类模型,通过对即时通信系统的分析,绘制该系统的UML模型图,包括用例图、静态图、行为图和交互图等多种图形。
本书特色
本书内容详细、示例丰富,知识面广,全面地讲解了UML的应用和开发。本书最大的特点体现在如下几个方面。
(1)知识全面,内容丰富
本书紧密围绕UML的相关知识展开详细的讲解,涵盖了实际开发应用中的具体应用代码。
(2)理论和示例结合
书中几乎每一个知识点都有丰富而典型的示例,而且每一章最后都会通过一个或多个综合的实战介绍该章的知识。作为一本UML入门类型的书,将理论和实践很好地结合
软件入门与提高丛书:UML2软件建模入门与提高 电子书 下载 mobi epub pdf txt