图书介绍
软件工程PDF|Epub|txt|kindle电子书版本网盘下载
![软件工程](https://www.shukui.net/cover/29/30882754.jpg)
- 王庆育编著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302087636
- 出版时间:2004
- 标注页数:488页
- 文件大小:39MB
- 文件页数:506页
- 主题词:软件工程
PDF下载
下载说明
软件工程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1部分 软件工程基础3
第1章 软件工程概论3
1.1 软件3
1.1.1 软件的定义3
目录3
1.1.2 软件的特征4
1.1.3 软件的应用4
1.2 软件工程5
1.2.1 软件的发展历史5
1.2.2 软件过程的概念7
1.2.3 软件工程的概念8
1.2.4 软件工程的要素8
1.3 软件工程的活动9
1.2.5 软件工程的目标9
1.3.1 建模10
1.3.2 问题求解10
1.3.3 知识获取11
1.3.4 决策知识11
1.4 自测练习11
1.5 自测练习参考答案13
第2章 软件过程16
2.1 软件过程框架16
2.2 软件的生存周期和瀑布模型17
2.3 原型实现模型19
2.4 演化软件过程模型20
2.4.1 增量模型20
2.5 微软解决框架过程模型21
2.4.2 螺旋模型21
2.5.1 过程定义22
2.5.2 目标驱动22
2.5.3 基于风险管理的开发调度23
2.5.4 按产品版本发布23
2.5.5 支持项目管理23
2.5.6 靠改进特性与固定资源来激发创造力的战略23
2.5.7 同步——稳定开发法26
2.6 基于构件的开发模型26
2.7 极限编程27
2.7.1 目标与活动28
2.7.2 实践方法29
2.7.4 XP应用的限制31
2.7.3 XP——演化模型31
2.8 软件过程能力成熟度模型32
2.8.1 CMM简介32
2.8.2 关键过程域36
2.8.3 CMM与ISO37
2.8.4 CMM的应用44
2.9 自测练习47
2.10 自测练习参考答案49
第3章 软件工程建模语言51
3.1 建模的概念51
3.1.1 系统及模型和视图51
3.1.2 概念和现象52
3.2 统一建模语言52
3.2.1 为什么需要UML52
3.3.1 用例图54
3.3 UML图形符号54
3.2.2 UML简介54
3.3.2 类图及对象图和包57
3.3.3 构件图和配置图64
3.3.4 消息65
3.3.5 状态图66
3.3.6 顺序图67
3.3.7 协作图68
3.3.8 活动图69
3.3.9 四种图的运用71
3.4 自测练习71
3.5 自测练习参考答案79
第2部分 软件项目管理87
第4章 软件项目87
4.1.2 项目管理的发展88
4.1 项目管理的历史及发展88
4.1.1 项目管理的历史88
4.1.3 项目管理的应用89
4.1.4 软件项目管理的特点90
4.2 软件项目的基本概念90
4.2.1 基本概念90
4.2.2 项目管理框架91
4.2.3 人员91
4.2.4 产品92
4.2.5 过程92
4.2.6 项目计划92
4.3 项目生存周期92
4.5.1 明白领导和管理的区别93
4.5 关键管理技能93
4.4 项目拥有者93
4.5.2 交流技巧94
4.5.3 谈判能力94
4.5.4 解决问题的能力94
4.5.5 影响组织94
4.6 项目管理的基本思想和技术94
4.6.1 成本/进度综合控制94
4.6.2 蒙托卡罗模拟技术95
4.6.3 项目进展评价技术95
4.6.4 网络计划技术96
4.6.5 项目管理的可视化技术96
4.7 自测练习97
4.8 自测练习参考答案98
5.1.1 组织原则100
第5章 团队管理100
5.1 团队模型100
5.1.2 微软解决方案框架团队模型101
5.2 自测练习104
5.3 自测练习参考答案105
第6章 项目计划106
6.1 项目计划简介106
6.1.1 影响项目估算的因素106
6.1.2 软件范围的确定107
6.1.3 项目所需资源107
6.2 项目估算108
6.2.1 项目估算的方法108
6.2.2 软件规模估算109
6.2.3 经验估算模型110
6.3 项目计划的制定与提交112
6.4 自测练习113
6.5 自测练习参考答案114
第7章 风险分析和管理116
7.1 软件风险116
7.1.1 风险的概念116
7.1.2 风险策略116
7.1.3 软件风险的类别117
7.2 风险识别117
7.3 风险预测和评估118
7.3.1 建立风险表118
7.3.2 评估风险影响120
7.4.1 建立有效处理风险策略121
7.3.3 风险评估121
7.4 风险的缓解和监控与管理121
7.4.2 RMMM计划123
7.4.3 交流风险124
7.5 自测练习124
7.6 自测练习参考答案124
第8章 项目进度计划与控制127
8.1 项目进度计划127
8.1.1 进度计划127
8.1.2 自顶向下与自底向上的计划127
8.1.3 基本步骤128
8.2 项目跟踪与控制129
8.2.1 进度安排129
8.2.3 跟踪进度130
8.2.2 关键路径130
8.2.4 百分比值分析法131
8.2.5 赢得值法132
8.3 Microsoft Project 2000136
8.3.1 简介136
8.3.2 功能138
8.4 自测练习140
8.5 自测练习参考答案142
第9章 软件质量保证144
9.1 软件质量144
9.1.1 软件质量的定义144
9.1.3 软件质量保证的含义145
9.1.4 软件质量成本的含义145
9.1.2 软件质量控制的含义145
9.2 软件质量保证146
9.2.1 软件质量保证的历史146
9.2.2 SQA活动147
9.2.3 统计软件质量保证147
9.2.4 开发正确的产品148
9.3 软件评审148
9.3.1 阶段评审149
9.3.2 正式评审149
9.3.3 项目完成后评审149
9.4 软件复杂性与可靠性150
9.4.1 软件复杂性150
9.4.2 软件可靠性150
9.4.3 软件的容错技术151
9.5.2 软件质量特性152
9.5.1 不同的人对软件质量关心的重点不同152
9.5 软件质量度量模型152
9.6 自测练习153
9.7 自测练习参考答案155
第10章 软件配置管理157
10.1 软件配置项及基线157
10.1.1 软件配置项157
10.1.2 基线158
10.2 配置管理过程159
10.2.1 配置对象标识159
10.2.2 版本控制160
10.2.3 变更控制161
10.3 一个配置管理的工具——Visual Source Safe162
10.4 自测练习163
10.5 自测练习参考答案164
第3部分 传统的软件工程169
第11章 需求工程169
11.1 基本概念169
11.1.1 业务过程工程170
11.1.2 产品工程170
11.1.3 需求工程170
11.2 需求获取171
11.2.1 需求获取方式172
11.2.2 提高获取的效率173
11.2.3 原型与场景176
11.3 需求分析建模179
11.3.1 为什么需要建模179
11.3.2 建模的方法179
11.3.4 数据建模180
11.3.3 结构化分析180
11.3.5 功能建模187
11.3.6 控制模型192
11.3.7 数据字典193
11.3.8 IDEF方法199
11.4 软件需求规约及评审203
11.4.1 需求规约203
11.4.2 规约的评审203
11.5 自测练习204
11.6 自测练习参考答案208
第12章 系统设计211
12.1 系统设计的概念211
12.1.1 软件设计模型211
12.1.2 设计目标和原则212
12.1.3 设计基本方法214
12.1.4 设计文档218
12.2 数据设计219
12.2.1 数据三模式的概念219
12.2.2 数据库设计的原则220
12.2.3 数据仓库223
12.3 体系结构设计224
12.3.1 体系结构是通用的224
12.3.2 主机/终端结构225
12.3.3 客户机/服务器结构226
12.3.4 多层分布式结构228
12.3.5 体系结构的选择229
12.3.6 系统模块结构231
12.4.1 界面设计是综合艺术235
12.4.2 界面设计的黄金规则235
12.4 人机界面设计235
12.4.3 界面设计237
12.4.4 界面设计的问题240
12.4.5 界面设计原型技巧241
12.5 过程设计242
12.5.1 结构化程序设计242
12.5.2 过程设计模板243
12.6 自测练习245
12.7 自测练习参考答案249
第13章 软件测试253
13.1 测试目标和原则253
13.1.1 测试目标253
13.1.2 测试规则254
13.1.3 可测试性255
13.2.1 白盒法257
13.1.4 测试方法257
13.2 测试用例设计257
13.2.2 黑盒法263
13.2.3 针对专门环境的测试264
13.3 测试计划265
13.4 软件测试过程266
13.4.1 软件测试步骤266
13.4.2 单元测试268
13.4.3 集成测试269
13.4.4 确认测试272
13.4.5 一些常见的可用性问题274
13.5 测试和调试275
13.5.1 调试和测试的区别275
13.5.3 调试的方法276
13.5.2 调试的困难276
13.6 自测练习277
13.5.4 测试准备277
13.7 自测练习参考答案280
第14章 软件技术度量284
14.1 软件技术度量的框架284
14.1.1 度量准则284
14.1.2 有效软件度量的属性285
14.2 需求分析度量285
14.2.1 基于功能的分析模型测量285
14.2.2 分析规约质量的度量287
14.3 设计模型度量287
14.3.1 体系结构度量287
14.3.2 过程设计度量288
14.4 源代码度量289
14.3.3 人机界面的度量289
14.5 对测试的度量290
14.6 对维护的度量290
14.7 自测练习290
14.8 自测练习参考答案292
第4部分 面向对象的软件工程295
第15章 面向对象的概念295
15.1 面向对象的概念化295
15.1.1 项目概念化295
15.1.2 面向对象的范型297
15.1.3 面向对象的软件工程298
15.1.4 面向对象的管理298
15.2.1 对象的识别299
15.2 类与对象299
15.3 面向对象的要素301
15.3.1 对象的关系301
15.2.2 对象和类301
15.3.2 面向对象的特性303
15.4 面向对象的建模304
15.4.1 目标305
15.4.2 面向对象的模型305
15.4.3 面向对象的开发方法307
15.5 自测练习308
15.6 自测练习参考答案310
第16章 面向对象的分析311
16.1 面向对象的分析与设计311
16.2.1 需求规格说明312
16.2 案例分析——图书管理系统312
16.2.2 需求规格说明的细化314
16.2.3 需求规格说明的验证315
16.3 需求分析316
16.3.1 需求分析的过程316
16.3.2 用UML建模322
16.4 以用例为中心的需求分析方法326
16.5 自测练习327
16.6 自测练习参考答案329
第17章 面向对象的设计331
17.1 面向对象的设计概述331
17.1.1 面向对象的设计目标331
17.1.2 类设计与产品设计331
17.2.1 对象存储方法332
17.2 对象的存储332
17.2.2 对象序列化333
17.2.3 对象属性的永久保留334
17.2.4 对象存储的评价335
17.2.5 图书管理系统的对象存储335
17.3 进程体系结构337
17.3.1 多节点建模与进程间的通信337
17.3.2 实例339
17.4 用户界面341
17.4.1 用户界面设计341
17.4.2 用户界面的交互样式341
17.4.3 图书管理系统的界面344
17.5 类设计345
17.5.1 类架构346
17.5.2 系统分解348
17.5.3 类图的附加符号348
17.5.4 交互图349
17.6 类设计的目标及其验证354
17.6.1 代码重用354
17.6.2 良好设计的类与方法355
17.6.3 数据的完整性355
17.6.4 类设计的验证356
17.7 方法设计357
17.7.1 确定方法357
17.7.2 创建优质的方法358
17.8 自测练习358
17.9 自测练习参考答案360
18.1.1 程序设计的方法363
18.1 程序设计的发展363
第18章 编码实现363
18.1.2 软件开发环境的发展364
18.1.3 软件开发模式的发展364
18.2 开发策略365
18.2.1 自顶向下的开发与自底向上的开发365
18.2.2 自底向上和自顶向下的结合367
18.2.3 线程方法368
18.3 编码计划368
18.4 编程风格370
18.4.1 简单性371
18.4.2 注释和内部文档373
18.5 编码标准376
18.5.1 一般规则376
18.5.4 可执行的命令377
18.5.3 声明377
18.5.2 模块化规则377
18.6 超类设计和超类对象的实现378
18.6.1 识别超类378
18.6.2 面向对象方法的超类实现379
18.7 自测练习379
18.8 自测练习参考答案381
第19章 面向对象的测试382
19.1 基本概念382
19.1.1 测试的定义382
19.1.2 面向对象测试382
19.1.3 错误及故障和失效383
19.2 测试计划384
19.2.1 计划内容384
19.2.3 测试用例386
19.2.2 预期结果386
19.3 面向对象的测试过程387
19.3.1 面向对象的单元测试387
19.3.2 面向对象的集成测试389
19.3.3 面向对象的系统测试391
19.3.4 面向对象的测试步骤392
19.3.5 软件内部测试的自动工具392
19.4 面向对象系统与面向过程系统的测试393
19.4.1 面向对象系统测试的复杂性393
19.4.2 有关测试的一些问题395
19.5 案例分析——测试图书馆管理系统398
19.5.1 LMS的测试计划399
19.5.2 LMS的单元测试400
19.5.3 LMS的测试用例401
19.6 配置管理的测试402
19.7 自测练习403
19.8 自测练习参考答案404
第5部分 软件工程的最新技术409
第20章 基于构件的软件工程409
20.1 构件409
20.1.1 构件技术409
20.1.2 构件属性410
20.2 基于构件的系统开发411
20.2.1 系统结构分层和逻辑与数据分离411
20.2.2 选择和评价已有的构件412
20.2.3 构件的使用412
20.2.4 实现构件技术必须具备的条件413
20.3.1 构件的设计414
20.3 构件的开发414
20.3.2 领域工程415
20.4 构件和中间件418
20.4.1 中间件是构件存在的基础418
20.4.2 构件思想对中间件的作用420
20.4.3 中间件的分类421
20.4.4 基于中间件的开发系统模型424
20.4.5 中间件面临的一些问题427
20.5 软件构件的标准427
20.5.1 OMG/CORBA427
20.5.2 EJB和J2EE428
20.5.3 Microsoft DCOM及Windows DNA429
20.6 自测练习431
20.7 自测练习参考答案432
第21章 客户服务器与Web软件工程434
21.1 计算机系统体系结构434
21.1.1 计算机系统结构434
21.1.2 C/S系统结构436
21.2 C/S系统437
21.2.1 C/S系统构成438
21.2.2 分布应用子系统的指导原则441
21.2.3 分布应用举例441
21.3 C/S系统开发442
21.3.1 C/S系统设计442
21.3.2 C/S系统结构设计443
21.3.3 C/S系统数据库设计445
21.3.4 提高C/S系统性能的方法445
21.4.1 C/S与B/S449
21.4 基于Web系统449
21.4.2 B/S工程452
21.4.3 B/S系统设计454
21.4.4 B/S系统测试457
21.4.5 B/S系统管理458
21.5 自测练习460
21.6 自测练习参考答案461
第22章 设计模式463
22.1 设计模式简介463
22.1.1 设计模式产生于建筑学和人类学463
22.1.2 再工程与模式化运动464
22.1.3 软件模式与模式语言465
22.1.4 面向模式的软件再工程465
22.1.6 从再工程过程中抽象软件模式467
22.1.5 软件再工程首先面对反面模式467
22.2 基本设计模式468
22.2.1 创建型模式468
22.2.2 结构型模式471
22.2.3 行为模式474
22.2.4 学习设计模式的意义479
22.3 应用设计模式479
22.3.1 包装程序设计模式479
22.3.2 桥接设计模式480
22.3.3 迭代程序设计模式483
22.3.4 单实例设计模式484
22.4 自测练习485
22.5 自测练习参考答案485
参考文献487