第一篇 软件工程 1
第一章 软件工程概述 1
1.1 软件技术概述 1
1.1.1 软件的概念与特点 1
1.1.2 计算机软件技术 2
1.1.3 软件复用 2
1.2 软件危机 3
1.2.1 软件危机 3
1.2.2 软件危机产生的原因 3
1.2.3 软件危机的解决方法 4
1.3 软件工程 4
1.3.1 软件工程的概念 4
1.3.2 软件工程原理 5
1.3.3 软件开发方法简介 5
1.4 软件工程环境 8
第二章 结构化分析和设计方法 10
2.1 问题的定义 10
2.2 可行性研究 10
2.3 结构化分析 11
2.3.1 结构化分析方法概述 11
2.3.2 数据流图 12
2.3.3 数据字典 14
2.3.4 处理的逻辑表达方式 16
2.3.5 数据分析 17
2.4 结构化设计 17
2.4.1 结构化设计方法概述 17
2.4.2 软件结构图 18
2.4.3 软件设计原理 19
2.4.4 软件设计原则 21
2.4.5 结构化软件设计策略 22
2.4.6 数据库的逻辑设计 25
2.5 结构化程序设计 25
2.5.1 结构化程序设计的基本概念 25
2.5.2 详细设计的工具 26
第三章 面向对象分析和设计方法 29
3.1 面向对象分析 29
3.1.1 面向对象的基本概念 29
3.1.2 OOA方法概述 32
3.1.3 电梯控制系统简介 33
3.1.4 确定对象 35
3.1.5 建立结构 40
3.1.6 建立主题 42
3.1.7 确定属性 43
3.1.8 确定消息和服务 46
3.1.9 实例连接 49
3.2 面向对象设计 51
3.2.1 OOD概述 51
3.2.2 问题域子系统的设计(PDC) 52
3.2.3 用户界面子系统的设计(HIC) 54
3.2.4 任务管理部分的设计(TMC) 57
3.2.5 数据管理部分(DMC) 59
3.2.6 OOD的基本准则 61
3.3 统一建模语言UML 62
3.3.1 UML概述 62
3.3.2 UML视图 63
3.3.3 UML模型元素 64
3.3.4 静态视图 65
3.3.5 用例视图 65
3.3.6 交互视图 66
3.3.7 状态机视图 67
3.3.8 活动视图 68
3.3.9 物理视图 69
3.3.10 模型管理视图 71
3.3.11 扩展结构 71
3.3.12 视图间的联系 72
第四章 软件测试 74
4.1 软件测试 74
4.1.1 软件测试的目的和原则 74
4.1.2 软件测试步骤 75
4.1.3 软件测试方法 76
4.2 程序调试 79
4.2.1 程序错误类型 79
4.2.2 程序调试的方法 80
4.2.3 程序调试原则 81
4.3 面向对象测试 81
第五章 软件维护 83
5.1 软件维护内容与分类 83
5.2 软件维护策略 84
5.3 软件维护过程 84
5.4 维护的副作用 86
第二篇 数据库基础 87
第六章 数据库概述 87
6.1 引言 87
6.1.1 数据、数据库、数据库管理系统、数据库系统 87
6.1.2 数据库技术的产生和发展 88
6.2 数据模型 91
6.2.1 数据模型的三个要素 91
6.2.2 数据模型的三个级别 91
6.2.3 三种主要的数据模型 92
6.3 数据库系统的结构 95
6.3.1 数据库系统的三级模式结构 95
6.3.2 数据库的二级映像功能与数据独立性 96
6.4 数据库技术新进展 97
6.4.1 数据库技术发展概述 97
6.4.2 分布式数据库 97
6.4.3 面向对象数据库 99
6.4.4 对象-关系数据库系统 101
第七章 关系数据库基本原理 102
7.1 关系模型概述 102
7.2 关系数据结构 104
7.3 关系代数 106
7.3.1 传统的集合运算 106
7.3.2 专门的关系运算 107
7.4 关系数据库标准语言——SQL 109
7.4.1 SQL概述 109
7.4.2 数据定义 110
7.4.3 数据查询 113
7.4.4 数据更新 123
7.4.5 视图 124
7.5 关系数据库的规范化理论 125
7.5.1 问题的提出 125
7.5.2 范式及其规范化 128
第八章 数据库设计 136
8.1 数据库设计方法 136
8.2 需求分析 138
8.3 概念结构设计 142
8.3.1 概念模型 142
8.3.2 局部视图设计 147
8.3.3 视图的集成 150
8.4 逻辑结构设计 154
8.4.1 E-R图向关系模型的转换 154
8.4.2 数据模型的调整和完善 156
8.5 数据库的物理设计 157
8.6 数据库的实施和维护 157
8.6.1 数据的载入和应用程序的调试 158
8.6.2 数据库的试运行 158
8.6.3 数据库的运行和维护 159
第九章 数据库管理系统 161
9.1 数据库管理系统的功能和组成 161
9.2 数据库管理系统的目标 162
9.3 数据库管理系统的工作过程 163
9.4 DBMS系统结构 164
9.4.1 DBMS程序模块的组成 164
9.4.2 DBMS的层次结构 165
第十章 数据库管理系统和开发工具 167
10.1 新一代数据库管理系统及开发工具 167
10.1.1 Oracle 167
10.1.2 Sybase 167
10.1.3 Informix 167
10.1.4 MS SQL Server 168
10.1.5 DB2 168
10.1.6 新一代数据库系统快速开发工具——PowerBuilder 168
10.2 MS SQL Server 2000 170
10.2.1 MS SQL Server 2000简介 170
10.2.2 MS SQL Server 2000系统运行环境 171
10.2.3 数据库对象和存储结构 172
10.2.4 SQL Server数据库管理 173
10.2.5 SQL Server表的管理与操作 176
10.2.6 Transact-SQL的查询 180
10.2.7 SQL Server的视图 184
10.2.8 SQL Server程序设计基础 185
附录 “学生-课程”数据库清单 196
参考文献 197