软件工程实用教程PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:陈明编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2012
- ISBN:9787302270263
- 页数:374 页
第1章 软件工程概述 1
1.1 软件 1
1.1.1 软件的发展 1
1.1.2 软件的定义 3
1.1.3 软件的特点 3
1.1.4 软件的分类 4
1.2 软件工程的内容与方法 6
1.2.1 软件危机与软件工程的定义 7
1.2.2 软件工程的基本内容与目标 9
1.2.3 软件的基本开发方法 9
1.2.4 软件工程的基本原则 10
1.3 软件生存周期与软件开发模型 11
1.3.1 软件生存周期 11
1.3.2 软件开发模型 12
1.4 软件工具与环境 20
1.4.1 软件工具概述 21
1.4.2 软件开发工具的功能 21
1.4.3 软件开发工具的特性 22
1.4.4 软件开发工具的分类 24
1.4.5 软件开发环境 25
1.5 软件工程学的知识体系 27
小结 28
习题1 28
第2章 软件项目可行性研究 29
2.1 软件项目可行性研究的任务 29
2.2 软件项目可行性研究的步骤 30
2.3 软件项目可行性研究的要素 31
2.3.1 经济可行性 32
2.3.2 技术可行性 32
2.3.3 社会环境可行性 32
2.4 系统流程图 33
2.5 成本效益分析 34
2.5.1 成本估计 34
2.5.2 费用估计 36
2.5.3 度量效益的方法 37
小结 38
习题2 38
第3章 软件需求工程 39
3.1 软件需求工程概述 39
3.1.1 软件需求分类 40
3.1.2 需求规格说明 41
3.1.3 需求工程概念 42
3.1.4 需求工程过程 42
3.2 需求获取方法 43
3.3 需求分析的任务与原则 45
3.3.1 需求分析的任务 45
3.3.2 需求分析的原则 46
3.4 需求建模方法 47
3.4.1 结构化的需求建模方法 47
3.4.2 数据流图 49
3.4.3 数据字典 57
3.5 图形工具 61
3.5.1 层次方框图 61
3.5.2 Warnier图 62
3.5.3 IPO图 62
3.6 需求验证 63
3.6.1 目的与任务 63
3.6.2 内容与方法 63
3.6.3 需求评审 64
3.7 需求管理 65
3.7.1 需求管理的目标 65
3.7.2 需求管理的原则 66
3.7.3 需求开发的管理 66
3.7.4 需求管理活动 68
小结 69
习题3 69
第4章 软件项目概要设计 71
4.1 软件体系结构 71
4.1.1 概述 71
4.1.2 系统构成 73
4.1.3 控制模型 77
4.1.4 模块化分解 80
4.1.5 领域相关的体系结构 82
4.2 概要设计的任务与过程 84
4.2.1 概要设计的任务 84
4.2.2 概要设计的过程 84
4.3 软件设计的概念与原则 86
4.3.1 模块化与模块独立性 86
4.3.2 抽象 91
4.3.3 结构设计原则 93
4.3.4 软件复用 95
4.3.5 设计模式 98
4.4 面向数据流的设计方法 99
4.4.1 基本概念 100
4.4.2 系统结构图的组成 101
4.4.3 变换分析 102
4.4.4 事务分析 106
4.4.5 设计优化 108
4.5 面向数据结构的设计方法 108
4.5.1 Jackson系统开发方法 108
4.5.2 Warnier方法 117
4.6 概要设计文档评审 118
小结 119
习题4 119
第5章 软件项目详细设计 120
5.1 详细设计的任务与原则 120
5.1.1 详细设计的任务 120
5.1.2 详细设计的原则 121
5.2 详细设计的工具 121
5.2.1 程序流程图 121
5.2.2 N-S图 123
5.2.3 PAD图 124
5.2.4 PDL 126
5.2.5 HIPO图 127
5.2.6 详细设计工具的选择 128
5.3 详细设计规格说明与复审 129
5.3.1 详细设计说明书 129
5.3.2 设计复审 130
小结 131
习题5 131
第6章 面向对象分析与设计 132
6.1 面向对象方法 132
6.1.1 面向对象方法概述 133
6.1.2 面向对象的软件工程 134
6.1.3 面向对象的基本概念和特征 138
6.2 面向对象分析 145
6.2.1 面向对象分析过程与原则 145
6.2.2 确定对象与类 149
6.2.3 确定属性 152
6.2.4 定义服务 153
6.2.5 对象间通信 157
6.3 面向对象设计 163
6.3.1 面向对象设计的概念 163
6.3.2 面向对象设计的方法 164
小结 167
习题6 167
第7章 用户界面设计 168
7.1 用户界面的主要特征 168
7.2 设计原则 170
7.3 用户交互 171
7.4 信息表示 173
7.5 帮助系统 175
7.6 界面设计 177
7.7 界面设计评价 178
7.7.1 界面设计评价指标 179
7.7.2 界面设计评价方法 180
小结 180
习题7 181
第8章 软件项目编码 182
8.1 程序设计语言 182
8.1.1 程序设计语言分类 182
8.1.2 程序设计语言的特点 185
8.1.3 程序设计语言的选择 187
8.2 编码风格 189
8.2.1 源程序文档化 189
8.2.2 数据说明 191
8.2.3 语句结构 191
8.2.4 输入输出 194
8.3 程序效率 195
8.3.1 程序效率准则 195
8.3.2 算法对效率的影响 195
8.3.3 影响存储器效率的因素 195
8.3.4 影响输入输出的因素 196
8.4 编程安全 196
8.4.1 冗余程序设计 196
8.4.2 防错程序设计 197
8.5 面向对象程序设计步骤 198
8.6 编码优化 199
小结 200
习题8 200
第9章 软件质量与质量保证 201
9.1 软件质量的定义 201
9.2 影响软件质量的因素 201
9.3 软件质量保证 203
9.3.1 软件质量保证的概念 203
9.3.2 软件质量保证的策略 203
9.3.3 SQA小组的任务 204
9.4 软件质量保证活动 205
9.5 软件评审 206
9.5.1 设计质量的评审内容 206
9.5.2 程序质量的评审内容 211
9.6 软件质量保证的标准 214
9.7 软件质量评价 215
9.7.1 软件质量评价体系 215
9.7.2 软件质量评价标准 217
9.8 软件质量框架 219
9.8.1 高质量软件的特性 219
9.8.2 软件质量框架的组成 219
9.9 软件开发质量的定量描述 221
小结 224
习题9 224
第10章 软件项目测试 225
10.1 概述 225
10.1.1 软件测试技术的发展 225
10.1.2 软件错误与缺陷 226
10.1.3 软件测试的定义 227
10.1.4 软件测试的对象 227
10.1.5 软件测试的目的 228
10.1.6 软件测试的原则 228
10.1.7 软件测试的复杂性 229
10.1.8 软件开发各阶段的测试 229
10.2 软件测试方法 230
10.2.1 静态分析 230
10.2.2 动态测试 231
10.2.3 人工测试与机器测试 232
10.2.4 黑盒测试 234
10.2.5 白盒测试 243
10.2.6 白盒测试与黑盒测试的比较 249
10.3 单元测试与集成测试 251
10.3.1 单元测试 251
10.3.2 集成测试 255
10.3.3 确认测试 261
10.3.4 系统测试 264
10.3.5 终止测试 268
10.4 面向对象测试 270
10.4.1 面向对象测试基础 270
10.4.2 面向对象测试模型 271
10.4.3 类测试 276
10.4.4 面向对象的集成测试 280
10.4.5 面向对象的系统测试 282
10.4.6 面向对象测试与传统测试的比较 283
10.5 测试的设计与实现 284
10.5.1 测试计划 284
10.5.2 测试设计 292
10.5.3 测试执行 298
10.5.4 测试总结 300
小结 301
习题10 302
第11章 软件项目交付与维护 304
11.1 软件发布与部署 304
11.1.1 软件产品发布 304
11.1.2 软件产品实施 305
11.2 软件演化的特征 306
11.2.1 软件演化的动态特征 306
11.2.2 软件体系结构的进化 307
11.3 软件维护 307
11.3.1 软件维护的分类与特点 307
11.3.2 软件维护的步骤 309
11.3.3 软件的可维护性 312
11.3.4 软件维护的副作用 313
11.4 逆向工程和再生工程 314
小结 316
习题11 316
第12章 软件项目管理 317
12.1 软件项目的特点及软件管理功能 317
12.1.1 软件项目的特点 317
12.1.2 软件管理的功能 318
12.1.3 软件项目的工作范围 318
12.2 软硬件资源 319
12.2.1 人力资源 319
12.2.2 硬件 319
12.2.3 软件 320
12.3 人员的计划和组织 320
12.4 成本估计及控制 321
12.4.1 软件开发成本估算方法 321
12.4.2 专家估算法 322
12.4.3 成本估算模型 323
12.5 进度计划 325
12.5.1 软件工作的特殊性 325
12.5.2 各阶段工作量的分配 325
12.5.3 制定开发进度 326
12.6 软件配置管理 327
12.6.1 基线 327
12.6.2 软件配置项 328
12.6.3 软件配置管理过程 330
12.7 软件管理方案 333
12.8 能力成熟度模型 333
12.8.1 软件过程评估的必要性 334
12.8.2 CMM的主要用途 335
12.8.3 CMM的体系结构 336
12.8.4 CMM的等级 338
12.8.5 CMM的内部结构 341
12.8.6 CMM的应用 344
小结 345
习题12 345
第13章 软件建模与UML 347
13.1 模型概述 347
13.2 常用的软件建模模型 348
13.3 需求建模 349
13.4 UML 349
13.4.1 UML概述 350
13.4.2 UML的表示法 355
13.4.3 UML软件开发过程概述 367
13.4.4 Rational Rose概述 370
13.5 形式化方法 372
小结 373
习题13 373
参考文献 374
- 《市政工程基础》杨岚编著 2009
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《AutoCAD 2019 循序渐进教程》雷焕平,吴昌松,陈兴奎主编 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《工程静力学》王科盛主编 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 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