图书介绍
软件工程 第2版PDF|Epub|txt|kindle电子书版本网盘下载
- 李伟波,刘永祥,王庆春主编 著
- 出版社: 武汉:武汉大学出版社
- ISBN:9787307079823
- 出版时间:2010
- 标注页数:334页
- 文件大小:26MB
- 文件页数:349页
- 主题词:软件工程
PDF下载
下载说明
软件工程 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 软件工程概述1
1.1 计算机软件1
1.1.1 软件的概念1
1.1.2 软件的特点1
1.1.3 软件的分类2
1.1.4 软件的发展历程3
1.1.5 软件危机及其解决危机的途径3
1.2 软件工程5
1.2.1 软件工程的概念5
1.2.2 软件工程的基本原理和原则6
1.2.3 软件工程学研究的内容7
1.2.4 软件开发方法简述7
1.2.5 软件工具与环境9
本章小结10
习题10
第2章 软件过程和模型12
2.1 软件过程与软件生存周期12
2.1.1 软件过程12
2.1.2 软件生存周期13
2.2 典型软件过程模型14
2.2.1 瀑布模型14
2.2.2 快速原型模型15
2.2.3 螺旋模型18
2.2.4 增量模型19
2.3 面向对象的软件过程模型20
2.3.1 构件复用模型20
2.3.2 统一过程模型RUP22
2.4 统一建模语言UML25
2.4.1 UML的结构25
2.4.2 UML建模机制28
2.4.3 UML图形示例29
本章小结36
习题37
第3章 需求分析与建模38
3.1 需求分析38
3.1.1 需求分析的任务和原则38
3.1.2 获取需求的方法39
3.1.3 需求分析的模型和方法40
3.1.4 需求分析的主要过程40
3.2 结构化分析方法42
3.2.1 基本思想和分析过程42
3.2.2 系统流程图43
3.2.3 数据流图45
3.2.4 数据字典49
3.2.5 加工逻辑说明51
3.3 功能建模52
3.3.1 IDEF0模型52
3.3.2 IDEF0建模方法52
3.3.3 IDEF0建模步骤57
3.4 数据建模与ER图57
3.4.1 实体、属性与联系57
3.4.2 实体-联系图58
3.4.3 扩充实体联系图61
3.4.4 数据建模步骤62
3.5 行为建模与STD图62
3.5.1 处理模型和控制模型之间的关系63
3.5.2 控制流图63
3.5.3 状态转换图63
3.6 需求规格说明与验证65
3.6.1 需求规格说明书的主要内容65
3.6.2 软件需求的验证69
本章小结70
习题70
第4章 软件设计与编码71
4.1 软件设计的基本概念和原则71
4.1.1 模块化71
4.1.2 抽象72
4.1.3 求精73
4.1.4 信息隐藏73
4.1.5 体系结构73
4.1.6 设计模式74
4.1.7 重构74
4.1.8 功能独立性74
4.2 概要设计76
4.2.1 概要设计的任务和过程76
4.2.2 概要设计的原则78
4.2.3 常见的软件体系结构80
4.2.4 体系结构设计84
4.2.5 数据库的概念结构设计85
4.2.6 概要设计中常用的图形工具87
4.3 结构化设计方法91
4.3.1 数据流的类型92
4.3.2 变换分析92
4.3.3 事务分析94
4.3.4 设计过程和原则95
4.4 详细设计96
4.4.1 详细设计的目标与任务96
4.4.2 过程设计的常用工具97
4.4.3 数据库逻辑结构设计和物理设计101
4.4.4 人机界面设计104
4.5 面向数据结构的设计方法107
4.5.1 Jackson方法107
4.5.2 Wamier方法113
4.6 编码115
4.6.1 选择程序设计语言115
4.6.2 编码的准则116
本章小结117
习题118
第5章 面向对象的分析与建模120
5.1 面向对象方法学概述120
5.1.1 面向对象方法学的概念120
5.1.2 面向对象方法学的基本特点122
5.1.3 面向对象的软件工程及开发模型123
5.1.4 常用的面向对象的开发方法124
5.2 面向对象的分析128
5.2.1 面向对象分析的任务和模型128
5.2.2 面向对象分析的过程129
5.3 用例分析建立功能模型129
5.3.1 用例分析的步骤130
5.3.2 确定系统边界和参与者130
5.3.3 建立场景和用例132
5.3.4 定义关系和建立用例图133
5.3.5 用户界面草案136
5.3.6 系统用例的优先级处理137
5.4 建立对象模型138
5.4.1 确定类与对象138
5.4.2 定义属性与服务139
5.4.3 定义关系和建立类图141
5.5 建立动态模型145
5.5.1 画顺序图145
5.5.2 画协作图147
5.5.3 画状态图147
5.5.4 画活动图150
本章小结153
习题153
第6章 面向对象的软件设计与实现155
6.1 面向对象软件设计概述155
6.1.1 面向对象设计的目标155
6.1.2 面向对象设计的模型156
6.2 系统设计156
6.2.1 系统设计的主要内容156
6.2.2 系统顶层架构的选择157
6.2.3 系统设计的分层模式159
6.3 详细设计162
6.3.1 详细设计的主要内容162
6.3.2 问题域子系统设计162
6.3.3 人机交互子系统设计164
6.3.4 任务管理子系统设计165
6.3.5 数据管理子系统设计167
6.3.6 设计优化168
6.4 面向对象的编码170
6.4.1 程序设计语言的特点170
6.4.2 程序设计语言的选择173
6.4.3 编码的风格与准则173
6.4.4 类的实现175
6.4.5 泛化和聚合关系的实现176
6.4.6 关联关系的实现177
6.4.7 依赖关系的实现179
本章小结181
习题181
第7章 软件测试技术183
7.1 软件测试概述183
7.1.1 基本定义183
7.1.2 软件测试的必要性184
7.1.3 通过维恩图理解测试184
7.1.4 软件测试的目的185
7.1.5 软件测试的原则186
7.1.6 软件测试的方法和步骤188
7.2 白盒测试技术188
7.2.1 静态测试189
7.2.2 程序插桩190
7.2.3 逻辑覆盖191
7.2.4 测试覆盖准则195
7.2.5 基本路径测试196
7.2.6 域测试198
7.2.7 符号测试199
7.2.8 Z路径覆盖199
7.3 黑盒测试技术200
7.3.1 等价类划分法200
7.3.2 边界值分析法203
7.3.3 因果图法204
7.3.4 错误推测法207
7.3.5 场景法207
7.3.6 判定表驱动法209
7.4 灰盒测试技术210
7.5 软件测试过程211
7.5.1 单元测试212
7.5.2 集成测试214
7.5.3 系统测试218
7.5.4 验收测试219
7.6 面向对象的软件测试220
7.6.1 面向对象软件的测试策略220
7.6.2 面向对象软件的测试方法221
7.7 测试工具的分类和选择226
7.7.1 测试工具分类226
7.7.2 测试工具的选择229
7.8 测试计划与测试报告229
7.8.1 测试计划230
7.8.2 测试报告232
本章小结234
习题234
第8章 软件配置与软件维护236
8.1 软件配置活动236
8.1.1 软件配置活动的意义236
8.1.2 主要软件配置管理活动236
8.1.3 配置管理流程238
8.2 版本管理与变更管理239
8.2.1 版本管理的必要性239
8.2.2 早期的版本管理240
8.2.3 元素、分支的版本管理240
8.2.4 构件、基线的版本管理240
8.2.5 现代版本管理241
8.2.6 基于基线的变更管理243
8.2.7 变更请求管理过程243
8.3 配置审核与状态报告248
8.3.1 配置审核248
8.3.2 配置状态报告248
8.4 软件维护的概念249
8.4.1 软件维护的类型及策略249
8.4.2 软件维护的内容及方法251
8.4.3 软件维护的特点252
8.5 软件维护的实施254
8.5.1 软件维护机构254
8.5.2 维护实施254
8.5.3 维护文档257
8.5.4 评价维护活动258
8.6 软件可维护性258
8.6.1 影响可维护性的因素258
8.6.2 软件可维护性的定量度量259
8.6.3 提高可维护性的方法259
8.6.4 可维护性复审260
8.7 软件再工程技术261
8.7.1 软件再工程过程261
8.7.2 软件再工程分析264
本章小结264
习题265
第9章 质量保证与软件工程标准化266
9.1 软件质量概念266
9.1.1 软件质量及特征指标266
9.1.2 质量评价模型267
9.1.3 质量控制与质量保证272
9.1.4 质量保证体系273
9.2 软件可靠性与复杂性276
9.2.1 可靠性276
9.2.2 可靠性的评价指标277
9.2.3 系统的稳态可用性计算278
9.2.4 平均无故障运行时间的估算279
9.2.5 复杂性280
9.2.6 提高软件可靠性的方法282
9.3 软件工程标准化283
9.3.1 软件工程标准化的意义283
9.3.2 软件工程标准化的层次283
9.3.3 我国的软件工程标准化工作284
9.3.4 ISO 9000标准简介285
9.3.5 质量认证286
9.4 软件能力成熟度模型CMM287
9.4.1 CMM级别287
9.4.2 CMM的内部结构和进化过程289
9.4.3 利用CMM进行成熟度评估291
9.4.4 CMM与ISO9000系列标准292
9.4.5 我国的软件评估体系SPCA292
本章小结293
习题294
第10章 软件项目管理295
10.1 软件项目管理概念295
10.1.1 软件项目的特点295
10.1.2 软件项目管理的内容295
10.2 风险管理296
10.2.1 风险类型296
10.2.2 风险识别297
10.2.3 风险评估300
10.2.4 风险应对策略302
10.3 人员组织管理304
10.3.1 项目组织结构305
10.3.2 人员配置306
10.3.3 激励与考核308
10.4 软件规模估算308
10.4.1 常用估算技术309
10.4.2 IBM模型312
10.4.3 Putnam模型312
10.4.4 COCOMO模型313
10.5 计划与进度管理315
10.5.1 软件项目计划315
10.5.2 工期估算315
10.5.3 项目任务分解316
10.5.4 进度安排318
10.5.5 进度跟踪与控制326
10.6 成本管理327
10.6.1 资源计划327
10.6.2 成本估算328
10.6.3 成本控制328
10.7 文档管理329
10.7.1 文档编制目的329
10.7.2 文档编制内容329
10.7.3 提高文档编制的质量330
10.7.4 文档的管理和维护330
本章小结331
习题331
参考文献333