软件工程实用教程PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:吕云翔编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2015
- ISBN:9787302394693
- 页数:387 页
第一部分 软件工程与软件过程 3
第1章 软件工程概述 3
1.1 软件 3
1.1.1 软件的概念 3
1.1.2 软件的特点 4
1.1.3 软件的分类 5
1.2 软件危机 5
1.2.1 软件危机的表现 5
1.2.2 软件危机的原因 6
1.3 软件工程 7
1.3.1 软件工程的概念 7
1.3.2 软件工程的基本内容 7
1.3.3 软件工程目标和原则 9
1.3.4 软件工程的知识体系 10
1.4 软件工程的相关工具 11
1.5 软件工程的常用信息源 12
1.6 “小型网上书店系统”案例介绍 12
小结 12
习题 13
第2章 软件过程 14
2.1 软件过程概述 14
2.2 软件生命周期 14
2.2.1 软件生命周期的概念 14
2.2.2 传统软件生命周期的各个阶段 15
2.3 软件过程模型 16
2.3.1 瀑布模型 16
2.3.2 快速原型模型 17
2.3.3 增量模型 18
2.3.4 螺旋模型 19
2.3.5 喷泉模型 19
2.3.6 基于组件的开发模型 20
2.3.7 统一软件开发过程模型 21
2.3.8 敏捷模型 22
小结 29
习题 30
第二部分 软件需求分析与建模 35
第3章 可行性研究及需求分析 35
3.1 可行性研究 35
3.1.1 可行性研究的目的与意义 35
3.1.2 可行性研究的内容 35
3.1.3 可行性研究的步骤 36
3.2 需求分析 37
3.2.1 需求分析的目的与意义 37
3.2.2 需求分析的步骤 38
3.2.3 需求管理 40
3.3 软件开发计划书编写指南 40
3.4 需求规格说明书编写指南 45
3.5 实验 50
3.5.1 Visio的功能及使用方法介绍 50
3.5.2 Rose的功能及使用方法介绍 56
小结 62
习题 62
第4章 结构化需求分析 64
4.1 结构化需求分析的方法 64
4.2 结构化需求分析的工具 65
4.2.1 实体关系(E-R)图 65
4.2.2 数据流图 66
4.2.3 状态转换图 67
4.2.4 数据字典 68
4.3 实验:利用Visio绘制“小型网上书店系统”的数据流图 69
小结 73
习题 74
第5章 面向对象分析 76
5.1 面向对象的软件工程方法 76
5.1.1 面向对象的基本概念 76
5.1.2 面向对象的软件工程方法的特征与优势 78
5.2 UML简介 79
5.2.1 用例图 80
5.2.2 类图和对象图 81
5.2.3 状态图 85
5.2.4 顺序图 86
5.2.5 活动图 87
5.2.6 协作图 89
5.2.7 构件图 89
5.2.8 部署图 90
5.2.9 包图 90
5.3 面向对象分析方法 91
5.3.1 面向对象分析过程 91
5.3.2 面向对象分析原则 92
5.4 面向对象建模 93
5.4.1 建立对象模型 93
5.4.2 建立动态模型 96
5.4.3 建立功能模型 98
5.4.4 三种模型之间的关系 99
5.5 实验 103
5.5.1 利用Rose绘制“小型网上书店系统”的用例图 103
5.5.2 利用Rose绘制“小型网上书店系统”的类图 108
5.5.3 利用Rose绘制“小型网上书店系统”的对象图 111
5.5.4 利用Rose绘制“小型网上书店系统”的状态图 112
5.5.5 利用Rose绘制“小型网上书店系统”的顺序图 114
5.6 案例:“小型网上书店系统”的需求规格说明书 116
小结 132
习题 133
第三部分 软件设计与建模 139
第6章 软件设计 139
6.1 软件设计的基本概念 139
6.1.1 软件设计的意义和目标 139
6.1.2 软件设计的分类 140
6.1.3 软件设计的原则 140
6.2 软件的体系结构 143
6.2.1 软件的体系结构概述 143
6.2.2 软件系统的设计模式 145
6.3 分布式系统结构 148
6.3.1 多处理器体系结构 148
6.3.2 客户/服务器体系结构 148
6.3.3 分布式对象体系结构 151
6.3.4 对等端体系结构 151
6.3.5 代理 152
6.4 体系结构框架 152
6.4.1 模型-视图-控制器 152
6.4.2 模型-视图-表示器 153
6.4.3 J2EE体系结构框架 154
6.4.4 PCMEF 155
6.4.5 PCBMER 155
6.5 数据库结构设计 156
6.6 人机界面设计 158
6.7 软件设计说明书编写指南 159
小结 162
习题 163
第7章 结构化设计方法 165
7.1 结构化软件设计方法 165
7.1.1 表示软件结构的图形工具 165
7.1.2 面向数据流的设计方法 166
7.1.3 面向数据结构的设计方法 169
7.2 结构化软件设计工具 171
7.2.1 流程图 171
7.2.2 N-S图 172
7.2.3 PAD 173
7.2.4 判定表 174
7.2.5 判定树 175
7.2.6 过程设计语言 175
7.3 实验:利用Visio绘制“小型网上书店系统”的结构图 176
小结 178
习题 178
第8章 面向对象设计 180
8.1 面向对象设计方法 180
8.1.1 面向对象的设计原则 180
8.1.2 面向对象设计的启发规则 181
8.1.3 系统设计 181
8.1.4 对象设计 182
8.2 实验 182
8.2.1 利用Rose绘制“小型网上书店系统”的活动图 182
8.2.2 利用Rose绘制“小型网上书店系统”的协作图 184
8.2.3 利用Rose绘制“小型网上书店系统”的构件图 186
8.2.4 利用Rose绘制“小型网上书店系统”的部署图 187
8.3 案例:“小型网上书店系统”的软件设计说明书 189
小结 206
习题 206
第四部分 软件编程与软件测试 211
第9章 软件编程 211
9.1 编程语言 211
9.1.1 编程语言的发展与分类 211
9.1.2 选择编程语言需考虑的因素 215
9.2 编程风格 216
9.3 编程人员的基本素质 218
9.4 实验 219
9.4.1 Visual Studio使用方法介绍 219
9.4.2 利用Visual Studio实现“小型网上书店系统”的用户登录模块 235
小结 241
习题 242
第10章 软件测试概述 243
10.1 软件测试的基本概念 243
10.1.1 软件测试的原则 243
10.1.2 软件测试模型 245
10.2 软件测试的分类 247
10.3 测试用例 248
10.3.1 测试用例编写 248
10.3.2 测试用例设计 248
10.3.3 测试用例场景 248
10.4 测试分析报告编写指南 249
小结 251
习题 252
第11章 软件测试方法与过程 253
11.1 软件测试方法 253
11.2 黑盒测试 254
11.2.1 等价类划分法 254
11.2.2 边界值分析法 256
11.2.3 错误推测法 257
11.2.4 因果图法 257
11.2.5 决策表法 259
11.2.6 场景法 260
11.2.7 黑盒测试选择 262
11.3 白盒测试 262
11.3.1 代码检查法 263
11.3.2 静态结构分析法 263
11.3.3 程序插桩技术 263
11.3.4 逻辑覆盖法 264
11.3.5 基本路径法 266
11.3.6 白盒测试方法选择 267
11.3.7 白盒测试和黑盒测试比较 268
11.4 软件测试的一般步骤 268
11.5 单元测试 269
11.5.1 单元测试概述 269
11.5.2 单元测试内容 269
11.5.3 单元测试方法 270
11.6 集成测试 270
11.6.1 集成测试概述 270
11.6.2 集成测试分析 271
11.6.3 集成测试策略 271
11.7 系统测试 275
11.7.1 系统测试概述 275
11.7.2 系统测试类型 275
11.8 验收测试 277
11.8.1 验收测试概述 277
11.8.2 验收测试内容 277
11.8.3 α测试和β测试 278
11.9 回归测试 278
11.10 面向对象的软件测试 279
11.11 软件调试 280
11.11.1 调试过程 280
11.11.2 调试途径 281
11.12 实验 281
11.12.1 利用Visual Studio中的工具进行单元测试 281
11.12.2 利用Visual Studio对“小型网上书店系统”的用户登录模块进行单元测试 293
11.13 案例:“小型网上书店系统”的测试分析报告 295
小结 305
习题 306
第五部分 软件工程的其他相关内容 311
第12章 软件工程的其他相关内容 311
12.1 软件估算 311
12.1.1 软件估算的概念 311
12.1.2 软件估算的方法 312
12.1.3 软件估算的原则与技巧 314
12.2 软件开发进度计划 314
12.2.1 Gantt图 315
12.2.2 PERT图 315
12.3 软件开发人员组织 316
12.3.1 民主制程序员组 316
12.3.2 主程序员组 316
12.3.3 现代程序员组 317
12.4 软件开发风险管理 317
12.4.1 软件开发风险 317
12.4.2 软件开发风险管理 318
12.5 软件质量保证 319
12.5.1 软件质量的基本概念 319
12.5.2 软件质量保证的措施 320
12.6 软件配置管理概述 321
12.6.1 软件配置管理术语 321
12.6.2 配置管理的过程 324
12.6.3 配置管理的角色划分 325
12.7 软件维护 326
12.7.1 软件维护的过程 326
12.7.2 软件维护的分类 328
12.7.3 软件的可维护性 329
12.7.4 软件维护的副作用 329
12.7.5 软件再工程技术 330
12.8 软件工程标准与软件文档 331
12.8.1 软件工程标准 331
12.8.2 软件文档 333
12.9 软件过程能力成熟度模型 335
12.10 软件项目管理 336
12.10.1 软件项目管理概述 336
12.10.2 软件项目管理与软件工程的关系 337
12.11 软件复用 337
12.12 实验 339
12.12.1 Project的功能及使用方法介绍 339
12.12.2 利用Project管理“小型网上书店系统”的开发过程 347
小结 351
习题 352
附录A 课程设计指导 355
附录B 模拟考试题与参考答案 360
附录C 部分习题参考答案 373
参考文献 386
- 《市政工程基础》杨岚编著 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