当前位置:首页 > 工业技术
软件工程
软件工程

软件工程PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:万江平编著
  • 出 版 社:北京:北京交通大学出版社
  • 出版年份:2006
  • ISBN:7810827332
  • 页数:377 页
图书介绍:本书运用了前沿的科学知识和系统科学来处理软件和软件工程的复杂性。使用了IEEE的软件工程知识体系(SWEBOK2004)、著名的软件过程成熟度模型(CMM/CMMI)和NASA的软件开发实践经验。针对中国的实际情况和软件产业发展情况,突出了软件质量管理和软件过程改进,采用了面向对象技术(包括UML)、项目管理等软件知识技术来解决中国软件工程教育和培训的实际问题。
《软件工程》目录

第1章 软件工程基本概念 1

1.1 软件及其复杂性 1

1.1.1 软件的特点和软件危机 1

1.1.2 软件生产的复杂性 4

1.1.3 软件工程的历史 5

1.2 软件工程知识体系 8

1.2.1 软件工程知识体系指南的历史 8

1.2.2 软件工程知识体系指南的目标 9

1.2.4 软件工程知识体系指南的十大知识域 10

1.2.3 软件工程知识体系指南的结构 10

1.2.5 软件工程知识体系指南的应用思考 12

1.3 软件过程成熟度模型 13

1.3.1 软件能力成熟度模型概述 13

1.3.2 成熟度等级的行为特征 13

1.3.3 成熟度等级的内部结构 14

1.3.4 成熟度提问单 16

1.3.5 软件过程成熟度模型评估 17

1.3.6 集成能力成熟度模型 18

1.3.7 万维网工程 20

1.3.8 集成成熟度模型与万维网工程 21

1.4.1 对象的基本概念 22

1.4 面向对象技术 22

1.4.2 面向对象系统 23

1.4.3 利用对象进行抽象 25

1.4.4 封装的类 25

1.4.5 通过消息进行通信 25

1.4.6 对象生命周期 26

1.4.7 类层次结构 27

1.4.8 多态性 29

1.5 软件体系结构 32

1.5.1 软件体系结构的模型定义 32

1.5.2 软件体系结构的构造元素 33

1.5.3 软件体系结构的风格 35

1.6 高质量软件生产知识集成支持结构 38

1.6.1 知识科学和知识系统工程 38

1.6.2 高质量软件生产的管理复杂性 39

1.6.3 知识模型的论域 39

1.6.4 高质量软件生产的知识集成支持结构 40

小结 42

复习题 42

思考题 42

推荐阅读资料 44

2.1.2 软件质量基本原则 46

2.1.1 软件质量知识域主题 46

第2章 软件质量 46

2.1 知识域主题和基本原则 46

2.2 软件质量 49

2.2.1 软件质量的基本概念 49

2.2.2 软件质量要素 49

2.2.3 提高软件质量的一般方法 54

2.3 软件质量保证 54

2.3.1 软件质量保证的产生和发展 55

2.3.2 软件质量保证的基本原则 55

2.3.3 软件质量保证的一般方法 55

2.4.1 软件质量度量方法学模型 57

2.4 软件质量度量 57

2.4.2 ISO 9126软件质量度量模型 58

2.4.3 模型的实用性问题 58

小结 59

复习题 59

思考题 59

推荐阅读资料 62

第3章 软件工程过程 63

3.1 知识域主题和基本原则 63

3.1.1 软件工程过程知识域主题 63

3.1.2 软件工程过程的基本原则 64

3.2 过程思维 65

3.2.1 什么是过程思维 65

3.2.2 什么是过程 66

3.2.3 以过程为中心 67

3.2.4 过程成熟度 69

3.3 过程规范 70

3.3.1 过程规范概述 71

3.3.2 过程规范的优点 72

3.3.3 过程规范与产品质量 74

3.3.4 面向过程的组织 76

3.4 有效的过程环境 79

3.4.1 关于过程的神话与事实 79

3.4.2 什么是高效的过程 80

3.4.3 保证高效过程机制 82

3.4.4 过程文化 85

小结 87

复习题 87

思考题 87

推荐阅读资料 89

4.1.1 软件需求知识域主题 91

4.1 知识域主题和基本原则 91

第4章 软件需求 91

4.1.2 软件需求基本原则 92

4.2 软件需求基本内容 93

4.2.1 需求的定义 93

4.2.2 需求的层次和特点 94

4.2.3 需求工程的概念 96

4.2.4 需求工程的阶段 96

4.2.5 需求规格 96

4.3.1 需求工程方法学 97

4.3 需求工程活动 97

4.3.2 需求工程方法 98

4.4 系统规格说明及评审 98

4.4.1 系统规格说明目录 99

4.4.2 系统总体设计和软件开发评分标准 105

4.5 需求确定框架 106

4.5.1 需求确定子活动 106

4.5.2 PIECES框架 106

4.5.3 柯萨尔的需求模型 107

4.5.4 面向对象的需求确定建模方法 108

复习题 110

思考题 110

小结 110

推荐阅读资料 113

第5章 软件设计 114

5.1 知识域主题和基本原则 114

5.1.1 软件设计知识域主题 115

5.1.2 软件设计基本法则 115

5.2 用Java进行面向对象设计 116

5.2.1 抽象类 117

5.2.2 方法的可见性 118

5.2.3 类与实例 118

5.2.4 访问对象 119

5.2.5 对象的低层次视图 120

5.3 面向对象分析 121

5.3.1 UML用况图 121

5.3.2 对象发现 122

5.3.3 评估候选对象 123

5.3.4 确定对象层次结构 125

5.3.5 发现对象属性 125

5.3.6 发现对象操作 126

5.4 对象设计 127

5.5 若干设计指南 128

5.5.3 设计类 129

5.5.2 封装 129

5.5.1 从整体上把握 129

5.5.4 继承 130

5.5.5 通用指南 130

5.6 软件设计模式基础 131

5.6.1 参数化 131

5.6.2 设计模式 132

5.6.3 职责链模式 133

5.6.4 自己的设计模式 136

5.7.1 软件体系结构元模型的分析 139

5.7 软件体系结构建模要素 139

5.7.2 确定软件体系结构的建模空间与要素 140

5.8 软件体系结构的建模 140

5.8.1 软件体系结构与软件开发各个阶段的关系 140

5.8.2 软件体系结构的建模过程 141

5.8.3 使用UML描述软件体系结构 142

小结 143

复习题 143

思考题 143

推荐阅读资料 145

6.1 知识域主题和基本原则 147

6.1.1 软件构造知识域主题 147

第6章 软件构造 147

6.1.2 软件构造基本原则 148

6.2 Java中的对象 149

6.2.1 在Java中定义类 149

6.2.2 可见性 152

6.2.3 继承 153

6.2.4 关联、聚合与组合 157

6.2.5 Java接口 159

6.2.6 Java中对象的生命周期 161

6.3.1 体系结构图的标记法 162

6.3 面向对象体系结构模式 162

6.3.2 过程处理系统 163

6.3.3 客户-服务器系统 164

6.3.4 层级系统 168

6.3.5 三级和多级系统 169

6.3.6 代理 172

6.3.7 聚合和联邦体系 173

6.3.8 体系结构的模式 175

小结 176

复习题 177

思考题 177

推荐阅读资料 179

7.1 知识域主题和基本原则 181

第7章 软件测试 181

7.1.1 软件测试知识域主题 182

7.1.2 软件测试基本原则 182

7.2 软件测试基础 184

7.2.1 什么是软件测试 184

7.2.2 软件测试的对象 184

7.2.3 测试信息流 185

7.2.4 测试与软件开发各阶段的关系 186

7.3 测试用例设计 186

7.3.1 黑盒测试 186

7.3.2 白盒测试 187

7.4 软件测试策略 188

7.4.1 单元测试 188

7.4.2 集成测试 190

7.4.3 确认测试 192

7.4.4 系统测试 193

7.5 软件测试管理 193

7.5.1 测试计划 194

7.5.2 测试过程 196

7.5.3 测试工具 198

7.5.4 电子商务测试 200

7.5.5 测试和质量改进 201

小结 203

7.5.6 需求可追踪性 203

复习题 204

思考题 204

推荐阅读资料 206

第8章 软件维护 207

8.1 知识域主题和基本原则 207

8.1.1 软件维护知识域主题 207

8.2 软件维护的概念 208

8.2.1 软件维护的定义 208

8.1.2 软件维护的基本原则 208

8.2.2 影响维护工作量的因素 209

8.2.3 软件维护的策略 209

8.2.4 维护成本 210

8.3 软件维护的活动 210

8.3.1 维护机构 211

8.3.2 软件维护申请报告 211

8.3.3 软件维护工作过程 211

8.3.4 维护档案记录 212

8.3.5 维护评价 212

8.4.2 修改程序 213

8.4.1 分析和理解程序 213

8.4 程序修改的步骤及修改的副作用 213

8.4.3 重新验证程序 214

8.5 软件的可维护性 215

8.5.1 软件可维护性的定义 215

8.5.2 可维护性的度量 216

8.6 提高维护性的方法 217

8.6.1 使用提高软件质量的技术和工具 217

8.6.2 进行明确的质量保证和审查 217

8.6.4 改进程序文档 220

8.6.3 选择可维护的程序设计语言 220

8.7 逆向工程和再工程 221

8.7.1 预防性维护 221

8.7.2 逆向工程的元素 222

8.7.3 软件再工程 222

小结 224

复习题 225

思考题 225

推荐阅读资料 227

9.1.1 软件配置管理知识域主题 229

9.1.2 软件配置管理的基本原则 229

9.1 知识域主题和基本原则 229

第9章 软件配置管理 229

9.2 软件配置管理基本概念 231

9.2.1 软件配置项 231

9.2.2 基线 231

9.2.3 版本 231

9.2.4 版本标识 233

9.2.5 软件配置库 233

9.3 软件配置管理过程 234

9.3.1 配置标识 234

9.3.2 版本控制 235

9.3.3 变更控制 237

9.3.4 配置审核 238

9.3.5 状态报告 238

9.4 软件配置管理的任务 238

9.5 构建和发布 240

9.5.1 构建软件 241

9.5.2 发布软件 241

9.6 配置管理系统及工具 242

9.6.1 软件配置管理系统的发展 242

9.6.2 几种典型的软件配置管理系统 243

9.6.3 实例分析 246

复习题 248

思考题 248

小结 248

推荐阅读资料 251

第10章 软件工程管理 253

10.1 知识域主题和基本原则 253

10.1.1 软件工程管理知识域主题 253

10.1.2 软件工程管理基本原则 254

10.2 度量在软件工程中的作用 255

10.2.1 度量有助于提升理解 255

10.2.2 对管理软件的度量 260

10.2.3 指导改进的度量 262

10.3.1 目标 263

10.3 建立度量程序 263

10.3.2 范围 264

10.3.3 任务、责任和结构 265

10.3.4 度量的选择 267

10.3.5 度量的费用 268

10.4 度量的核心 271

10.4.1 费用 271

10.4.2 错误 273

10.4.3 过程特征 274

10.4.4 工程动态 275

10.4.5 工程特征 276

10.5 软件项目管理 279

10.5.1 面向规模的度量 280

10.5.2 面向功能的度量 281

10.5.3 度量方法的比较 283

10.5.4 代码行、功能点和工作量估算 283

10.5.5 COCOMO模型 284

10.5.6 进度安排 287

10.5.7 Infosys公司的项目管理 289

小结 292

复习题 293

思考题 293

推荐阅读资料 296

第11章 软件工程工具和方法 297

11.1 知识域主题和基本原则 297

11.1.1 软件工程工具和方法知识域主题 297

11.1.2 软件工程工具和方法的基本原则 297

11.2 面向对象开发的软件工具 299

11.2.1 GUI与控制台 299

11.2.2 编辑器和IDE 300

11.2.3 源代码控制 305

11.2.4 CASE、建模和UML工具 305

11.2.5 其他Java工具 308

11.3.1 静态结构 309

11.3 EJB软件体系结构 309

11.3.2 资源管理策略 312

11.3.3 Entity Bean的动态行为 313

11.4 软件中间件技术 316

11.4.1 主要技术与产品 317

11.4.2 关键实现技术 319

小结 320

复习题 320

思考题 321

推荐阅读资料 324

12.1.1 概述 325

12.1.2 软件体系结构的设计 325

12.1 基于Web体系结构的DSS开发 325

第12章 案例研究 325

12.1.3 系统分析 327

12.1.4 系统设计 327

12.2 NASA软件开发方法 330

12.2.1 NASA软件开发方法概要 330

12.2.2 NASA的软件过程改进方法 331

12.2.3 NASA与CMM方法的比较分析 332

12.3 印度Infosys公司软件过程管理 333

12.3.1 背景 334

12.3.2 过程体系结构和文档 335

12.3.3 指导原则 337

12.3.4 SEPG和软件过程改进计划 337

12.3.5 高级管理者的介入 338

12.3.6 过程生命周期 338

12.3.7 项目管理过程 338

12.3.8 风险管理 339

12.3.9 ISO向CMM的转变策略 339

12.3.10 启示 340

12.4 微软同步稳定法 341

12.4.1 概述 341

12.4.2 微软同步稳定方法 342

12.4.3 微软团队精神 344

12.4.4 微软同步稳定方法与传统方法的比较 345

小结 346

思考题 346

推荐阅读资料 352

附录A UML中主要的图 354

附录B 简明SW-CMM 356

附录C 简明Fagan审查法 366

附录D 层次分析法 374

参考文献 376

相关图书
作者其它书籍
返回顶部