《软件工程基础》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:赵一丁编著
  • 出 版 社:北京:北京邮电大学出版社
  • 出版年份:2006
  • ISBN:7563512772
  • 页数:281 页
图书介绍:本书全面系统地阐述了自动化领域软件工程的基本概念、基本技术和基本方法。全书共16章,主要内容包括:软件开发过程和软件开发模型、软件需求分析、软件测试和软件维护、软件工程管理、软件设计基础、UML建模语言、实时系统软件设计、工业自动化组态软件技术。组态软件技术的内容包括:实时数据库设计和变量组态、图形界面设计、报表组态、设备驱动与管理、通讯组态、工控组态软件设计应用实例。附录包括:软件文档格式、常用工控组态软件(力控PCAuto、西门子WinCC和MCGS)简介。本书内容丰富,图文示例并茂,通俗易懂。本书可作为高等院校本科及专科自动化专业、测控专业、自控专业、机电专业、计算机相关专业的教材,也可供软件工程技术人员参考。

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

1.1 引言 1

1.1.1 什么是软件 1

1.1.2 软件危机 1

1.1.3 什么是软件工程 2

1.2 软件工程 2

1.2.1 软件工程的目标 2

1.2.2 软件工程技术 3

1.2.3 软件工程管理 4

1.2.4 软件工程文化 4

1.3 软件开发过程 5

1.3.1 软件开发的特点 5

1.3.2 软件开发规格文档 5

1.3.3 软件复用技术 6

1.3.4 计算机辅助软件工程 7

1.4 软件生命周期 8

1.5.1 瀑布模型 9

1.5 软件开发模型 9

1.5.2 原型进化模型 10

1.5.3 螺旋模型 11

习题 12

第2章 需求工程 14

2.1 需求工程的任务 14

2.1.1 软件需求的定义 14

2.2 需求获取 15

2.1.2 需求工程的任务 15

2.2.1 通过业务需求确定系统目标和范围 16

2.2.2 制订调研计划 17

2.2.3 组织实施调研 18

2.2.4 编写调研报告 19

2.3 需求分析 19

2.3.1 需求分析的任务 20

2.3.2 需求分析的原则 20

2.3.3 需求分析方法 22

2.3.4 结构化分析方法 23

2.3.5 定义软件的质量属性 27

2.3.6 确定需求优先级 29

2.4 需求文档 30

2.5 需求评审 30

2.6 需求管理 31

2.6.1 需求变更管理 31

2.6.2 需求跟踪 33

习题 34

3.1.1 测试目标 35

3.1 软件测试目标与测试方法 35

第3章 软件测试 35

3.1.2 测试方法 36

3.1.3 测试阶段的信息流 36

3.2 软件测试过程 37

3.2.1 单元测试 38

3.2.2 集成测试 39

3.2.3 确认测试 42

3.2.4 系统测试 43

3.3.1 黑盒测试 44

3.3 软件测试 44

3.3.2 白盒测试 49

3.4 软件调试 51

3.4.1 调试的过程 52

3.4.2 测试和调试的区别 53

3.4.3 调试的方法 54

3.5 软件可靠性评估 55

3.5.1 基本概念 55

3.5.2 估算平均无故障时间的方法 56

习题 58

第4章 软件维护与软件进化 59

4.1 软件的可维护性 59

4.1.1 软件维护的概念 59

4.1.2 软件可维护性的定义 62

4.1.3 提高可维护性的方法 64

4.2 软件维护的实施 65

4.2.2 软件维护的工作流程 66

4.2.1 软件维护的申请报告 66

4.2.3 维护文档整理 67

4.2.4 维护评价 68

4.3 逆向工程与重构工程 69

4.4 软件配置管理 71

4.4.1 基线 71

4.4.2 软件配置标识 72

4.4.3 变更控制 72

4.4.5 配置审核 74

4.4.4 版本控制 74

4.4.6 配置状态报告 75

4.5 软件进化 75

习题 76

第5章 软件工程管理 77

5.1 项目可行性分析 77

5.1.1 可行性分析的任务 77

5.1.2 可行性分析的步骤 78

5.2.1 计算机软件系统 79

5.2 计算机系统分析 79

5.2.2 系统分析方法 81

5.2.3 系统流程图 81

5.3 项目规划 83

5.3.1 项目规划的内容 83

5.3.2 项目进度表 84

5.4 软件质量管理 86

5.4.1 软件质量的概念 86

5.4.2 软件质量保证 86

5.5 软件经济学 88

5.5.1 软件规模估算 88

5.5.2 软件效益估算 90

5.5.3 软件开发成本估算 90

习题 94

第6章 软件设计基础 95

6.1 系统的概要设计 95

6.1.1 概要设计过程 95

6.1.2 概要设计的内容 96

6.1.3 软件的构架设计 98

6.2 软件结构设计 98

6.2.1 软件的模块化 98

6.2.2 结构建模 103

6.2.3 软件结构的优化 105

6.3 数据库结构设计 107

6.3.1 数据库结构设计概述 107

6.3.2 概念结构设计 108

6.3.3 逻辑结构设计 111

6.3.4 物理结构设计 114

6.4 面向对象分析与设计 115

6.4.1 面向对象的概念 115

6.4.2 面向对象的分析 118

6.4.3 面向对象的设计 121

6.5 人-机界面设计 124

6.5.1 用户使用需求分析 124

6.5.2 界面类型 126

6.5.3 界面的基本原则 128

6.5.4 界面设计过程 130

6.6 快速原型设计方法 130

6.6.1 原型方法概述 131

6.6.2 快速原型开发方法 134

习题 136

7.1 基于UML的软件开发过程 137

7.1.1 过程概述 137

第7章 UML建模语言 137

7.1.2 初始阶段 138

7.1.3 细化阶段 138

7.1.4 构造阶段 142

7.1.5 移交阶段 143

7.1.6 何时使用迭代式开发方法 143

7.2 基于UML的需求分析 144

7.2.1 建立用例模型 145

7.2.2 UML静态建模机制 147

7.2.4 完善静态模型 148

7.2.3 UML动态建模机制 148

7.2.5 需求分析总结 149

7.3 UML建模与类图设计 149

7.3.1 类和对象 149

7.3.2 类图 151

习题 158

第8章 实时系统软件设计 160

8.1 什么是实时系统 160

8.2 实时操作系统 161

8.2.1 任务管理 162

8.2.2 时钟管理 164

8.2.3 中断管理 164

8.2.4 资源管理 164

8.3 实时系统设计 165

8.3.1 实时系统的状态机模型 165

8.3.2 数据采集系统 165

8.3.3 监控系统 169

8.3.4 实时软件的设计方法 170

习题 172

第9章 组态软件技术基础 173

9.1 工控组态软件技术概述 173

9.2 工控组态软件的结构 174

9.3 组态软件的功能和特点 175

9.3.1 工控组态软件的特点 175

9.3.2 工控组态软件的功能 175

9.4.1 实时数据库的主要特征 176

9.4 实时数据库 176

9.4.2 实时数据库的功能 177

9.5 脚本语言 178

9.5.1 动作脚本的触发器 178

9.5.2 动作脚本的变量和对象 179

9.5.3 VBScript脚本语言要素 179

9.6 设备驱动 186

9.6.1 组态软件与设备的通讯方式 186

9.6.2 设备通道与实时数据库的连接 187

9.7.1 软件开发平台 188

9.7 组态软件的可扩展性和开放性 188

9.7.2 构造企业信息平台 189

9.7.3 嵌入式应用 189

9.8 使用组态软件开发应用系统的步骤 189

习题 190

第10章 工控过程的图形画面设计 191

10.1 组态软件的画面编辑器 191

10.1.1 画面编辑器的主要功能及特点 191

10.1.2 画面编辑器中的基本概念 191

10.1.3 画面编辑器的工作环境 192

10.2 图形控件的使用 193

10.2.1 内部图形控件 193

10.2.2 图库对象的使用 194

10.2.3 ActiveX控件的管理和使用 195

10.3 图形动画 196

10.3.1 图形动画的概念及分类 196

10.3.2 参与动画连接的主体变量 196

10.3.3 建立图形动画的基本步骤 197

10.4.1 报警处理过程 198

10.4 报警与事件 198

10.4.2 报警的类型和优先级 199

10.4.3 报警的组态 200

10.4.4 事件的记录和显示 201

10.4.5 报警和事件的输出 202

10.5 配方管理 202

习题 203

11.2 变量的类型与类别 205

11.2.1 变量的类型 205

第11章 实时数据库与变量组态 205

11.1 变量管理器 205

11.2.2 变量的类别 206

11.2.3 变量数组 207

11.3 创建与编辑变量 208

11.3.1 创建新变量 208

11.3.4 搜索变量 209

11.3.3 删除变量 209

11.3.2 编辑变量 209

11.4 实时数据库组态 211

11.4.1 实时数据库的数据结构 211

11.4.2 实时数据库的组态 213

11.5 利用ADO/ODBC访问通用数据库 214

11.5.1 ADO/ODBC的基本概念 214

11.5.2 ADO/ODBC的使用方法 215

11.5.3 ODBC组件的组态和使用方法 218

习题 220

第12章 输出报表组态 221

12.1 报表编辑器 221

12.2 组态变量实时记录报表 221

12.2.1 报表常用的概念 221

12.2.2 万能报表 222

12.2.3 总貌报表 223

12.2.4 实时趋势、历史趋势及x-y曲线 223

12.3.1 历史报表的组态过程 225

12.3 组态变量历史记录报表 225

12.3.2 查询历史报表 228

12.3.3 打印报表 229

12.3.4 自绘历史报表表头 229

12.4 组态报警消息报表 229

习题 230

第13章 通讯组态 231

13.1 过程通讯原理 231

13.1.1 通讯术语 231

13.2.1 OPC产生的背景及其特点 232

13.1.2 组态软件通讯原理 232

13.2 OPC通讯 232

13.2.2 OPC体系结构 234

13.2.3 OPC的适用范围 235

13.3 DDE/OLE通讯标准 235

13.3.1 DDE通讯的过程及原理 235

13.3.2 OLE概述 236

习题 237

14.2 安装驱动程序 238

第14章 工控系统中的设备管理 238

14.1 设备分类 238

14.3 设备管理 239

14.3.1 增加I/O设备 239

14.3.2 连接I/O设备 240

14.3.3 修改I/O设备参数或删除设备 240

习题 241

15.1.2 客户机/服务器组态 242

15.1.1 客户机/服务器功能概述 242

15.1 客户机/服务器结构 242

第15章 工控组态软件的通讯网络 242

15.1.3 数据连接 243

15.1.4 双机冗余 244

15.2 浏览器/服务器结构 246

15.2.1 PCAuto的B/S结构组态 246

15.2.2 WinCC的B/S结构组态 247

习题 247

16.1.2 组态步骤 248

16.1.1 工程要求 248

第16章 工控组态软件设计应用实例 248

16.1 行星运动仿真 248

16.2 自动板厚控制系统仿真 249

16.2.1 板厚控制系统功能及要求 249

16.2.2 板厚控制系统的组态过程 250

16.2.3 系统的总体组态效果 252

16.3 组态软件在工业锅炉控制系统中的应用 257

附录1 软件文档格式 259

A 可行性研究报告 259

B 项目计划说明书 263

C 软件需求规格说明书 265

附录2 常用组态软件简介 267

A 力控组态软件PCAuto简介 267

B WinCC组态软件简介 273

C MCGS组态软件简介 276

参考文献 281