第1章 软件开发概述 1
1.1 软件的发展概况 1
1.2 什么是软件 2
1.2.1 软件的定义 2
1.2.2 软件的特点 2
1.2.3 软件的种类 3
1.3 软件开发的组织与管理 3
1.3.1 软件开发中的困难 4
1.3.2 软件开发的方法 5
1.3.3 软件开发的过程 6
小结 8
习题 8
第2章 软件的生命周期 9
2.1 生命周期的瀑布模型 9
2.1.1 计划时期 11
2.1.2 开发时期 11
2.1.3 运行时期 12
2.2 瀑布型软件开发的特点 12
2.3.2 原型的建立与使用 13
2.3 快速的原型化开发 13
2.3.1 原型方法与传统方法的比较 13
小结 14
习题 14
第3章 软件立项 16
3.1 为什么要进行问题定义 17
3.1.1 问题定义的意义 17
3.1.2 问题定义的文档 17
3.1.3 问题定义文档书写实例 18
3.2.1 可行性研究的目的 19
3.2 可行性研究 19
3.2.2 可行性研究的具体步骤 20
3.2.3 在可行性研究中通常使用的几种工具 20
3.2.4 书写可行性论证报告 22
小结 28
习题 29
第4章 软件开发的基石——需求分析 31
4.1 需求分析概述 31
4.2.1 对现有系统进行详细调查 32
4.2 怎样进行需求分析 32
4.2.2 建立新系统模型并提出新系统逻辑方案 33
4.3 书写需求规格说明书 33
4.3.1 需求规格说明书的基本要求 34
4.3.2 书写需求规格说明书经常使用的工具 35
4.3.3 数据字典举例 40
4.4 结构化分析方法 42
4.5 需求规格说明书实例 45
习题 50
小结 50
第5章 模块化设计和结构化设计 52
5.1 模块化设计 52
5.1.1 分解 52
5.1.2 信息隐藏 53
5.1.3 模块的独立性 53
5.2 结构化设计 56
5.2.1 自顶向下设计与自底向上的设计 56
习题 57
小结 57
5.2.2 逐步细化 57
第6章 概要设计 59
6.1 总体结构设计 59
6.2 代码设计 62
6.2.1 代码设计 63
6.2.2 代码的种类 63
6.3 数据库设计 63
6.3.1 关系数据库设计原则 63
6.3.2 关系数据库结构的建立 65
6.4 概要设计说明书的编写 67
6.4.1 概要设计说明书参考格式 67
6.4.2 设计复审 69
6.4.3 概要设计说明书案例 70
小结 73
习题 73
第7章 详细设计 75
7.1 详细设计的任务 75
7.2 详细设计的方法 76
7.3 详细设计采用的工具 77
7.4 详细设计的原则 80
7.5 怎样书写详细设计说明书 81
7.5.1 详细设计说明书的参考格式 81
7.5.2 详细设计说明书案例 83
小结 84
习题 85
第8章 编制程序代码 86
8.1 编码的目的 86
8.2 编码的风格 87
8.3 编码语言的选择 88
8.3.1 为什么选择编码语言 88
8.3.2 程序设计语言的分类 89
8.3.3 选择何种语言编码 89
8.3.4 编码设计说明书案例 90
小结 94
习题 94
9.1 软件维护概述 96
9.1.1 软件维护的定义 96
第9章 软件维护 96
9.1.2 影响维护工作量的因素 97
9.1.3 软件维护的策略 98
9.1.4 维护成本 99
9.2 软件维护活动 99
9.2.1 维护机构 99
9.2.2 软件维护报告 100
9.2.3 软件维护工作流程 100
9.2.4 维护评价 100
习题 101
9.3 软件维护的实施 101
小结 101
第10章 软件文档编写实例 102
10.1 系统目标和范围说明书 102
10.2 可行性研究报告 103
10.3 项目计划书 105
10.4 需求规格说明书 106
10.5 概要设计说明书 112
10.6 详细设计说明书 117
10.7 编码设计说明书 122
10.8 用户操作手册 132
10.9 测试报告 134
小结 137
习题 137
第11章 软件测试 138
11.1 为什么进行软件测试 138
11.1.1 软件测试的定义 138
11.1.2 软件测试的目的 138
11.1.3 软件测试的原则 139
11.2 软件测试的方法 141
11.2.1 静态测试和动态测试 142
11.2.2 黑盒测试法和白盒测试法 143
11.2.3 怎样设计测试用例 144
11.3 如何书写测试文档 153
11.3.1 软件测试计划参考格式 153
11.3.2 测试分析报告参考格式 154
11.3.3 测试分析报告案例 155
11.4 软件产品在交付前的测试 157
11.4.1 单元测试 158
11.4.2 集成测试 159
11.4.3 确认测试 162
11.5 软件调试 163
11.5.1 调试目的 163
11.5.2 调试技术 163
小结 164
习题 165
12.1.1 用原型法开发的基本步骤 168
12.1 原型法 168
第12章 软件开发方法的发展 168
12.1.2 原型法的优缺点 169
12.2 面向对象方法 170
12.2.1 面向对象方法的原则和特点 170
12.2.2 面向对象的基本概念 171
12.2.3 统一建模语言 172
小结 183
习题 184
参考文献 185