《软件工程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:景秀丽,吕洪林主编
  • 出 版 社:北京:中国水利水电出版社
  • 出版年份:2010
  • ISBN:9787508475288
  • 页数:272 页
图书介绍:本书详细地阐述了软件工程基础知识及其相关的实用技术。内容包括软件工程概述、软件可行性研究、软件需求分析、软件总体设计、软件详细设计、面向对象技术、统一建模语言UML、程序编码、软件测试、软件实施与维护、软件重用技术、软件项目计划与管理、软件开发工具与环境以及软件开发实战(物流网络管理系统设计与实现)。

第1章 软件工程概述 1

1.1 软件概述 1

1.1.1 软件的概念 1

1.1.2 软件的分类 1

1.1.3 软件的发展 3

1.1.4 软件危机 3

1.2 软件工程的概念 5

1.2.1 软件工程的定义和原理 5

1.2.2 软件工程的目标 7

1.2.3 软件工程的原则 7

1.3 软件生命周期 8

1.4 软件开发模型 9

1.4.1 瀑布模型 9

1.4.2 快速原型模型 11

1.4.3 增量模型 12

1.4.4 螺旋模型 13

1.4.5 喷泉模型 15

1.5 小结 15

1.6 习题 16

第2章 软件可行性研究 17

2.1 可行性研究的任务 17

2.2 可行性研究的步骤 18

2.3 可行性研究报告 19

2.4 小结 22

2.5 习题 22

第3章 软件需求分析 23

3.1 需求分析概述 24

3.1.1 需求分析的任务 24

3.1.2 需求分析的步骤 27

3.1.3 软件需求分析的原则 30

3.2 面向数据流的分析方法 31

3.2.1 基于数据流的分析方法 31

3.2.2 数据流图 31

3.2.3 数据字典 34

3.2.4 加工逻辑说明 38

3.3 需求分析方法与图形工具 40

3.4 实体—联系图 42

3.4.1 数据对象、属性与关系 42

3.4.2 实体—联系图和实体模型 43

3.5 需求规格说明与评审 44

3.6 小结 47

3.7 习题 47

第4章 软件总体设计 48

4.1 总体设计概述 48

4.1.1 总体设计的任务 48

4.1.2 总体设计的步骤 49

4.2 总体设计的图形描述工具 51

4.2.1 层次图 51

4.2.2 HIPO图 52

4.2.3 结构图 52

4.3 模块化设计 54

4.3.1 模块化与局部化 54

4.3.2 模块独立性 56

4.3.3 抽象与信息隐蔽 64

4.4 面向数据流的设计方法 64

4.4.1 基本概念 65

4.4.2 事务分析 72

4.4.3 设计优化原则 73

4.5 小结 73

4.6 习题 74

第5章 软件详细设计 75

5.1 详细设计概述 75

5.1.1 详细设计的任务 75

5.1.2 详细设计的步骤 76

5.2 详细设计的图形描述工具 76

5.2.1 程序流程图 77

5.2.2 N-S图 79

5.2.3 PAD图 81

5.2.4 过程设计语言PDL 82

5.2.5 判定表和判定树 86

5.3 Jackson设计方法 88

5.3.1 Jackson方法概述及其图例 88

5.3.2 Jackson程序设计过程 92

5.4 Warnier设计方法 92

5.4.1 Warnier方法概述及其图例 92

5.4.2 Warnier程序设计过程 94

5.5 小结 95

5.6 习题 98

第6章 面向对象技术 100

6.1 面向对象技术的概述 101

6.1.1 面向对象的基本概念 101

6.1.2 面向对象技术的优势 103

6.2 面向对象的开发模型 104

6.3 面向对象的分析 107

6.3.1 论域分析 108

6.3.2 应用分析 108

6.4 面向对象的系统设计 110

6.4.1 系统设计过程 110

6.4.2 子系统设计 111

6.4.3 人机交互设计 111

6.4.4 任务管理设计 113

6.4.5 数据管理设计 114

6.5 面向对象的实现 115

6.5.1 程序设计语言 115

6.5.2 类和应用程序的实现 116

6.6 小结 116

6.7 习题 117

第7章 统一建模语言(UML) 119

7.1 UML概述 119

7.1.1 UML概念 119

7.1.2 UML的演变 120

7.1.3 UML的主要内容 121

7.1.4 UML的应用 122

7.2 UML的概念模型 122

7.2.1 UML的构造块 123

7.2.2 UML的规则 126

7.2.3 UML的公共机制 126

7.3 UML的静态建模机制 128

7.3.1 用例模型 128

7.3.2 类和对象模型 129

7.3.3 包 131

7.4 UML的动态建模机制 132

7.4.1 消息 132

7.4.2 状态图 133

7.4.3 时序图 135

7.4.4 协作图 136

7.4.5 活动图 137

7.5 UML的物理架构建模 139

7.5.1 逻辑架构与物理架构 139

7.5.2 构件图和配置图 140

7.6 小结 142

7.7 习题 142

第8章 程序编码 143

8.1 程序设计语言 143

8.1.1 程序设计语言的分类 143

8.1.2 程序设计语言的特点 146

8.1.3 程序设计语言的选择 148

8.2 结构化程序设计 149

8.3 程序设计风格 150

8.3.1 源程序文档化 151

8.3.2 数据说明方式 152

8.3.3 语句构造方法 152

8.3.4 输入/输出技术 153

8.4 程序设计效率 154

8.5 程序复杂性度量 156

8.5.1 代码行度量法 156

8.5.2 McCabe度量法 156

8.5.3 HalStead方法 157

8.6 小结 160

8.7 习题 160

第9章 软件测试 161

9.1 软件测试的基本概念 161

9.1.1 软件测试的定义 161

9.1.2 软件测试的原则 162

9.2 软件测试方法 162

9.2.1 静态测试与动态测试 162

9.2.2 黑盒测试 164

9.2.3 白盒测试 168

9.3 软件测试流程 171

9.3.1 软件测试总体流程 171

9.3.2 软件测试的具体策略 173

9.4 测试用例的设计 173

9.5 面向对象软件测试 176

9.6 软件测试相关文档 179

9.7 小结 179

9.8 习题 180

第10章 软件实施与维护 182

10.1 软件产品的实施 182

10.1.1 软件产品实施概述 182

10.1.2 软件产品实施过程 183

10.2 软件产品的维护活动 186

10.3 软件维护过程 189

10.4 软件维护文档 191

10.5 软件可维护性 192

10.5.1 决定软件可维护性的因素 192

10.5.2 软件可维护性的度量 193

10.5.3 提高软件可维护性的方法 194

10.6 软件维护的深化——软件再工程 196

10.7 小结 197

10.8 习题 198

第11章 软件重用技术 199

11.1 软件重用技术概述 199

11.1.1 软件重用定义 200

11.1.2 软件重用形式 200

11.1.3 软件重用分类 200

11.1.4 软件复用的现状和流行的软件重用技术 201

11.2 基于构件的软件开发 203

11.2.1 可重用软件构件的开发 204

11.2.2 可重用软件构件的组织 205

11.2.3 可重用软件构件的分类和检索 205

11.3 面向对象的软件重用技术 207

11.4 小结 210

11.5 习题 211

第12章 软件项目计划与管理 212

12.1 软件项目的计划与组织 212

12.1.1 软件开发的进度计划 212

12.1.2 软件开发的组织机构 216

12.1.3 软件人员配备 219

12.2 软件成本估算及控制 221

12.3 软件工程标准与软件文档 229

12.3.1 软件工程标准 229

12.3.2 软件文档 232

12.4 小结 238

12.5 习题 238

第13章 软件开发工具与软件工程环境 239

13.1 软件开发工具 239

13.1.1 软件开发工具的功能 239

13.1.2 常用软件开发工具介绍 240

13.2 软件工程环境 248

13.2.1 软件工程环境的概念 248

13.2.2 软件开发环境的特点 250

13.3 CASE技术 251

13.3.1 CASE定义 251

13.3.2 CASE环境的组成与结构 252

13.4 小结 254

13.5 习题 254

第14章 软件开发实战——物流网络管理系统设计与实现 255

14.1 概述 255

14.2 系统分析 256

14.3 总体设计 257

14.4 详细设计 257

14.5 系统实现 263

14.6 系统测试 265

参考文献 269