软件工程导论PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:张海藩编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2008
- ISBN:7302164789
- 页数:395 页
第1章 软件工程学概述 1
1.1 软件危机 1
1.1.1 软件危机的介绍 1
1.1.2 产生软件危机的原因 3
1.1.3 消除软件危机的途径 4
1.2 软件工程 5
1.2.1 软件工程的介绍 5
1.2.2 软件工程的基本原理 7
1.2.3 软件工程方法学 9
1.3 软件生命周期 11
1.4 软件过程 14
1.4.1 瀑布模型 15
1.4.2 快速原型模型 16
1.4.3 增量模型 17
1.4.4 螺旋模型 19
1.4.5 喷泉模型 21
1.4.6 Rational统一过程 22
1.4.7 敏捷过程与极限编程 25
1.4.8 微软过程 29
1.5 小结 31
习题1 32
第2章 可行性研究 35
2.1 可行性研究的任务 35
2.2 可行性研究过程 36
2.3 系统流程图 38
2.3.1 符号 38
2.3.2 例子 38
2.3.3 分层 40
2.4 数据流图 40
2.4.1 符号 40
2.4.2 例子 42
2.4.3 命名 44
2.4.4 用途 45
2.5 数据字典 47
2.5.1 数据字典的内容 47
2.5.2 定义数据的方法 47
2.5.3 数据字典的用途 48
2.5.4 数据字典的实现 49
2.6 成本/效益分析 49
2.6.1 成本估计 50
2.6.2 成本/效益分析的方法 51
2.7 小结 53
习题2 53
第3章 需求分析 55
3.1 需求分析的任务 56
3.1.1 确定对系统的综合要求 56
3.1.2 分析系统的数据要求 57
3.1.3 导出系统的逻辑模型 58
3.1.4 修正系统开发计划 58
3.2 与用户沟通获取需求的方法 58
3.2.1 访谈 58
3.2.2 面向数据流自顶向下求精 59
3.2.3 简易的应用规格说明技术 59
3.2.4 快速建立软件原型 61
3.3 分析建模与规格说明 62
3.3.1 分析建模 62
3.3.2 软件需求规格说明 62
3.4 实体-联系图 62
3.4.1 数据对象 63
3.4.2 属性 63
3.4.3 联系 63
3.4.4 实体-联系图的符号 64
3.5 数据规范化 64
3.6 状态转换图 65
3.6.1 状态 65
3.6.2 事件 65
3.6.3 符号 66
3.6.4 例子 66
3.7 其他图形工具 67
3.7.1 层次方框图 68
3.7.2 Warnier图 68
3.7.3 IPO图 69
3.8 验证软件需求 70
3.8.1 从哪些方面验证软件需求的正确性 70
3.8.2 验证软件需求的方法 70
3.8.3 用于需求分析的软件工具 71
3.9 小结 72
习题3 73
第4章 形式化说明技术 75
4.1 概述 75
4.1.1 非形式化方法的缺点 75
4.1.2 形式化方法的优点 76
4.1.3 应用形式化方法的准则 76
4.2 有穷状态机 77
4.2.1 概念 77
4.2.2 例子 79
4.2.3 评价 82
4.3 Petri网 82
4.3.1 概念 82
4.3.2 例子 84
4.4 Z语言 85
4.4.1 简介 85
4.4.2 评价 88
4.5 小结 88
习题4 89
第5章 总体设计 91
5.1 设计过程 91
5.2 设计原理 94
5.2.1 模块化 94
5.2.2 抽象 95
5.2.3 逐步求精 95
5.2.4 信息隐藏和局部化 96
5.2.5 模块独立 97
5.3 启发规则 99
5.4 描绘软件结构的图形工具 102
5.4.1 层次图和HIPO图 102
5.4.2 结构图 103
5.5 面向数据流的设计方法 104
5.5.1 概念 104
5.5.2 变换分析 105
5.5.3 事务分析 111
5.5.4 设计优化 112
5.6 小结 113
习题5 114
第6章 详细设计 117
6.1 结构程序设计 117
6.2 人机界面设计 119
6.2.1 设计问题 119
6.2.2 设计过程 121
6.2.3 人机界面设计指南 122
6.3 过程设计的工具 124
6.3.1 程序流程图 124
6.3.2 盒图 125
6.3.3 PAD图 126
6.3.4 判定表 127
6.3.5 判定树 128
6.3.6 过程设计语言 128
6.4 面向数据结构的设计方法 129
6.4.1 Jackson图 130
6.4.2 改进的Jackson图 131
6.4.3 Jackson方法 132
6.5 程序复杂程度的定量度量 136
6.5.1 McCabe方法 137
6.5.2 Halstead方法 139
6.6 小结 140
习题6 140
第7章 实现 145
7.1 编码 146
7.1.1 选择程序设计语言 146
7.1.2 编码风格 147
7.2 软件测试基础 149
7.2.1 软件测试的目标 150
7.2.2 软件测试准则 150
7.2.3 测试方法 151
7.2.4 测试步骤 151
7.2.5 测试阶段的信息流 152
7.3 单元测试 153
7.3.1 测试重点 153
7.3.2 代码审查 154
7.3.3 计算机测试 155
7.4 集成测试 156
7.4.1 自顶向下集成 157
7.4.2 自底向上集成 158
7.4.3 不同集成测试策略的比较 159
7.4.4 回归测试 160
7.5 确认测试 160
7.5.1 确认测试的范围 160
7.5.2 软件配置复查 161
7.5.3 Alpha和Beta测试 161
7.6 白盒测试技术 162
7.6.1 逻辑覆盖 162
7.6.2 控制结构测试 165
7.7 黑盒测试技术 171
7.7.1 等价划分 172
7.7.2 边界值分析 175
7.7.3 错误推测 175
7.8 调试 176
7.8.1 调试过程 176
7.8.2 调试途径 178
7.9 软件可靠性 179
7.9.1 基本概念 179
7.9.2 估算平均无故障时间的方法 180
7.10 小结 182
习题7 183
第8章 维护 189
8.1 软件维护的定义 189
8.2 软件维护的特点 190
8.2.1 结构化维护与非结构化维护差别巨大 190
8.2.2 维护的代价高昂 190
8.2.3 维护的问题很多 191
8.3 软件维护过程 192
8.4 软件的可维护性 194
8.4.1 决定软件可维护性的因素 194
8.4.2 文档 195
8.4.3 可维护性复审 196
8.5 预防性维护 197
8.6 软件再工程过程 198
8.7 小结 200
习题8 201
第9章 面向对象方法学引论 203
9.1 面向对象方法学概述 203
9.1.1 面向对象方法学的要点 203
9.1.2 面向对象方法学的优点 205
9.2 面向对象的概念 209
9.2.1 对象 209
9.2.2 其他概念 211
9.3 面向对象建模 215
9.4 对象模型 216
9.4.1 类图的基本符号 217
9.4.2 表示关系的符号 218
9.5 动态模型 223
9.6 功能模型 224
9.6.1 用例图 224
9.6.2 用例建模 227
9.7 3种模型之间的关系 228
9.8 小结 229
习题9 229
第10章 面向对象分析 231
10.1 面向对象分析的基本过程 231
10.1.1 概述 231
10.1.2 3个子模型与5个层次 232
10.2 需求陈述 233
10.2.1 书写要点 233
10.2.2 例子 234
10.3 建立对象模型 235
10.3.1 确定类与对象 236
10.3.2 确定关联 238
10.3.3 划分主题 241
10.3.4 确定属性 241
10.3.5 识别继承关系 244
10.3.6 反复修改 244
10.4 建立动态模型 247
10.4.1 编写脚本 247
10.4.2 设想用户界面 248
10.4.3 画事件跟踪图 249
10.4.4 画状态图 250
10.4.5 审查动态模型 251
10.5 建立功能模型 253
10.5.1 画出基本系统模型图 253
10.5.2 画出功能级数据流图 254
10.5.3 描述处理框功能 254
10.6 定义服务 255
10.7 小结 256
习题10 256
第11章 面向对象设计 259
11.1 面向对象设计的准则 259
11.2 启发规则 261
11.3 软件重用 263
11.3.1 概述 263
11.3.2 类构件 265
11.3.3 软件重用的效益 266
11.4 系统分解 267
11.5 设计问题域子系统 270
11.6 设计人机交互子系统 273
11.7 设计任务管理子系统 275
11.8 设计数据管理子系统 277
11.8.1 选择数据存储管理模式 277
11.8.2 设计数据管理子系统 278
11.8.3 例子 280
11.9 设计类中的服务 280
11.9.1 确定类中应有的服务 280
11.9.2 设计实现服务的方法 281
11.10 设计关联 282
11.11 设计优化 283
11.11.1 确定优先级 283
11.11.2 提高效率的几项技术 284
11.11.3 调整继承关系 285
11.12 小结 287
习题11 288
第12章 面向对象实现 289
12.1 程序设计语言 289
12.1.1 面向对象语言的优点 289
12.1.2 面向对象语言的技术特点 290
12.1.3 选择面向对象语言 294
12.2 程序设计风格 294
12.2.1 提高可重用性 295
12.2.2 提高可扩充性 297
12.2.3 提高健壮性 297
12.3 测试策略 298
12.3.1 面向对象的单元测试 298
12.3.2 面向对象的集成测试 299
12.3.3 面向对象的确认测试 299
12.4 设计测试用例 299
12.4.1 测试类的方法 300
12.4.2 集成测试方法 301
12.5 小结 303
习题12 304
第13章 软件项目管理 305
13.1 估算软件规模 305
13.1.1 代码行技术 305
13.1.2 功能点技术 306
13.2 工作量估算 308
13.2.1 静态单变量模型 308
13.2.2 动态多变量模型 308
13.2.3 COCOMO2模型 309
13.3 进度计划 312
13.3.1 估算开发时间 312
13.3.2 Gantt图 314
13.3.3 工程网络 315
13.3.4 估算工程进度 316
13.3.5 关键路径 318
13.3.6 机动时间 318
13.4 人员组织 320
13.4.1 民主制程序员组 320
13.4.2 主程序员组 321
13.4.3 现代程序员组 322
13.5 质量保证 324
13.5.1 软件质量 324
13.5.2 软件质量保证措施 326
13.6 软件配置管理 328
13.6.1 软件配置 329
13.6.2 软件配置管理过程 329
13.7 能力成熟度模型 331
13.8 小结 334
习题13 335
附录A C++类库管理系统的分析与设计 337
A.1 面向对象分析 337
A.1.1 需求 337
A.1.2 建立对象模型 338
A.2 面向对象设计 339
A.2.1 设计类库结构 339
A.2.2 设计问题域子系统 340
A.2.3 设计人机交互子系统 341
A.2.4 设计其他类 344
附录B 一个汉字行编辑程序的设计 347
B.1 设计规格说明 347
B.1.1 外部编辑命令 347
B.1.2 编辑命令 348
B.1.3 输出信息 349
B.2 概要设计 350
B.2.1 正文文件 350
B.2.2 两个工作模式 351
B.2.3 数据元素 352
B.2.4 过程 353
B.3 概要设计结果 353
B.4 详细设计 356
B.4.1 数据元素 356
B.4.2 控制数据元素 357
B.4.3 编辑过程 357
B.4.4 输入模式的过程 359
B.4.5 编辑模式的过程 360
B.5 详细设计结果 364
B.5.1 编辑程序的详细结构 364
B.5.2 类PASCAL伪码 365
B.5.3 实现编辑程序的算法 367
参考文献 395
- 《市政工程基础》杨岚编著 2009
- 《工程静力学》王科盛主编 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《化学反应工程》许志美主编 2019
- 《物联网导论》张翼英主编 2020
- 《绿色过程工程与清洁生产技术 张懿院士论文集精选 上》《绿色过程工程与清洁生产技术》编写组编 2019
- 《软件工程》齐治昌,谭庆平,宁洪编著 2019
- 《材料导论》张会主编 2019
- 《化工传递过程导论 第2版》阎建民,刘辉 2020
- 《化学工程与工艺专业实验指导》郭跃萍主编 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019