图书介绍
软件工程PDF|Epub|txt|kindle电子书版本网盘下载
![软件工程](https://www.shukui.net/cover/54/31098231.jpg)
- 张海藩,吕云翔编著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115326539
- 出版时间:2013
- 标注页数:336页
- 文件大小:104MB
- 文件页数:348页
- 主题词:软件工程-高等学校-教材
PDF下载
下载说明
软件工程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
1.1.2软件危机介绍2
1.1.3产生软件危机的原因2
1.1.4消除软件危机的途径4
1.2软件工程5
1.2.1什么是软件工程5
1.2.2软件工程的基本原理5
1.3软件工程包含的领域7
小结9
习题9
第2章 软件过程11
2.1软件生命周期的基本任务11
2.2瀑布模型14
2.3快速原型模型16
2.4增量模型17
2.5螺旋模型18
2.6喷泉模型19
2.7 Rational统一过程20
2.7.1最佳实践21
2.7.2 RUP的十大要素22
2.7.3 RUP生命周期24
2.8敏捷过程与极限编程26
2.8.1敏捷过程概述26
2.8.2极限编程27
2.9能力成熟度模型29
2.9.1能力成熟度模型的结构29
2.9.2能力成熟度等级30
2.9.3关键过程域31
2.9.4应用CMM32
小结32
习题33
第2篇 传统方法学35
第3章 结构化分析35
3.1概述35
3.2与用户沟通的方法36
3.2.1访谈36
3.2.2简易的应用规格说明技术37
3.2.3软件原型38
3.3分析建模与规格说明39
3.3.1分析建模39
3.3.2软件需求规格说明39
3.4实体—关系图41
3.5数据流图42
3.5.1数据流图符号43
3.5.2例子44
3.5.3命名46
3.6状态转换图47
3.6.1状态47
3.6.2事件47
3.6.3符号48
3.6.4例子48
3.7数据字典49
3.8结构化分析实例51
3.8.1问题陈述51
3.8.2问题定义51
3.8.3可行性研究52
3.8.4需求分析57
小结62
习题63
第4章 结构化设计67
4.1结构化设计与结构化分析的关系67
4.2软件设计的概念和原理68
4.2.1模块化68
4.2.2抽象70
4.2.3逐步求精70
4.2.4信息隐藏71
4.3模块独立72
4.3.1耦合72
4.3.2内聚73
4.4启发规则74
4.5表示软件结构的图形工具76
4.5.1层次图和HIPO图76
4.5.2结构图78
4.6面向数据流的设计方法79
4.6.1概念79
4.6.2变换分析80
4.6.3事务分析85
4.6.4设计优化86
4.7人—机界面设计87
4.7.1人—机界面设计问题87
4.7.2人—机界面设计过程88
4.7.3界面设计指南89
4.8过程设计91
4.9过程设计的工具92
4.9.1程序流程图93
4.9.2盒图(N-S图)93
4.9.3 PAD图94
4.9.4判定表95
4.9.5判定树96
4.9.6过程设计语言97
4.10面向数据结构的设计方法97
4.10.1 Jackson图98
4.10.2改进的Jackson图99
4.10.3 Jackson方法99
小结103
习题104
第5章 结构化实现106
5.1编码107
5.1.1选择程序设计语言107
5.1.2编码风格108
5.2软件测试基础110
5.2.1测试目标110
5.2.2黑盒测试和白盒测试110
5.2.3测试准则111
5.2.4流图111
5.3逻辑覆盖112
5.4控制结构测试115
5.4.1基本路径测试115
5.4.2条件测试117
5.4.3数据流测试119
5.4.4循环测试120
5.5黑盒测试技术121
5.5.1等价划分121
5.5.2边界值分析123
5.5.3错误推测124
5.6测试策略124
5.6.1测试步骤125
5.6.2单元测试125
5.6.3集成测试127
5.6.4确认测试130
5.7调试131
5.7.1调试过程131
5.7.2调试途径132
5.8软件可靠性133
5.8.1基本概念134
5.8.2估算平均无故障时间的方法134
小结136
习题137
第3篇 面向对象方法学140
第6章 面向对象方法学导论140
6.1面向对象程序设计实例140
6.1.1用对象分解取代功能分解140
6.1.2设计类等级142
6.1.3定义属性和服务143
6.2面向对象方法学概述144
6.2.1面向对象方法学的要点144
6.2.2面向对象的软件过程146
6.3面向对象方法学的主要优点146
6.4面向对象的概念149
6.4.1对象150
6.4.2其他概念152
6.5面向对象建模155
6.6对象模型156
6.6.1表示类的符号156
6.6.2表示关系的符号158
6.7动态模型162
6.8功能模型163
6.9 3种模型之间的关系163
小结164
习题164
第7章 面向对象分析166
7.1分析过程166
7.1.1概述166
7.1.2 3个子模型与5个层次167
7.2需求陈述168
7.2.1书写要点168
7.2.2例子168
7.3建立对象模型169
7.3.1确定类与对象170
7.3.2确定关联171
7.3.3划分主题174
7.3.4确定属性174
7.3.5识别继承关系176
7.3.6反复修改177
7.4建立动态模型179
7.4.1编写脚本179
7.4.2设想用户界面180
7.4.3画事件跟踪图181
7.4.4画状态图182
7.4.5审查动态模型184
7.5建立功能模型184
7.6定义服务186
7.7面向对象分析实例186
7.7.1需求陈述187
7.7.2建立对象模型187
7.7.3建立动态模型188
7.7.4建立功能模型190
7.7.5进一步完善190
小结191
习题192
第8章 面向对象设计194
8.1面向对象设计的准则194
8.2启发规则196
8.3系统分解197
8.3.1子系统之间的两种交互方式198
8.3.2组织系统的两种方案199
8.3.3设计系统的拓扑结构199
8.4设计问题域子系统199
8.5设计人—机交互子系统201
8.5.1设计人—机交互界面的准则201
8.5.2设计人—机交互子系统的策略202
8.6设计任务管理子系统203
8.6.1分析并发性203
8.6.2设计任务管理子系统204
8.7设计数据管理子系统205
8.7.1选择数据存储管理模式205
8.7.2设计数据管理子系统206
8.7.3例子207
8.8设计类中的服务208
8.8.1确定类中应有的服务208
8.8.2设计实现服务的方法208
8.9设计关联209
8.10设计优化210
8.10.1确定优先级210
8.10.2提高效率的几项技术211
8.10.3调整继承关系212
8.11面向对象分析与设计实例213
8.11.1面向对象分析214
8.11.2面向对象设计215
小结220
习题220
第9章 面向对象实现222
9.1程序设计语言222
9.1.1面向对象语言的优点222
9.1.2面向对象语言的技术特点223
9.1.3选择面向对象语言226
9.2程序设计风格226
9.2.1提高可重用性227
9.2.2提高可扩充性228
9.2.3提高健壮性229
9.3测试策略229
9.3.1面向对象的单元测试230
9.3.2面向对象的集成测试230
9.3.3面向对象的确认测试230
9.4设计测试用例230
9.4.1测试类的方法231
9.4.2集成测试方法232
小结234
习题234
第10章 统一建模语言236
10.1概述236
10.1.1 UML的产生和发展236
10.1.2 UML的系统结构237
10.1.3 UML的图238
10.1.4 UML的应用领域239
10.2静态建模机制240
10.2.1用例240
10.2.2类图和对象图244
10.3动态建模机制245
10.3.1消息245
10.3.2状态图246
10.3.3顺序图247
10.3.4协作图248
10.3.5活动图249
10.4描述物理架构的机制249
10.4.1逻辑架构和物理架构250
10.4.2构件图250
10.4.3部署图250
10.5使用和扩展UML252
10.5.1使用UML的准则252
10.5.2扩展UML的机制253
小结253
习题254
第4篇 软件项目管理257
第11章 计划257
11.1度量软件规模257
11.1.1代码行技术257
11.1.2功能点技术258
11.2 工作量估算260
11.2.1静态单变量模型260
11.2.2动态多变量模型260
11.2.3 COCOMO2模型261
11.3进度计划263
11.3.1基本原则264
11.3.2估算软件开发时间264
11.3.3 Gantt图265
11.3.4 工程网络266
11.3.5估算进度267
11.3.6关键路径269
11.3.7机动时间269
小结270
习题271
第12章 组织273
12.1民主制程序员组273
12.2主程序员组274
12.3现代程序员组276
12.4软件项目组277
12.4.1 3种组织方式277
12.4.2 4种组织范型279
小结279
习题279
第13章 控制281
13.1风险管理281
13.1.1软件风险分类281
13.1.2风险识别282
13.1.3风险预测286
13.1.4处理风险的策略287
13.2质量保证289
13.2.1软件质量289
13.2.2软件质量保证措施290
13.3配置管理292
13.3.1软件配置292
13.3.2软件配置管理过程294
小结299
习题299
第14章 软件维护与软件文档301
14.1软件维护301
14.1.1软件维护的过程301
14.1.2软件维护的分类303
14.1.3软件的可维护性303
14.1.4软件维护的副作用304
14.2软件文档305
小结307
习题307
第5篇 高级课题309
第15章 形式化方法309
15.1概述309
15.1.1非形式化方法的缺点309
15.1.2软件开发过程中的数学310
15.1.3应用形式化方法的准则310
15.2有穷状态机311
15.2.1基本概念311
15.2.2电梯问题312
15.2.3评论314
15.3 Petri网315
15.3.1基本概念315
15.3.2应用实例316
15.4 Z语言317
15.4.1简介318
15.4.2评论319
小结320
习题320
第16章 软件重用322
16.1可重用的软件成分322
16.2软件重用过程323
16.2.1构件组装模型323
16.2.2类构件324
16.2.3重用过程模型325
16.3领域工程326
16.3.1分析过程326
16.3.2领域特征327
16.3.3结构建模和结构点328
16.4开发可重用的构件328
16.4.1为了重用的分析与设计328
16.4.2基于构件的开发329
16.5分类和检索构件330
16.5.1描述可重用的构件330
16.5.2重用环境332
16.6软件重用的效益333
小结334
习题334
参考文献335