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

实用软件工程PDF电子书下载

工业技术

  • 电子书积分:10 积分如何计算积分?
  • 作 者:陆惠思著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2006
  • ISBN:7302125597
  • 页数:221 页
图书介绍:本书着重从实用角度介绍软件工程的基本概念、原理和方法,系统地介绍了目前较成熟的、广泛应用的软件工程技术。
《实用软件工程》目录

第1章 概述 1

1.1 软件工程的产生 1

1.1.1 软件工程发展史 1

1.1.2 软件危机 2

1.2 软件工程学 4

1.2.1 什么是软件 4

1.2.2 什么是软件工程 4

1.2.3 软件工程学的内容 4

1.2.4 软件过程 7

1.2.5 软件工程基本原理 7

1.3 软件生命周期 7

1.3.1 软件生命周期定义 7

1.3.2 软件生命周期划分阶段的原则 8

1.3.3 软件生命周期各阶段的任务 8

1.4 软件开发模型 9

1.4.1 瀑布模型 9

1.4.2 快速原型模型 11

1.4.3 增量模型 12

1.4.4 喷泉模型 13

1.4.5 螺旋模型 14

1.4.6 统一过程 15

小结 16

习题1 17

第2章 软件计划 19

2.1 软件问题定义及可行性研究 19

2.1.1 软件问题定义 19

2.1.2 可行性研究 20

2.1.3 制定项目开发计划 21

2.2 需求分析的任务 22

2.2.1 确定目标系统的具体要求 22

2.2.2 建立目标系统的逻辑模型 24

2.2.3 软件需求规格说明 24

2.2.4 修正系统开发计划 25

2.2.5 制定初步的系统测试计划 25

2.2.6 编写初步的用户手册 25

2.2.7 编写数据要求说明书 26

2.3 需求分析步骤 26

2.3.1 进行调查研究 27

2.3.2 分析和描述系统的逻辑模型 27

2.3.3 复审 28

2.4 实体-关系图 28

2.4.1 实体 28

2.4.2 属性 29

2.4.3 关系 29

2.5 数据流图 30

2.5.1 数据流图四种基本符号 30

2.5.2 数据流图几种附加符号 31

2.5.3 画数据流图的步骤 32

2.5.4 几点注意事项 32

2.6 状态转换图 35

2.7 数据字典 36

2.7.1 数据字典的内容 36

2.7.2 数据字典使用的符号 37

2.7.3 数据字典与图形工具 38

2.8 需求分析的其他图形工具 38

2.8.1 层次图 39

2.8.2 Warnier图 39

2.8.3 IPO图 40

2.9 软件计划阶段文档编写步骤 40

小结 41

习题2 41

第3章 结构化设计 43

3.1 软件设计步骤 43

3.1.1 概要设计步骤 44

3.1.2 详细设计的基本任务 45

3.2 软件结构设计 46

3.2.1 软件结构设计的基本原理 46

3.2.2 模块化 48

3.2.3 模块独立性 49

3.2.4 模块设计启发规则 53

3.3 软件结构设计的图形工具 54

3.3.1 层次图(或HIPO图) 54

3.3.2 结构图 54

3.4 面向数据流的设计方法 56

3.4.1 变换型 57

3.4.2 事务型 57

3.5 过程设计工具 58

3.5.1 流程图 59

3.5.2 盒图(N-S) 63

3.5.3 PAD图 65

3.5.4 判定表 66

3.5.5 判定树 66

3.5.6 过程设计语言 67

3.6 系统人机界面设计 67

3.6.1 人机界面设计问题 67

3.6.2 人机界面设计过程 69

3.6.3 评估界面设计的标准 69

3.6.4 界面设计指南 69

3.7 数据代码设计 70

3.7.1 代码设计目的 70

3.7.2 代码设计原则 71

3.7.3 代码种类 72

3.7.4 代码设计方法 73

3.8 面向数据结构的设计方法 74

3.9 软件设计文档 77

3.9.1 概要设计说明书 77

3.9.2 数据库设计说明书 78

3.9.3 详细设计说明书 79

3.9.4 操作手册编写提示 80

小结 81

习题3 82

第4章 软件编码和软件测试 84

4.1 结构化程序设计 84

4.1.1 程序设计语言的选择 84

4.1.2 程序设计风格 86

4.2 软件测试目标 88

4.3 软件测试方法 89

4.3.1 静态分析与动态测试 89

4.3.2 黑盒法与白盒法 89

4.4 软件测试步骤 90

4.4.1 模块测试 90

4.4.2 集成测试 90

4.4.3 程序审查会和人工运行 91

4.4.4 确认测试 91

4.4.5 平行运行 92

4.5 设计软件测试方案 93

4.5.1 等价类划分法 93

4.5.2 边界值分析法 93

4.5.3 错误推测法 94

4.5.4 逻辑覆盖法 94

4.5.5 程序环行复杂程度的度量 97

4.5.6 因果图法 99

4.6 软件测试原则和策略 102

4.6.1 软件测试原则 102

4.6.2 实用测试策略 102

4.7 软件调试、验证与确认 103

4.7.1 软件调试 103

4.7.2 软件验证 104

4.7.3 软件确认 104

4.8 软件测试文档 105

小结 105

习题4 106

第5章 软件维护 110

5.1 软件维护的种类、过程和副作用 110

5.1.1 软件维护的种类 110

5.1.2 软件维护的特点 111

5.1.3 软件维护的过程 112

5.1.4 软件维护的副作用 115

5.2 软件的可维护性 116

5.2.1 决定可维护性的因素 116

5.2.2 可维护性的度量 116

5.2.3 如何提高软件的可维护性 117

小结 118

习题5 118

第6章 面向对象方法学与UML 120

6.1 面向对象方法概述 120

6.1.1 面向对象方法学的要素和优点 121

6.1.2 面向对象方法的概念 122

6.2 UML概述 125

6.2.1 UML的发展 125

6.2.2 UML的内容 125

6.3 UML图 127

6.3.1 用例图 127

6.3.2 类图和包 129

6.3.3 对象图 133

6.3.4 状态图 134

6.3.5 顺序图 135

6.3.6 活动图 135

6.3.7 协作图 136

6.3.8 构件图 137

6.3.9 部署图 138

小结 139

习题6 139

第7章 面向对象软件设计及UML应用 141

7.1 面向对象分析 141

7.1.1 面向对象分析过程 141

7.1.2 面向对象分析原则 142

7.2 建立对象模型 143

7.2.1 建立对象模型的基本方法 143

7.2.2 确定对象和类 144

7.2.3 确定类的相互关系 145

7.2.4 划分主题 149

7.3 建立动态模型 150

7.3.1 编写脚本 151

7.3.2 设计用户界面 152

7.3.3 画UML顺序图或活动图 152

7.3.4 画状态转换图 152

7.4 建立功能模型 153

7.5 面向对象设计 155

7.5.1 系统设计 155

7.5.2 对象设计 158

7.5.3 面向对象设计的准则 159

7.5.4 面向对象设计的启发规则 160

7.6 UML的应用 160

7.6.1 UML模型 161

7.6.2 UML视图 162

7.6.3 UML使用准则 164

7.6.4 UML的扩展机制 164

7.6.5 UML的应用领域 165

7.7 面向对象系统的实现 166

7.7.1 选择程序设计语言 166

7.7.2 面向对象程序设计 167

7.7.3 面向对象的测试 168

7.8 RUP统一过程 168

7.8.1 统一过程的开发模式 168

7.8.2 统一过程的特点 169

7.8.3 统一过程的要素 170

7.9 软件重用 170

7.9.1 可重用的软件成分 171

7.9.2 软件重用过程模型 172

7.9.3 开发可重用的软件构件 173

7.9.4 分类和检索软件构件 173

小结 174

习题7 175

第8章 软件工具与软件开发环境 177

8.1 CASE技术 177

8.1.1 CASE的基本组成部分 177

8.1.2 CASE的软件平台 178

8.1.3 CASE的硬件平台 178

8.2 软件工具 178

8.2.1 软件工具的功能 179

8.2.2 软件工具的性能 179

8.2.3 软件工具的分类 180

8.3 软件开发环境 181

8.3.1 软件开发环境的定义 181

8.3.2 软件开发环境的分类 181

8.3.3 软件开发环境的构成和特性 181

8.3.4 集成化环境 182

8.3.5 集成化的层次 182

小结 183

习题8 183

第9章 软件工程管理 184

9.1 软件工程管理概述 184

9.2 软件规模估算 185

9.2.1 软件开发成本估算方法 185

9.2.2 代码行技术 186

9.2.3 功能点技术 187

9.2.4 COCOMO2模型 188

9.3 进度计划 190

9.3.1 Gantt图 190

9.3.2 工程网络技术 191

9.4 人员组织 194

9.5 软件配置管理 196

9.6 软件质量保证 199

9.6.1 软件质量的特性 199

9.6.2 软件质量保证措施 200

9.7 软件工程标准与软件文档 201

9.7.1 软件工程标准 201

9.7.2 软件文档的编写 203

小结 204

习题9 204

第10章 实例——招聘考试成绩管理系统 206

10.1 问题定义 206

10.2 可行性研究 206

10.2.1 技术可行性 206

10.2.2 经济可行性 207

10.3 需求分析 207

10.3.1 考生情况分析 207

10.3.2 成绩输入 207

10.3.3 录用 207

10.3.4 输出需求 208

10.3.5 数据流图和数据字典 208

10.3.6 IPO图 209

10.4 概要设计 209

10.4.1 数据库结构设计 209

10.4.2 系统结构设计 210

10.4.3 设计测试方案 210

10.5 详细设计 211

10.5.1 系统界面设计 211

10.5.2 考前处理 212

10.5.3 输入设计 212

10.5.4 成绩处理 213

10.5.5 录用过程设计 213

10.5.6 输出设计 214

10.5.7 测试用例设计 215

10.6 程序设计提示 216

10.6.1 进入系统时密码设置 216

10.6.2 考前处理 217

10.6.3 成绩输入设计 217

10.6.4 成绩处理 217

10.6.5 录用过程设计 217

10.6.6 初始化程序 217

10.7 软件测试 217

习题10 218

附录A 部分习题答案 219

参考文献 221

返回顶部