《结构化与面向对象软件方法》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:汤庸编著
  • 出 版 社:北京:科学出版社
  • 出版年份:1998
  • ISBN:7030068467
  • 页数:206 页
图书介绍:

第一章 绪论 1

1.1 形成与发展 1

1.1.1 程序设计方法学 1

1.1.2 软件工程 2

1.1.3软件方法学 2

1.1.4 结构化方法 3

1.1.5 面向对象方法 4

1.2 软件生存周期 5

1.2.1 五个软件时期的划分 6

1.2.2 软件定义与计划 7

1.2.3 软件分析 10

1.2.4 软件设计 11

1.2.5 软件实现 11

1.2.6 软件运行与维护 15

1.3 软件开发过程模型 15

1.3.1 瀑布模型 16

1.3.2 原型模型 16

1.3.3其它模型 17

第二章 结构化程序及构造方法 18

2.1 结构化程序 18

2.1.1 结构化程序设计 18

2.1.2 关于GOTO 18

2.1.3 控制结构 19

2.1.4 正规程序 20

2.1.5 基本程序 22

2.1.6 结构化程序 23

2.2 结构化定理 23

2.2.1 程序函数 23

2.2.2 结构化定理 24

2.2.3 非结构化程序到结构化程序转换 26

2.3 逐步求精方法 29

2.3.1 什么是逐步求精 29

2.3.2 逐步求精技术 30

2.4 程序形式推导技术 32

2.4.1 语句的HOARE表示 32

2.4.2 谓词变换器 32

2.4.3 程序的形式语义 34

2.4.4 面向目标的推导 37

2.4.5 不变式推导 40

2.5 程序变换技术 44

2.5.1 程序变换的基本思想 44

2.5.2 程序变换的基本规则 45

2.5.3 程序的生成方法 47

2.5.4 递归消去法 48

第三章 结构化分析与设计 51

3.1 结构化分析与设计的一般步骤 51

3.2 数据流分析技术 52

3.2.1 数据流分析 52

3.2.2 数据流图 54

3.2.3 数据字典 55

3.3 逻辑分析工具 58

3.3.1 结构化语言 58

3.3.2 判定树 59

3.3.3 判定表 60

3.4 结构化设计的图表工具 61

3.4.1 IPO图 61

3.4.2 结构图 63

3.4.3 程序流程图 64

3.4.4 盒图 65

3.4.5 PAD图 66

3.4.6 过程设计语言PDL 68

3.5 面向数据流的设计 69

3.5.1 变换流与事务流 69

3.5.2 设计步骤 70

3.5.3 变换设计 72

3.5.4 事务设计 73

3.6 面向数据结构的设计 74

3.6.1 Jackson图 74

3.6.2 Jackson方法 74

3.6.3 设计实例 75

3.7 模块化技术 78

3.7.1 模块与模块化 78

3.7.2 模块的特征与独立性 79

3.7.3 模块的藕合 80

3.7.4 模块的内聚 82

3.7.5 模块设计一般准则 84

3.7.6 模块的作用域与控制域 86

3.8 应用实践 88

第四章 程序测试与正确性证明 89

4.1 程序正确性定义 89

4.2 HOARE公理化方法 90

4.2.1 HOARE基本法则 90

4.2.2 简单语句证明法则 91

4.2.3 循环语句证明法则 93

4.3 FLOYD方法 95

4.3.1 不变式断言法 95

4.3.2 良序集法 100

4.4 递归程序正确性证明 103

4.4.1 递归与迭代 103

4.4.2 递归的程序模式 104

4.4.3 递归计算规则 105

4.4.4 结构归纳法 106

4.4.5 良序归纳法 107

4.5 测试的基本概念 109

4.5.1 软件测试 109

4.5.2 黑盒测试与白盒测试 109

4.6 测试过程与步骤 111

4.6.1 测试过程 111

4.6.2 单元测试 112

4.6.3 集成测试 113

4.6.4 验收测试 116

4.7 测试方案设计 117

4.7.1 测试方案设计的基本原则 117

4.7.2 逻辑覆盖 117

4.7.3 等价类划分 120

4.7.4 边界值分析 121

4.8 调试 121

4.8.1 静态查找 122

4.8.2 消去法 122

4.8.3 回溯法 123

第五章 面向对象的概念 124

5.1 对象与类 124

5.1.1 对象 125

5.1.2 消息与方法 127

5.1.3 类 129

5.2 基本特征 131

5.2.1 协议与封装 131

5.2.2 继承性 132

5.2.3 多态性与动态联编 135

5.3 软件生存周期与开发模型 136

5.3.1 面向对象的软件生存周期 136

5.3.2 面向对象方法与快速原型技术 137

第六章 面向对象分析与设计 139

6.1 前言 139

6.1.1 OOA形成 139

6.1.2 多层次多组成模型 140

6.1.3 OOA步骤 141

6.2 标识类/对象 145

6.2.1 为什么要标识类/对象 145

6.2.2 如何确定对象 146

6.2.3 实例 147

6.3 标识结构 149

6.3.1 什么是结构 149

6.3.2 为什么要定义结构 149

6.3.3 如何定义结构 149

6.4 标识主题 150

6.4.1 什么是主题 150

6.4.2 为什么要引入主题 151

6.4.3 如何定义主题 151

6.5 定义属性 152

6.5.1 为什么要定义属性 152

6.5.2 如何定义属性 152

6.6 定义服务 157

6.6.1 什么是服务 157

6.6.2 如何定义服务 157

6.6.3 表示所需要的服务 158

6.6.4 标识消息连接 158

6.6.5 说明服务 159

6.7 面向对象设计 160

6.7.1 转向面向对象的设计 160

6.7.2 OOD准则与步骤 160

6.7.3 汇集OOA文档资料 161

第七章 面向对象程序设计 162

7.1 前言 162

7.1.1 OOD与实现语言 162

7.1.2 面向对象程序设计语言 163

7.1.3 面向对象程序的特点 164

7.2 Smalltalk面向对象编程 165

7.2.1对象、类、实例及继承性 165

7.2.2 变量名与文字句法 166

7.2.3 消息表达式 167

7.2.4 块表达式 168

7.2.5 基本控制结构 168

7.2.6 方法 170

7.3 C++面向对象编程 172

7.3.1 C++面向对象概念 172

7.3.2 C++类 172

7.3.3 成员函数 173

7.3.4 对象 175

7.3.5 构造函数与析构函数 176

7.3.6 继承性与派生类 177

7.3.7 多态性与虚拟函数 180

7.3.8 友元 182

7.3.9 一个例子 183

第八章 软件质量与维护 185

8.1 软件质量 185

8.1.1 软件质量标准 185

8.1.2 软件质量保证 186

8.2 软件质量度量模型 187

8.2.1 Boehm模型 187

8.2.2 McCall模型 187

8.2.3 ISO建议模型 188

8.2.4 软件质量因素 188

8.3 软件质量评价方法 192

8.3.1 McCabe软件复杂性度量 192

8.3.2 Halstad软件复杂性度量方法 194

8.3.3 软件可靠性度量方法 195

8.4 软件维护的概念 196

8.4.1 软件维护的类型 197

8.4.2 软件的可维护性 197

8.4.3 软件维护工作量模型 198

8.4.4 软件维护的典型问题 198

8.4.5 维护的代价与副作用 199

8.5 维护过程与方法 200

8.5.1 维护组织 200

8.5.2 维护模型 201

8.5.3 维护报告 202

8.5.4 维护的记录与评价 202

8.6 面向对象软件质量与维护 203

8.6.1 软件质量保证和可维护性 203

8.6.2 面向对象软件质量与维护的新课题 204

参考文献 205