软件工程导论PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:张海藩编著
- 出 版 社:北京:清华大学出版社
- 出版年份:1987
- ISBN:15235·275
- 页数:317 页
第一章 软件危机和软件工程 1
1.1 计算机系统的发展简史 1
前言 1
1.2 软件危机 2
1.2.1 什么是软件危机 2
1.2.2 产生软件危机的原因 3
1.2.3 解决软件危机的途径 6
1.3 软件工程 7
1.3.2 可行性研究 8
1.3.1 问题定义 8
1.3.3 要求分析 9
1.3.4 一般设计 9
1.3.5 详细设计 10
1.3.6 编码和单元测试 10
1.3.7 综合测试 10
1.3.8 软件维护 10
1.4 技术审查和管理复审 11
1.4.1 必须进行审查和复审 11
1.4.2 技术审查的标准和审查小组的组成 12
1.4.3 技术审查过程 13
1.5 小结 14
第二章 问题定义和可行性研究 15
2.1 问题定义 15
2.2 可行性研究的任务 16
2.3 可行性研究的步骤 16
2.3.4 重新定义问题 17
2.3.3 导出新系统的高层逻辑模型 17
2.3.2 研究目前正在使用的系统 17
2.3.1 复查系统规模和目标 17
2.3.5 导出和评价供选择的解法 18
2.3.6 推荐行动方针 18
2.3.7 草拟开发计划 18
2.3.8 书写文档提交审查 19
2.4 系统流程图 19
2.4.1 符号 20
2.4.2 例子 21
2.4.3 分层 21
2.5 数据流图 22
2.4.4 用途 22
2.5.1 符号 23
2.5.2 例子 24
2.5.3 用途 27
2.6 数据字典 28
2.6.1 数据字典的内容 29
2.6.2 定义数据的方法 29
2.6.4 数据字典的实现 30
2.6.3 数据字典的用途 30
2.7.成本/效益分析 31
2.7.1 成本估计 32
2.7.2 成本/效益分析的方法 33
2.8 小结 35
第三章 要求分析 36
3.1 要求分析的任务 36
3.1.1 确定对系统的综合要求 36
3.1.4 修正系统开发计划 37
3.1.5 开发模型系统 37
3.1.2 分析系统的数据要求 37
3.1.3 导出系统的逻辑模型 37
3.2 分析过程 38
3.2.1 沿数据流图回溯 39
3.2.2 用户复查 39
3.2.3 细化数据流图 40
3.2.4 修正开发计划 40
3.3 图形工具 41
3.3.1 层次方框图 41
3.2.6 审查和复审 41
3.2.5 书写文档 41
3.3.2 Warnier图 42
3.3.3 IPO图 43
3.4 超高级语言 44
3.4.1 Shell语言的命令表 45
3.4.2 Shell变量 45
3.4.3 Shell语言的条件结构 46
3.4.4 Shell语言的循环结构 47
3.5 软件工具和对软件要求的验证 48
3.6 小结 49
4.1.1 设想供选择的方案 51
4.1.2 选取合理的方案 51
第四章 一般设计 51
4.1 一般设计的过程 51
4.1.3 推荐最佳方案 52
4.1.4 功能分解 52
4.1.5 设计软件结构 52
4.1.6 数据库设计 52
4.1.9 审查和复审 53
4.2.1 模块化 53
4.2 软件设计的概念和原理 53
4.1.8 书写文档 53
4.1.7 制定测试计划 53
4.2.2 抽象 55
4.2.3 信息隐蔽和局部化 55
4.2.4 模块独立 56
4.3 启发式规则 58
4.3.1 改进软件结构提高模块独立性 58
4.3.2 模块规模应该适中 58
4.3.3 深度、宽度、扇出和扇入都应适当 58
4.3.4 模块的作用域应该在控制域之内 59
4.3.5 力争降低模块接口的复杂程度 60
4.3.6 设计单入口单出口的模块 61
4.3.7 模块功能应该可以预测 61
4.4 图形工具 61
4.4.1 层次图和HIPO图 61
4.4.2 结构图 62
4.5 面向数据流的设计方法 64
4.5.1 概念 64
4.5.2 变换分析 65
4.5.3 事务分析 72
4.5.4 设计优化 73
4.6 小结 74
第五章 详细设计 75
5.1 结构程序设计 75
5.2 详细设计的工具 78
5.2.1 程序流程图 78
5.2.2 盒图(N_S图) 79
5.2.3 判定表 80
5.2.4 过程设计语言(PDL) 82
5.2.5 模块开发文件夹 82
5.3.1 Jackson图 83
5.3 Jackson程序设计方法 83
5.3.2 改进的Jackson图 84
5.3.3 Jackson方法 84
5.4 Warnier程序设计方法 90
5.4.1 Warnier图的用途 90
5.4.2 Warnier方法 91
5.4.3 Warnier方法的辅助技术 97
5.5 程序复杂程度的定量度量 101
5.5.1 程序图 101
5.5.2 环形复杂度的计算方法 102
5.5.3 环形复杂度的用途 103
5.5.4 其他度量方法 103
5.6 小结 104
第六章 软件蓝图 105
6.1 软件蓝图方法论 105
6.1.1 对软件蓝图的要求 105
6.1.2 三级设计 106
6.1.3 蓝图语言 107
6.1.4 蓝图的书写风格 107
6.2.1 直接描述数据 109
6.2 软件蓝图的构成 109
6.2.2 高级数据运算符 111
6.2.3 丰富灵活的控制操作 113
6.2.4 显式描述软件结构 114
6.3 词法扫描程序的规格说明 117
6.3.1 输入串 118
6.3.2 输出串 118
6.3.3 扫描程序的语法 119
6.4 词法扫描程序的A级设计 120
6.4.1 选取数据元素设计数据流 120
6.4.2 设计控制流 121
6.4.3 划分模块 122
6.4.4 定义模块 123
6.4.5 书写A级蓝图 123
6.5 词法扫描程序的B级设计 124
6.5.1 精化数据流 124
6.5.2 组织模块 124
6.5.3 构造过程访问结构 124
6.5.4 书写B级蓝图 126
6.6 词法扫描程序的C级设计 126
6.6.1 选取更多数据元素 126
6.6.2 详细描述数据流 127
6.6.4 书写C级蓝图 128
6.6.3 构造其他访问结构 128
6.7 小结 129
附录6.1 词法扫描程序的A级蓝图 129
附录6.2 词法扫描程序的B级蓝图 131
附录6.3 词法扫描程序的C级蓝图 136
附录6.4 软件设计语言SDL-1的语法 142
7.1 程序设计语言 146
7.1.1 程序设计语言分类 146
第七章 编码 146
7.1.2 程序设计语言的特点 147
7.1.3 选择一种语言 150
7.2 程序设计途径 151
7.2.1 写程序的风格 151
7.2.2 程序设计方法论 153
7.2.3 程序设计自动化 154
7.2.4 程序设计工具 154
7.2.5 程序设计环境 156
7.3 小结 156
8.1 基本概念 157
第八章 测试 157
8.1.1 软件测试的目标 158
8.1.2 黑盒测试和白盒测试 158
8.1.3 软件测试的步骤 159
8.1.4 测试阶段的信息流 160
8.2 单元测试 161
8.2.1 单元测试考虑 161
8.2.2 单元测试过程 163
8.3 集成测试 165
8.3.1 自顶向下结合 166
8.3.3 不同集成测试策略的比较 167
8.3.2 自底向上结合 167
8.4 验收测试 168
8.4.1 验收测试的范围 169
8.4.2 软件配置复查 169
8.5 设计测试方案 169
8.5.1 逻辑覆盖 170
8.5.2 等价划分 173
8.5.3 边界值分析 176
8.5.4 错误推测 177
8.5.5 实用测试策略 177
8.6 调试 178
8.6.1 调试技术 180
8.6.2 调试策略 181
8.7 软件可靠性 183
8.7.1 基本概念 183
8.7.2 估算平均无故障时间的方法 184
8.7.3 程序正确性证明 186
8.8 自动测试工具 187
8.8.1 测试数据生成程序 187
8.8.2 动态分析程序 187
8.9 小结 188
8.8.3 静态分析程序 188
8.8.4 文件比较程序 188
第九章 维护 190
9.1 软件维护的定义 190
9.2 维护的特点 191
9.2.1 结构化维护与非结构化维护的对比 191
9.2.2 维护的代价 191
9.2.3 维护的问题 193
9.3.2 定量度量可维护性 194
9.3.1 决定软件可维护性的因素 194
9.3 可维护性 194
9.3.3 可维护性复审 195
9.4 维护过程 195
9.4.1 维护组织 195
9.4.2 维护报告 196
9.4.3 维护的事件流 196
9.4.4 保存维护记录 198
9.4.5 评价维护活动 198
9.5.2 数据的副作用 199
9.5.3 文档的副作用 199
9.5.1 编码的副作用 199
9.5 维护的副作用 199
9.6 文档 200
9.6.1 软件文档的组成 200
9.6.2 文档工具 201
9.7 小结 202
第十章 管理技术 203
10.1 成本估计 203
10.1.1 成本模型分类 203
10.1.2 参数方程 204
10.1.3 标准值法 205
10.1.4 COCOMO模型 207
10.2 进度计划 209
10.2.1 Gantt图 209
10.2.2 工程网络 211
10.2.3 估算进度 212
10.2.4 关键路径 214
10.2.5 机动时间 214
10.3 人员组织 216
10.3.1 程序设计小组的组织 216
10.3.2 主程序员组 217
10.4 质量保证 218
10.4.1 软件质量 218
10.4.2 质量保证 219
10.5 项目计划 220
10.5.1 项目计划的内容 220
10.5.2 项目报告 221
10.5.3 变动控制 221
10.6 软件管理工具 222
10.7 小结 222
A.1.1 使用环境 223
A.1 问题定义 223
附录A 一个工资支付系统的分析和设计过程 223
A.1.2 问题定义 224
A.1.3 关于规模和目标的报告书 224
A.2 可行性研究 225
A.2.1 澄清系统规模和目标 226
A.2.2 研究现有的系统 226
A.2.3 导出高层逻辑模型 228
A.2.4 精化系统规模和目标 229
A.2.5 导出供选择的解法 230
A.2.7 草拟开发计划 233
A.2.6 推荐行动方针 233
A.2.8 写出文档提交审查 234
A.3 要求分析 234
A.3.1 沿数据流图回溯 235
A.3.2 正式文档 236
A.3.3 定义逻辑系统 239
A.3.4 细化数据流图 239
A.3.5 结束标准 241
A.3.6 技术审查和管理复审 241
A.4.1 导出供选择的方案 242
A.4 系统设计 242
A.4.2 选择合理的方案 243
A.4.3 结束标准 244
A.4.4 推荐最佳方案 249
A.4.5 技术审查和管理复审 250
A.5 详细设计 251
A.5.1 设计文件和测试数据 251
A.5.2 工资支付程序的结构设计 252
A.5.3 用IPO图描述工资支付程序的模块 255
A.5.4 检查设计结果 262
A.6.1 编码 263
A.5.5 审查 263
A.6 实现和维护 263
A.6.2 文档 264
A.6.3 调试 264
A.6.4 结构化预排 265
A.6.5 系统测试 265
A.6.6 培训 265
A.6.7 维护 266
A.7 小结 266
B.1.1 外部编辑命令 268
附录B 一个交互式的正文编辑程序的设计 268
B.1 设计规格说明 268
B.1.2 编辑命令 269
B.1.3 输出信息 270
B.2 A级设计 271
B.2.1 系统组织 271
B.2.2 正文文件 271
B.2.3 两个工作模式 273
B.2.4 数据元素 273
B.2.5 过程 274
B.3 A级蓝图 276
B.4 C级设计 279
B.4.1 数据元素 279
B.4.2 控制数据元素 281
B.4.3 编辑过程 281
B.4.4 输入模式的过程 282
B.4.5 编辑模式的过程 284
B.5 C级蓝图 289
本书主要参考文献 317
- 《市政工程基础》杨岚编著 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