软件工程 理论与实践 第3版PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:许家珆,白忠建,吴磊著
- 出 版 社:北京:高等教育出版社
- 出版年份:2017
- ISBN:9787040479287
- 页数:373 页
第1章 软件工程概述 1
1.1 软件工程的产生和发展 1
1.1.1 软件危机与软件工程 1
1.1.2 软件工程的定义及基本原则 3
1.1.3 软件工程研究的内容 4
1.2 软件与软件过程 6
1.2.1 软件的概念和特点 6
1.2.2 软件工程过程 7
1.2.3 软件过程的活动及产品 8
1.3 软件过程模型 9
1.3.1 瀑布模型 9
1.3.2 增量模型 10
1.3.3 原型模型 10
1.3.4 螺旋模型 11
1.3.5 喷泉模型 12
1.3.6 智能模型 12
1.4 软件开发方法 13
1.4.1 结构化开发方法 14
1.4.2 原型化开发方法 14
1.4.3 面向对象开发方法 15
1.4.4 敏捷软件开发方法 18
1.5 软件工具与集成化环境 20
1.5.1 软件工具 20
1.5.2 集成化CASE环境 23
1.5.3 集成化CASE开发环境的体系结构 25
小结 27
习题1 27
第2章 软件需求工程 30
2.1 软件需求的基本概念 30
2.1.1 软件需求的任务 30
2.1.2 功能需求与非功能需求 31
2.2 需求工程过程 34
2.2.1 获取需求 34
2.2.2 需求分析与建模 35
2.2.3 需求的有效性验证 37
2.2.4 需求管理 37
2.3 软件需求获取技术 38
2.4 需求分析方法与建模技术 41
2.4.1 常用的需求分析方法 41
2.4.2 结构化分析方法 43
2.4.3 面向对象的分析方法 49
2.4.4 用UML建立需求模型 51
2.4.5 需求规格说明书 53
2.5 软件需求案例分析 55
2.5.1 案例1:医院病房监护系统 55
2.5.2 案例2:网上拍卖系统 58
小结 60
习题2 61
第3章 软件设计 64
3.1 软件设计概述 64
3.1.1 软件设计的任务和目标 65
3.1.2 软件设计过程 66
3.2 软件体系结构设计 67
3.2.1 体系结构设计过程 67
3.2.2 仓库模型 67
3.2.3 层次模型 68
3.2.4 分布式系统模型 69
3.2.5 云计算模型 74
3.2.6 控制模型 76
3.2.7 模块分解 79
3.3 面向对象设计 83
3.3.1 面向对象设计的准则和基本任务 84
3.3.2 设计过程 85
3.3.3 对象设计 88
3.4 详细设计描述工具 90
3.5 用户界面设计 91
3.5.1 用户界面设计的特性与设计任务 91
3.5.2 用户界面设计的基本原则 92
3.5.3 用户界面的基本元素 93
3.5.4 用户交互 94
3.5.5 功能和时尚的平衡 96
3.6 MVC设计模式 98
3.6.1 MVC的概念 98
3.6.2 MVC的工作流程 99
3.6.3 MVC与三层架构的区别 100
3.7 软件设计实例 100
3.7.1 用例模型 101
3.7.2 体系结构设计 101
3.7.3 对象设计 102
3.7.4 用户界面设计 106
小结 107
习题3 108
第4章 面向对象方法与统一建模语言UML 110
4.1 面向对象方法概述 110
4.1.1 面向对象方法的特点 110
4.1.2 几种典型的面向对象方法 112
4.2 UML概述 113
4.2.1 UML的基本概念 113
4.2.2 UML的图形表示 115
4.3 建立用例模型 118
4.3.1 用例建模 118
4.3.2 确定执行者 119
4.3.3 确定用例 121
4.3.4 建立用例之间的关系 124
4.3.5 用例建模实例 125
4.4 建立静态模型 127
4.4.1 类图 128
4.4.2 包图 138
4.5 建立动态模型 139
4.5.1 消息 139
4.5.2 状态图 140
4.5.3 顺序图 143
4.5.4 合作图 145
4.5.5 活动图 148
4.6 建立实现模型 150
4.6.1 组件图 150
4.6.2 部署图 151
4.7 统一过程RUP及其应用 153
4.7.1 UML与统一过程RUP 153
4.7.2 RUP的二维开发模型 155
4.7.3 RUP的迭代开发模式 157
小结 158
习题4 159
第5章 软件构造 162
5.1 程序设计语言的选择 162
5.1.1 程序设计语言的分类 162
5.1.2 高级程序设计语言的基本组成 163
5.1.3 程序设计语言选择准则 165
5.2 程序设计方法 166
5.2.1 结构化程序设计 166
5.2.2 面向对象程序设计 167
5.3 程序设计风格 174
5.4 算法与程序效率 177
5.5 软件代码审查 178
5.6 软件复用 180
5.6.1 软件复用的级别 180
5.6.2 软件复用过程 181
5.6.3 可复用构件 182
5.6.4 基于复用的开发过程和模型 184
5.6.5 构件的组装和复用 185
5.7 软件构造实例 186
5.7.1 实现环境 186
5.7.2 系统编码实现 187
5.7.3 用户界面 194
小结 195
习题5 196
第6章 软件测试 197
6.1 软件测试概述 197
6.1.1 软件测试的目的和重要性 197
6.1.2 软件测试的特点和基本原则 199
6.1.3 软件测试过程 201
6.1.4 静态分析与动态测试 203
6.2 白盒法测试 206
6.2.1 语句覆盖 207
6.2.2 判定覆盖 207
6.2.3 条件覆盖 208
6.2.4 判定—条件覆盖 209
6.2.5 条件组合覆盖 210
6.3 黑盒法测试 211
6.3.1 等价分类法 211
6.3.2 边界值分析法 212
6.3.3 错误推测法 213
6.3.4 因果图法 214
6.4 软件测试的策略 216
6.4.1 单元测试 216
6.4.2 集成测试 219
6.4.3 确认测试 221
6.4.4 系统测试 222
6.4.5 α测试和β测试 224
6.4.6 综合测试策略 224
6.5 软件调试 225
6.5.1 软件调试过程 225
6.5.2 软件调试策略 226
6.6 面向对象的测试 228
6.6.1 面向对象测试的特点 228
6.6.2 面向对象的测试模型 229
6.6.3 面向对象测试策略 230
6.6.4 面向对象分析的测试 232
6.6.5 面向对象的测试用例 238
6.7 自动化测试 239
6.7.1 自动化测试概述 239
6.7.2 实施自动化测试的前提条件 241
6.7.3 自动化测试过程 242
6.7.4 自动化测试的原则 245
小结 245
习题6 246
第7章 软件维护 248
7.1 软件维护的基本概念 248
7.1.1 软件维护的目的 248
7.1.2 软件维护的类型 248
7.1.3 软件维护的特性 250
7.1.4 软件维护的代价 251
7.2 软件维护的过程 252
7.2.1 维护工作的流程 252
7.2.2 软件维护的组织和维护过程管理 252
7.3 软件维护技术 254
7.4 软件可维护性 255
7.4.1 软件可维护性的定义 255
7.4.2 提高可维护性的方法 257
7.5 软件再工程技术 261
小结 264
习题7 264
第8章 软件项目管理 266
8.1 软件项目管理概述 266
8.1.1 软件项目管理的特点 266
8.1.2 软件项目管理的主要活动 267
8.2 软件项目计划 268
8.2.1 软件项目计划内容 269
8.2.2 软件开发进度计划 269
8.3 软件项目成本估算技术 272
8.3.1 影响成本估算的因素 272
8.3.2 成本估算模型 273
8.3.3 成本/效益分析 277
8.4 软件项目人力资源管理 278
8.4.1 软件团队建设 278
8.4.2 团队人员的选留 280
8.5 项目风险管理 281
8.5.1 软件项目风险管理概述 281
8.5.2 软件项目风险管理过程 283
8.5.3 风险管理的理论和模型 285
8.6 软件质量保证 287
8.7 软件配置管理 288
8.7.1 软件配置管理的基本概念 289
8.7.2 软件配置管理的活动 289
8.8 企业资源规划 292
8.8.1 资源管理发展过程 293
8.8.2 ERP系统的管理思想 293
8.8.3 应用ERP与企业的关系 295
8.8.4 ERP应用成功的标志 296
8.8.5 SAP ERP简介 297
小结 299
习题8 299
第9章 软件能力成熟度模型CMM 301
9.1 CMM概述 301
9.1.1 软件过程成熟度的基本概念 301
9.1.2 软件过程的成熟度等级 302
9.2 CMM的结构 304
9.3 CMM的实施与评估 306
9.3.1 软件过程评估及参考模型 307
9.3.2 软件过程改进 310
9.3.3 CMM评估的执行步骤 311
9.3.4 CMM与ISO 9000标准 314
9.4 软件能力成熟度模型集成CMMI 315
9.4.1 CMMI的产生与发展 315
9.4.2 CMMI模型 316
9.4.3 CMMI评估 317
9.4.4 CMMI与CMM的比较 319
小结 320
习题9 321
第10章 软件工程课程设计 322
10.1 课程设计目的和要求 322
10.2 课程设计步骤安排 323
10.3 可视化建模工具RationalRose 324
10.3.1 Rose工具简介 324
10.3.2 绘制业务用例图 326
10.3.3 绘制用例图 327
10.3.4 绘制类图 329
10.3.5 绘制协作图与时序图 331
10.3.6 绘制活动图 332
10.3.7 绘制状态图 333
10.3.8 绘制组件图和部署图 334
10.4 案例分析 336
10.4.1 案例1:ATM系统 336
10.4.2 案例2:网上拍卖系统 342
10.4.3 案例3:会议管理系统 350
10.4.4 案例4:仓库信息管理系统 363
参考文献 372
- 《市政工程基础》杨岚编著 2009
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《工程静力学》王科盛主编 2019
- 《情报学 服务国家安全与发展的现代情报理论》赵冰峰著 2018
- 《英汉翻译理论的多维阐释及应用剖析》常瑞娟著 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《新课标背景下英语教学理论与教学活动研究》应丽君 2018
- 《党员干部理论学习培训教材 理论热点问题党员干部学习辅导》(中国)胡磊 2018
- 《化学反应工程》许志美主编 2019
- 《全国高等中医药行业“十三五”创新教材 中医药学概论》翟华强 2019
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《习近平总书记教育重要论述讲义》本书编写组 2020
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《高等数学试题与详解》西安电子科技大学高等数学教学团队 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《教育学考研应试宝典》徐影主编 2019
- 《语文教育教学实践探索》陈德收 2018
- 《家庭音乐素养教育》刘畅 2018