图书介绍
软件工程与开发技术PDF|Epub|txt|kindle电子书版本网盘下载
![软件工程与开发技术](https://www.shukui.net/cover/5/34932374.jpg)
- 江开耀著 著
- 出版社: 西安:西安电子科技大学出版社
- ISBN:9787560621586
- 出版时间:2009
- 标注页数:380页
- 文件大小:83MB
- 文件页数:393页
- 主题词:软件工程-高等学校-教材
PDF下载
下载说明
软件工程与开发技术PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一篇 传统的软件工程2
第1章 软件工程引论2
1.1 软件产品的概念与特征2
1.1.1 软件产品的概念与分类2
1.1.2 软件产品的特征3
1.1.3 软件发展的阶段划分4
1.2 软件危机5
1.2.1 软件危机及其表现5
1.2.2 产生软件危机的原因6
1.2.3 解决软件危机的途径7
1.3 软件工程的产生及其发展8
1.4 软件工程的技术基础9
1.5 软件工程过程的概念10
1.6 几种软件过程模型12
1.6.1 线性顺序模型13
1.6.2 原型模型14
1.6.3 快速应用开发模型14
1.6.4 演化软件过程模型15
1.7 过程技术17
1.8 软件重用技术18
1.9 计算机辅助软件工程工具19
1.10 小结21
习题21
第2章 系统工程基础与软件可行性研究23
2.1 基于计算机的系统23
2.1.1 基于计算机的系统概述23
2.1.2 计算机系统工程24
2.2 系统需求识别27
2.2.1 系统分析的目标27
2.2.2 系统分析过程27
2.3 可行性研究与分析28
2.3.1 效益度量方法29
2.3.2 成本—效益分析30
2.3.3 技术分析31
2.3.4 方案制定与评估32
2.4 系统体系结构建模32
2.4.1 建立系统结构流程图32
2.4.2 系统结构的规格说明定义35
2.5 系统定义与评审35
2.5.1 系统定义文档模板35
2.5.2 系统定义的评审36
2.6 小结37
习题37
第3章 结构化需求分析与建模38
3.1 需求分析38
3.1.1 需求分析的任务38
3.1.2 需求分析的步骤39
3.1.3 需求分析的原则39
3.2 数据建模40
3.2.1 实体—关系模型40
3.2.2 数据建模的其他工具42
3.3 功能建模44
3.3.1 数据流图的基本符号44
3.3.2 数据流与加工之间的关系45
3.3.3 数据流模型的建立方法45
3.3.4 建立数据流模型的原则47
3.4 行为建模48
3.4.1 状态迁移图48
3.4.2 Petri网49
3.5 数据字典51
3.5.1 数据字典的基本符号51
3.5.2 数据字典中的条目及说明格式51
3.5.3 加工逻辑的描述53
3.5.4 数据字典的建立55
3.6 结构化需求分析的若干技术55
3.7 验证软件需求57
3.7.1 软件需求规格说明的主要内容57
3.7.2 软件需求的验证57
3.8 小结58
习题59
第4章 结构化软件设计60
4.1 软件设计中的基本概念和原理60
4.2 体系结构设计概述64
4.2.1 体系结构设计的任务64
4.2.2 体系结构设计中可采用的工具66
4.2.3 体系结构设计的原则67
4.2.4 体系结构设计说明书69
4.3 面向数据流的体系结构设计方法70
4.3.1 数据流图的类型70
4.3.2 面向数据流的体系结构设计过程70
4.4 详细设计概述74
4.4.1 详细设计的任务74
4.4.2 详细设计可采用的工具75
4.4.3 详细设计的原则79
4.4.4 详细设计说明书80
4.5 面向数据流的详细设计方法80
4.6 面向数据结构的设计方法82
4.7 小结86
习题86
第5章 软件编码88
5.1 程序设计语言88
5.1.1 程序设计语言的分类88
5.1.2 程序设计语言的特性89
5.1.3 程序设计语言的选择90
5.2 编码风格及软件效率92
5.2.1 编码风格92
5.2.2 软件效率95
5.3 程序复杂度的概念及度量方法95
5.3.1 程序图96
5.3.2 程序复杂度的度量方法97
5.4 小结99
习题99
第6章 软件测试技术100
6.1 软件测试基础100
6.1.1 软件测试的概念、目的和原则100
6.1.2 软件测试的过程102
6.1.3 软件测试的方法103
6.2 白盒测试技术104
6.2.1 白盒测试概念104
6.2.2 白盒测试的用例设计105
6.3 黑盒测试技术108
6.3.1 黑盒测试概念108
6.3.2 黑盒测试的用例设计108
6.4 软件测试计划和测试分析报告115
6.5 软件测试策略117
6.5.1 单元测试118
6.5.2 集成测试120
6.5.3 确认测试123
6.5.4 系统测试124
6.6 小结125
习题125
第二篇 面向对象的软件工程130
第7章 面向对象技术总论130
7.1 概述——面向对象方法论130
7.2 面向对象技术的基本概念132
7.2.1 类132
7.2.2 对象及对象实例132
7.2.3 消息机制134
7.3 面向对象技术的基本特点134
7.3.1 封装性134
7.3.2 继承性135
7.3.3 多态性136
7.3.4 抽象性138
7.4 面向对象分析方法139
7.5 面向对象技术与程序结构141
7.5.1 概述141
7.5.2 重构142
7.5.3 一个程序结构改进(重构)的例子144
7.6 面向对象软件工程148
7.6.1 传统的面向对象软件工程148
7.6.2 现代的面向对象软件工程149
7.6.3 RUP过程150
7.6.4 UML简介153
7.7 设计模式(Design Pattern)与框架(Framework)155
7.7.1 设计模式的基本概念155
7.7.2 设计模式举例——Abstract Factory(抽象工厂)模式156
7.7.3 框架的基本概念157
7.7.4 框架的应用158
7.7.5 框架开发与软件重用159
7.7.6 框架的分类及开发原则160
7.8 基于构件的软件体系结构(Com/Dcom、Corba、Internet)160
7.9 面向对象分析解决(描述)问题的模式161
7.10 小结163
习题164
第8章 业务模型165
8.1 业务模型概述165
8.2 业务建模的目的及内容166
8.2.1 业务建模的目的166
8.2.2 业务建模的内容166
8.3 业务建模流程和任务166
8.4 业务建模中使用到的UML元素和版型168
8.4.1 业务系统(Business System)168
8.4.2 业务目标(Business Goal)168
8.4.3 业务规则(Business Rule)169
8.4.4 业务参与者(Business Actor)170
8.4.5 业务工人(Business Worker)171
8.4.6 业务实体(Business Entity)171
8.4.7 业务事件(Business Event)172
8.4.8 业务用例(Business Use Case)173
8.4.9 业务用例实现(Business Use Case Realization)177
8.4.10 业务用例与业务用例实现的区别178
8.5 业务建模举例178
8.5.1 业务目标(部分)178
8.5.2 组织结构179
8.5.3 岗位设置和职责180
8.5.4 业务参与者(部分)180
8.5.5 业务用例模型180
8.5.6 业务对象模型181
8.6 小结181
习题182
第9章 需求分析与用例模型183
9.1 需求分析183
9.1.1 系统需求和需求描述183
9.1.2 需求类型183
9.1.3 需求与用例模型184
9.2 Actor及其关系184
9.2.1 Actor184
9.2.2 如何发现Actor185
9.2.3 Actor之间的关系186
9.3 用例及其关系186
9.3.1 用例(Use Case)186
9.3.2 用例的版型(Stereotype)及用例观点188
9.3.3 用例之间的关系188
9.4 用例图和用例模型193
9.4.1 参与者与用例之间的关联193
9.4.2 用例图194
9.4.3 用例模型195
9.5 用例规格说明196
9.5.1 概述196
9.5.2 用例的描述模板196
9.5.3 通过用例描述来获取系统的功能197
9.5.4 用例的描述方法及举例198
9.6 用例描述中常见的错误举例200
9.7 使用用例方法发现和确定系统功能需求203
9.7.1 通过Actor来发现用例204
9.7.2 通过业务用例和业务流程来发现用例205
9.7.3 多视角的建模206
9.8 小结206
习题207
第10章 分析设计与对象模型208
10.1 类和对象的定义208
10.1.1 类的定义208
10.1.2 类的定义讨论208
10.1.3 类的程序语言定义及和现实世界类的映射209
10.1.4 类的高级概念211
10.2 对象、类之间的关系213
10.2.1 泛化(Generalization)213
10.2.2 关联(Association)214
10.2.3 聚集(Aggregation)216
10.2.4 依赖(Depandancy)217
10.3 抽象类和接口218
10.4 分析模型(Analysis Model)219
10.4.1 边界类(Boundary)219
10.4.2 控制类(Control)220
10.4.3 实体类(Entity)221
10.4.4 分析模型举例222
10.5 设计模型223
10.6 抽象类和接口的设计原则225
10.6.1 缺省抽象原则DAP(Default Abstraction Principle)225
10.6.2 接口设计原则IDP(Interface Design Principle)225
10.6.3 黑盒原则BBP(Black Box Principle)226
10.6.4 不要具体化超类原则DCSP(Don't Concrete Supperclass Principle)226
10.7 类图227
10.8 领域设计(Domain Design)227
10.8.1 概述227
10.8.2 领域建模228
10.8.3 领域分析228
10.8.4 领域工程228
10.9 面向对象设计的原则229
10.9.1 单一职责原则(SRP)229
10.9.2 开闭原则(OCP)229
10.9.3 Liskov替换原则231
10.9.4 依赖倒置原则(DIP)237
10.9.5 接口分离原则(ISP)238
10.10 对象模型与关系模型240
10.10.1 概念模型的表示方法240
10.10.2 对象模型和关系模型的相互转换241
10.11 小结242
习题242
第11章 系统结构与包模型243
11.1 包的概念243
11.2 包之间的依赖关系243
11.3 包的版型244
11.4 用包表示的系统高层结构244
11.5 设计包的原则245
11.5.1 重用等价原则(REP)245
11.5.2 共同闭包原则(CCP)245
11.5.3 共同重用原则(CRP)246
11.5.4 非循环依赖原则(ADP)246
11.5.5 稳定依赖原则(SDP)246
11.5.6 稳定抽象原则(SAP)246
11.6 小结247
习题247
第12章 系统动态特性与对象交互模型248
12.1 动态模型概述248
12.2 交互图248
12.2.1 概述248
12.2.2 顺序图248
12.2.3 顺序图中的对象249
12.2.4 顺序图中的消息249
12.2.5 建立顺序图的方法和步骤250
12.2.6 通信图(Communication Diagram)250
12.2.7 通信图中的元素251
12.2.8 顺序图和通信图的比较251
12.3 状态图252
12.3.1 概述252
12.3.2 状态图中的基本概念253
12.3.3 状态图的工具支持254
12.4 活动图254
12.4.1 概述254
12.4.2 活动图中的基本概念254
12.4.3 活动图的用途256
12.4.4 活动图的工具支持257
12.5 UML2.0的活动图257
12.6 小结258
习题259
第13章 构件模型和部署模型260
13.1 代码实现与构件模型260
13.1.1 概述260
13.1.2 构件(Component)和构件图(Component Diagram)260
13.1.3 构件(Component)图的作用261
13.2 部署图(Deploy Diagram)262
13.3 小结262
习题262
第14章 面向对象测试基础263
14.1 面向对象的单元测试263
14.2 面向对象的集成测试264
14.3 面向对象的确认测试与系统测试264
14.4 设计测试用例265
14.4.1 测试用例概述265
14.4.2 面向对象概念对测试用例设计的影响265
14.4.3 类测试用例设计266
14.4.4 类间测试用例设计267
14.4.5 测试用例设计举例268
14.5 小结270
习题270
第三篇 软件工程项目管理272
第15章 软件工程项目管理基础272
15.1 项目管理的范围272
15.2 人员角色管理273
15.2.1 项目参与者273
15.2.2 项目负责人274
15.2.3 软件项目组的组织结构274
15.2.4 小组内的协调和通信275
15.3 问题管理277
15.4 过程管理277
15.5 小结278
习题278
第16章 软件度量280
16.1 软件度量280
16.2 面向规模的度量281
16.3 面向功能的度量281
16.4 软件质量的度量284
16.4.1 影响软件质量的因素284
16.4.2 软件质量度量285
16.5 在软件过程中集成度量数据286
16.5.1 建立基线286
16.5.2 度量数据的收集、计算和评价287
16.6 小结288
习题289
第17章 软件计划290
17.1 软件范围界定290
17.2 资源需求292
17.3 项目估算293
17.3.1 基于问题分解的估算294
17.3.2 基于过程分解的估算296
17.3.3 经验估算模型296
17.3.4 COCOMO模型297
17.3.5 软件方程式299
17.3.6 自动估算工具300
17.4 软件项目计划的结构300
17.5 项目计划的分解求精302
17.5.1 任务的确定与并发处理302
17.5.2 制定明细的开发进度计划303
17.6 计划跟踪监督304
17.7 计划执行情况的度量与计划调控305
17.8 小结305
习题306
第18章 软件工程风险管理307
18.1 软件风险307
18.2 风险识别308
18.3 风险预测309
18.3.1 建立风险表309
18.3.2 风险评估310
18.4 风险缓解、监控与管理311
18.5 RMMM计划313
18.6 小结314
习题314
第19章 软件质量保证315
19.1 软件质量与SQA315
19.1.1 软件质量315
19.1.2 SQA活动316
19.2 软件复审316
19.2.1 软件复审简介316
19.2.2 软件缺陷对成本的影响317
19.2.3 缺陷的放大和消除317
19.3 正式的技术复审319
19.3.1 复审会议的组织319
19.3.2 复审报告和记录保存320
19.3.3 复审指南320
19.4 基于统计的质量保证321
19.5 软件可靠性322
19.5.1 可靠性和可用性322
19.5.2 平均无故障运行时间的估算323
19.6 SQA计划324
19.7 小结325
习题326
第20章 软件配置管理327
20.1 软件配置管理的任务327
20.1.1 基线327
20.1.2 软件配置项329
20.2 SCM过程330
20.3 软件配置中对象的标识331
20.4 版本控制332
20.5 变更控制333
20.6 配置审核与状态报告335
20.6.1 配置审核335
20.6.2 配置状态报告335
20.7 小结335
习题336
第四篇 软件工程过程模型338
第21章 能力成熟度模型338
21.1 CMM的发展过程339
21.2 CMM体系结构340
21.2.1 CMM的等级结构340
21.2.2 CMM的内部结构341
21.2.3 关键过程域的结构342
21.3 CMM关键过程域343
21.4 小结344
第22章 个人软件过程(PSP)345
22.1 PSP的基本概念346
22.1.1 PSP的基本原则346
22.1.2 PSP的结构347
22.2 PSP过程简介348
22.2.1 需求定义与概念设计348
22.2.2 产品规模与资源估算348
22.2.3 制定进度表349
22.2.4 开发产品阶段349
22.3 PSP的数据收集与度量350
22.3.1 时间数据的收集与度量350
22.3.2 产品规模数据的收集与度量350
22.3.3 质量数据的收集与测量351
22.4 PSP质量管理354
22.4.1 缺陷与质量355
22.4.2 工程师的质量职责355
22.4.3 尽可能早地清除缺陷355
22.4.4 缺陷预防355
22.5 PSP与设计356
22.6 PSP的发展356
22.6.1 个体度量过程PSP0和PSP0.1357
22.6.2 个体规划过程PSP1和PSP1.1357
22.6.3 个体质量管理过程PSP2和PSP2.1357
22.6.4 个体循环过程PSP3357
22.7 小结358
第23章 小组软件过程359
23.1 TSP的由来与发展359
23.2 工程协作与工程小组360
23.3 小组协作的条件360
23.4 保证小组工作的有效性361
23.5 TSP的目标与工作362
23.5.1 TSP的目标362
23.5.2 小组操作过程362
23.5.3 TSP流程363
23.6 启动一个TSP小组364
23.7 基于TSP的协同工作368
23.7.1 领导职责368
23.7.2 人际交流368
23.7.3 工作跟踪与计划维护369
23.7.4 平衡工作负载370
23.8 TSP的质量管理370
23.8.1 质量计划371
23.8.2 识别质量问题375
23.8.3 发现和阻止质量问题377
23.9 小结377
参考文献380