图书介绍
软件工程概论pdf电子书版本下载
- 郑人杰,殷人昆编著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302029091
- 出版时间:1998
- 标注页数:287页
- 文件大小:15MB
- 文件页数:300页
- 主题词:
PDF下载
下载说明
软件工程概论PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 软件工程概述 1
1.1 软件的概念和分类特点 1
1.1.1 软件的概念与特点 1
1.1.2 软件的分类 3
1.2 软件的发展和软件危机 6
1.3 软件工程过程和软件生存期 8
1.3.1 软件工程过程(software engineering process) 8
1.3.2 软件生存期(life cycle) 9
1.4 软件生存期模型 10
1.4.1 瀑布模型(waterfall model) 10
1.4.2 演化模型(evolutional model) 11
1.4.3 螺旋模型(spiral model) 11
1.4.4 喷泉模型(water fountain model) 13
1.4.5 智能模型(intelligence model) 13
1.5 软件工程的基本目标 13
1.5.1 软件工程的定义 13
1.5.2 软件工程项目的基本目标 14
第2章 软件需求分析 15
2.1 软件需求分析概述 15
2.1.1 软件需求分析的任务 15
2.1.2 需求分析的过程 16
2.1.3 软件需求分析的原则 19
2.2 结构化分析方法 21
2.2.1 数据流图(DFD,data flow diagram) 21
2.2.2 数据词典(DD,data dictionary) 24
2.2.3 加工逻辑说明 27
2.3 结构化数据系统开发方法(DSSD)—面向数据结构的分析方法之一 30
2.3.1 Warnier图 30
2.3.2 DSSD的分析方法 31
2.4 Jackson系统开发方法(JSD)—面向数据结构的分析方法之二 34
2.4.1 进程模型 35
2.4.2 JSD方法的步骤 35
2.4.3 实体动作分析 36
2.4.4 实体结构分析 37
2.4.5 定义初始模型 38
2.5 原型化方法(prototyping) 40
2.5.1 软件原型的分类 41
2.5.2 快速原型开发模型 41
2.6 系统动态分析 44
2.6.1 状态迁移图 44
2.6.2 petri网 45
2.7 结构化分析与设计方法(SADT) 48
第3章 软件设计 51
3.1 软件设计的目标和任务 51
3.1.1 软件设计在开发阶段中的重要性 51
3.1.2 软件设计任务 52
3.2 程序结构与程序结构图 54
3.2.1 程序的树状结构和网状结构 55
3.2.2 结构图(structure chart简称SC) 55
3.3 模块的独立性 57
3.3.1 模块(module) 57
3.3.2模块独立性(module independence) 58
3.3.3 耦合性(coupling) 58
3.3.4 内聚性(cohesion) 60
3.3.5 信息隐蔽 63
3.4 结构化设计方法—面向数据流的设计方法 63
3.4.1 典型的系统结构形式 64
3.4.2 变换分析 66
3.4.3 事务分析 69
3.4.4 软件模块结构的改进 71
3.5 结构化数据系统开发方法(DSSD)—面向数据结构的设计方法之一 75
3.5.1 一种简化的设计方法 75
3.5.2 导出逻辑输出结构 76
3.5.3 导出逻辑处理结构(LPS) 76
3.6 Jackson系统开发方法(JSD)—面向数据结构的分析与设计方法之二 78
3.6.1 JSD功能描述 78
3.6.2 决定系统时间特性 82
3.6.3实现 82
第4章 详细设计描述的工具 87
4.1 程序流程图(program flow chart) 87
4.2 N-S图 90
4.3 PAD 91
4.4 PDL 93
第5章 程序编码 100
5.1 对源程序的质量要求 100
5.2 结构化程序设计 101
5.2.1 关于COTO语句的争论 101
5.2.2 结构化程序设计的原则 102
5.2.3 程序设计自顶向下,逐步求精 104
5.3 程序设计风格 106
5.3.1 源程序文档化 107
5.3.2 数据说明 110
5.3.3 语句结构 110
5.3.4 输入和输出(I/O) 114
5.4 程序复杂性度量 115
5.4.1 代码行度量法 115
5.4.2 McCabe度量法 116
5.4.3 Halstead的软件科学 117
第6章 面向对象技术 120
6.1 面向对象的概念 120
6.2 基于复用的开发过程 123
6.2.1 应用生存期 123
6.2.2 类生存期 124
6.3 面向对象分析与模型化 126
6.3.1 面向对象分析(OOA,object-oriented analysis) 126
6.3.2 论域分析(domain analysis) 126
6.3.3 应用分析(application analysis) 129
6.3.4 对象模型技术(OMT,object model tech.) 129
6.4 高层设计 134
6.5 类的设计 135
6.5.1 通过复用设计类 135
6.5.2 类设计的方针 136
6.5.3 类设计的过程 138
6.6 Coad与Yourdon面向对象分析与设计技术 143
6.6.1 面向对象的分析 143
6.6.2 面向对象的设计 145
6.7 Booch的方法 146
6.7.1 Booch方法的设计过程 147
6.7.2 Booch方法的基本的模型 147
6.8 面向对象设计的实现 151
6.8.1 类的实现 151
6.8.2 系统的实现 153
第7章 软件测试 155
7.1 软件测试的基础 155
7.1.1 什么是软件测试 155
7.1.2 软件测试的目的和原则 156
7.1.3 软件测试的对象 157
7.1.4 测试信息流 158
7.1.5 测试与软件开发各阶段的关系 159
7.2 测试用例设计 160
7.3 白盒测试的测试用例设计 161
7.3.1 逻辑覆盖 161
7.3.2 语句覆盖 162
7.3.3 判定覆盖 163
7.3.4 条件覆盖 163
7.3.5 判定-条件覆盖 164
7.3.6 条件组合覆盖 164
7.3.7 路径测试 165
7.4 黑盒测试的测试用例设计 165
7.4.1 等价类划分 165
7.4.2 边界值分析 168
7.4.3 错误推测法 171
7.7.4 因果图 171
7.5 软件测试的策略 174
7.5.1 单元测试(unit testing) 175
7.5.2 组装测试(integrated testing) 177
7.5.3 确认测试(validation testing) 181
7.5.4系统测试(system testing) 183
7.5.5 测试的步骤及相应的测试种类 183
7.6 人工测试 186
7.6.1 静态分析 186
7.6.2 人工测试 187
7.7 调试(Debug,,排错) 189
7.7.1 调试的步骤 189
7.7.2 几种主要的调试方法 190
7.7.3 调试原则 193
第8章 软件维护 194
8.1 软件维护的概念 194
8.1.1 软件维护的定义 194
8.1.2 影响维护工作量的因素 195
8.1.3 软件维护的策略 195
8.2 软件维护活动 196
8.2.1 软件维护申请报告 196
8.2.2 软件维护工作流程 197
8.2.3 维护档案记录 198
8.2.4 维护评价 198
8.3 程序修改的步骤及修改的副作用 198
8.3.1 分析和理解程序 199
8.3.2 修改程序 199
8.3.3 重新验证程序 202
8.4 软件可维护性 202
8.4.1 软件可维护性的定义 203
8.4.2 可维护性的度量 203
8.5 提高可维护性的方法 206
8.5.1 建立明确的软件质量目标和优先级 206
8.5.2 使用提高软件质量的技术和工具 206
8.5.3 进行叨确的质量保证审查 207
8.5.4 选择可维护的程序设计语言 208
8.5.5 改进程序的文档 209
8.6 逆向工程和再工程 210
第9章 软件工程标准化与软件文档 211
9.1 软件工程标准化 211
9.1.1 什么是软件工程标准 211
9.1.2 软件工程标准化的意义 213
9.1.3 软件工程标准的层次 213
9.1.4 中国的软件工程标准化工作 214
9.2 软件质量认证 215
9.2.1 ISO 9000系列标准及软件质量认证 215
9.2.2 ISO 9000系列标准的内容 216
9.2.3 制定与实施ISO 9000系列标准 217
9.2.4 ISO 9000-3的要点 218
9.3 在开发机构中推行软件工程标准化 220
9.4 软件文档的作用与分类 221
9.4.1 软件文档的作用和分类 221
9.4.2 对文档编制的质量要求 223
9.4.3 文档的管理和维护 225
9.5 软件过程成熟度模型 227
9.5.1 软件机构的成熟性 227
9.5.2 软件过程成熟度模型 228
9.5.3 关键过程领域 229
9.5.4 成熟度提问单 230
第10章 软件管理 232
10.1 软件生产率和质量的度量 232
10.1.1 软件度量 232
10.1.2 面向规模的度量 232
10.1.3 面向功能的度量 233
10.1.4 软件质量的度量 234
10.1.5 影响软件生产率的因素 235
10.2 软件项目的估算 236
10.2.1 对估算的看法 236
10.2.2 软件项目计划的目标 237
10.2.3 软件的范围 237
10.2.4 软件开发中的资源 237
10.2.5 软件项目估算 240
10.2.6 分解技术 241
10.3 软件开发成本估算 243
10.3.1 软件开发成本估算方法 244
10.3.2 专家判定技术 245
10.3.3 软件开发成本估算的经验模型 245
10.4 软件项目进度安排 249
10.4.1 软件开发小组人数与软件生产率 250
10.4.2 任务的确定与并行性 251
10.4.3 制定开发进度计划 251
10.4.4 进度安排的方法 252
10.4.5 项目的追踪的和控制 254
10.5 软件项目的组织与计划 255
10.5.1 软件项目管理的特点 255
10.5.2 制定计划 257
10.5.3 软件项目组织的建立 258
10.5.4 人员配备 262
10.5.5 指导与检验 263
10.6 软件配置管理 265
10.6.1 软件配置管理 265
10.6.2 配置标识 267
10.6.3 版本控制 269
10.6.4 变更控制 269
10.6.5 配置状态报告(configuration status reporting ,CSR) 271
10.6.6 配置审计(configuration audit) 271
附录 软件产品开发文档编写指南 273
参考文献 287