当前位置:首页 > 工业技术
软件工程与软件开发工具
软件工程与软件开发工具

软件工程与软件开发工具PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:张虹主编;姜淑娟等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2004
  • ISBN:7302092907
  • 页数:263 页
图书介绍:本书以软件生命周期为主线,系统全面地介绍了软件开发的原理、方法与技术,并讲述了软件开发工具的使用等。
《软件工程与软件开发工具》目录

1.1 计算机软件概念 1

1.1.1 计算机软件 1

1.1.2 软件的特点 1

第1章 软件工程概述 1

1.1.3 软件与硬件的关系 2

1.1.4 软件分类 3

1.2 软件的发展 4

1.3.1 软件危机 5

1.3.2 软件危机的表现 5

1.3 软件危机与软件问题 5

1.3.3 软件开发中的问题 6

1.4 软件工程与开发准则 8

1.4.1 软件工程概念 8

1.4.2 软件工程的内容 8

1.4.3 软件开发的基本准则 9

1.5 软件生命周期 10

1.5.1 软件生命周期的划分 10

1.5.2 各阶段的基本任务 11

1.6.1 瀑布模型 13

1.6 软件开发模型 13

1.6.2 原型模型 15

1.6.3 螺旋模型 16

1.6.4 基于4GL模型 17

1.6.5 面向对象开发模型 18

1.7 小结 18

习题 19

第2章 项目计划 21

2.1 问题定义 21

2.2.2 可行性研究的过程 22

2.2 可行性研究 22

2.2.1 可行性研究的目的和任务 22

2.2.3 初步的项目方案 24

2.2.4 风险评估 24

2.3 系统流程图 25

2.4 示例 26

2.5 项目可行性及计划编制文档 28

2.5.1 可行性研究报告 28

2.5.2 项目开发计划 29

习题 30

2.6 小结 30

第3章 需求分析 31

3.1 需求分析概述 31

3.1.1 需求分析任务 31

3.1.2 需求类型 32

3.1.3 需求特性 33

3.1.4 获取需求的步骤 34

3.2.1 符号 35

3.2 数据流图 35

3.2.2 作用 36

3.3 数据字典 37

3.3.1 定义方法 37

3.3.2 实现 38

3.4 加工逻辑描述工具 40

3.5 结构化分析方法 44

3.5.1 数据流图的分层思想 44

3.5.2 结构化分析的步骤 44

3.5.3 画数据流图的注意事项 46

3.5.4 示例 47

3.6 需求规格说明书 49

3.7 复审 50

3.7.1 复审的必要性 50

3.7.2 复审的内容 51

3.8 需求分析人员 52

3.8.1 需求分析人员面临的挑战 52

3.8.2 需求分析人员的原则和策略 52

3.9 小结 53

3.8.3 需求分析人员应采用的技术 53

习题 54

第4章 概要设计 57

4.1 概要设计的任务与准备 57

4.1.1 设计的任务 57

4.1.2 启动概要设计 57

4.1.3 明确技术方案 58

4.2 软件结构设计及优化 58

4.2.1 模块和模块化 58

4.2.3 耦合与内聚 59

4.2.2 软件结构的风格与策略 59

4.2.4 好的软件设计特性 64

4.3 图形工具 66

4.3.1 层次图和HIPO图 66

4.3.2 结构图 68

4.4 结构化设计 69

4.4.1 概念与步骤 69

4.4.2 变换映射 70

4.4.3 事务映射 73

4.4.4 优化设计 76

4.5 数据结构设计 77

4.5.1 数据结构设计的任务 78

4.5.2 数据库设计 78

4.5.3 概念模型设计工具 79

4.6 概要设计说明指南 80

4.7 小结 82

习题 82

第5章 详细设计 85

5.1 详细设计的任务与内容 85

5.1.3 详细设计内容 86

5.1.1 详细设计的目标和原则 86

5.1.2 详细设计过程 86

5.1.4 详细设计优化 87

5.2 详细设计工具 88

5.2.1 程序流程图 88

5.2.2 N-S图 89

5.2.3 PAD图 89

5.2.4 各种设计工具的比较 90

5.3.1 人机界面应具备的特性 91

5.3 人机界面设计 91

5.3.2 数据输入界面设计 93

5.3.3 数据显示界面设计 94

5.3.4 控制界面的设计 95

5.4 小结 95

习题 96

第6章 编码 97

6.1 编码概念 97

6.2.1 程序设计语言分类 98

6.2 程序设计语言 98

6.2.2 程序设计语言的基本成分 99

6.2.3 程序设计语言选择 102

6.3 编码风格 104

6.4 编码策略与编码工具 106

6.4.1 编码策略 106

6.4.2 编码工具 107

6.5 小结 108

习题 109

7.1 软件测试概述 111

第7章 测试 111

7.1.1 软件测试的定义 112

7.1.2 软件测试的目的 112

7.2 软件测试的组织与管理 113

7.2.1 软件测试的人员组织 113

7.2.2 软件测试的步骤 114

7.3 测试方法 115

7.3.1 代码复审 116

7.3.3 白盒测试 117

7.3.2 黑盒测试 117

7.4 测试用例的设计 118

7.4.1 白盒法测试用例设计 119

7.4.2 黑盒法测试用例设计 121

7.4.3 实用测试策略 123

7.5 单元测试 124

7.5.1 单元测试策略 124

7.5.2 单元测试过程 126

7.5.3 驱动模块和桩模块 126

7.6.2 集成测试策略 127

7.6 集成测试 127

7.6.1 集成测试的主要任务 127

7.6.3 自顶向下集成 128

7.6.4 自底向上集成 129

7.6.5 混合式集成 130

7.7 系统测试 130

7.7.1 系统测试的种类 130

7.7.3 软件配置的复审 132

7.7.4 α测试与β测试 132

7.7.2 系统测试标准 132

7.8 调试 133

7.8.1 调试技术 133

7.8.2 调试策略 134

7.9 自动测试工具 135

7.9.1 测试工具的分类 135

7.9.2 几种常见的测试工具简介 136

7.11 实例 138

7.10 测试文件 138

7.12 小结 141

习题 141

第8章 软件维护 143

8.1 软件维护的概念 143

8.2 软件维护的代价 144

8.3 维护过程 145

8.3.1 维护组织 145

8.3.2 维护申请单 146

8.3.3 维护流程 146

8.3.4 维护报告单 147

8.3.5 维护评价 148

8.4 可维护性 148

8.4.1 可维护性的决定因素 149

8.4.2 对可维护性的定量度量 149

8.4.3 提高可维护性的途径 150

8.4.4 文档 151

8.5 维护的副作用 152

8.6 维护复审 152

习题 153

8.7 小结 153

第9章 面向对象方法 155

9.1 概述 155

9.1.1 OO软件开发方法的发展 155

9.1.2 3种有影响的OO方法 156

9.1.3 各种OO方法的差异 157

9.1.4 面向对象与传统开发方法的比较 158

9.2 面向对象的基本概念 158

9.3 面向对象分析 161

9.3.1 对象模型 161

9.3.2 动态模型 167

9.3.3 功能模型 170

9.4 面向对象设计 171

9.4.1 问题论域部分的设计 172

9.4.2 用户界面部分的设计 173

9.4.3 任务管理部分的设计 176

9.4.4 数据管理部分的设计 177

9.5 小结 179

习题 180

10.1 面向对象测试模型 181

第10章 面向对象系统的测试 181

10.2 分析测试 183

10.2.1 对认定的对象测试 183

10.2.2 对认定的结构测试 183

10.2.3 对认定的主题测试 184

10.2.4 对属性和实例关联的测试 184

10.2.5 对服务和消息关联的测试 184

10.3.3 对类库支持的测试 185

10.3.2 对类层次结构的测试 185

10.3.1 对类的测试 185

10.3 设计测试 185

10.4 编程测试 186

10.4.1 数据成员的封装要求 186

10.4.2 类是否实现要求的功能 186

10.5 单元测试 186

10.6 集成测试 187

10.7 系统测试 188

10.8.1 OO概念对测试用例设计的影响 189

10.8 面向对象测试用例设计 189

10.8.2 类测试用例设计 190

10.8.3 类间测试用例设计 190

10.9 小结 191

习题 191

第11章 软件项目管理 193

11.1 概述 193

11.1.1 软件项目管理的内容与特点 194

11.1.2 软件项目管理与软件工程 195

11.1.3 软件项目管理过程 195

11.2.1 软件度量的任务 197

11.2 软件度量 197

11.2.3 面向功能的度量 198

11.2.2 面向规模的度量 198

11.2.4 面向特征点的度量 200

11.3 软件开发成本估算 200

11.4 进度安排 201

11.4.1 任务的确定性与并行性 202

11.4.2 进度安排的方法 202

11.4.3 项目的追踪和控制 204

11.5.1 软件文档的作用和分类 205

11.5 软件文档管理 205

11.5.2 文档的管理和维护 207

11.6 小结 208

习题 209

第12章 软件质量与可靠性 211

12.1 软件质量保证 211

12.1.1 软件的质量要求 212

12.1.2 软件质量保证的内容 212

12.2.1 软件能力的概念 214

12.2 软件能力 214

12.2.2 CMM模型 215

12.3 软件可靠性 216

12.3.1 可靠性概念 216

12.3.2 可靠性模型 217

12.3.3 程序正确性证明 219

12.4 软件质量管理标准 220

12.4.1 软件质量国际标准 220

12.4.4 ISO 9000系列标准对软件业的作用 221

12.4.3 ISO 9001和CMM标准 221

12.4.2 ISO 9001、ISO 9000-3和ISO 9001-2000 221

12.5 小结 222

习题 223

第13章 统一建模语言UML 225

13.1 UML概述 225

13.1.1 UML的产生与发展 225

13.1.2 UML的主要内容 225

13.1.3 UML的主要特点 226

13.1.4 UML的应用 226

13.2.1 用例图 227

13.2 静态建模 227

13.2.2 类图和对象图 228

13.2.3 包 231

13.2.4 构件图 232

13.2.5 配置图 232

13.3 动态建模 233

13.3.1 顺序图 233

13.3.2 协作图 234

13.3.3 状态图 235

13.3.4 活动图 236

13.4 统一建模过程 238

13.5 小结 239

习题 239

第14章 Rational Rose 241

14.1 Rose概述 241

14.1.1 Rose概念 241

14.1.2 Rose的功能与特点 241

14.2 Rose主界面 242

14.3.1 模型的操作 244

14.3 Rose的基本操作 244

14.3.2 框图操作 245

14.3.3 元素的操作 245

14.4 Rose的模型视图 246

14.4.1 业务用例图 246

14.4.2 活动图 248

14.4.3 用例图 249

14.4.4 交互图 250

14.4.5 类与包 251

14.4.6 状态图 254

14.4.7 构件图 255

14.4.8 配置图 255

14.5 Rose的双向工程 256

14.5.1 模型生成代码 256

14.5.2 Visual C++的逆向工程 260

14.6 小结 261

习题 261

参考文献 263

返回顶部