《软件组建技术》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:刘怀亮,陈荣征,吕国华编著
  • 出 版 社:北京:冶金工业出版社
  • 出版年份:2007
  • ISBN:7502443053
  • 页数:286 页
图书介绍:本书是一本全面介绍软件组建技术的教材,主要介绍了几种当今最为流行的软件组建开发技术,这些技术包括结构化技术、面向对象技术、组件技术、中间件技术、构件技术和复用技术、软件Agent技术以及软件应用集成技术。编写本书的目的是通过对相关技术的介绍,使广大读者能够对当今的软件组建技术有个整体的认识,并通过对本书的学习掌握软件组建开发的常用方法和技术。

第1章 结构化技术 1

1.1 结构化程序 1

1.1.1 结构化程序设计 1

1.1.2 控制结构 2

1.2 结构化分析与设计的一般步骤 4

1.3 结构化分析 4

1.3.1 数据流分析 5

1.3.2 数据流图 5

1.3.3 数据字典 7

1.4 结构化设计的图标工具 9

1.4.1 IPO图 9

1.4.2 结构图 11

1.4.3 程序流程图 11

1.4.4 盒图 12

1.4.5 PAD图 14

1.5 面向数据结构的设计 15

1.5.1 Jackson图 15

1.5.2 Jackson方法 16

1.5.3 设计实例 16

1.6 模块设计 18

1.6.1 模块与模块化 18

1.6.2 模块的特征与独立性 19

1.6.3 模块的耦合 21

1.6.4 模块的聚合 22

1.6.5 模块设计的一般准则 23

1.7 一个简单的例子 24

小结 24

习题一 25

一、选择题 25

二、填空题 26

三、简答题 26

四、上机操作题 26

第2章 面向对象技术 28

2.1 为什么讨论面向对象技术 28

2.1.1 三种主要方法论简介 31

2.1.2 结构化方法存在的问题以及原因 31

2.1.3 面向对象分析和设计解决的两大难题 33

2.2 面向对象技术的基本概念 33

2.2.1 对象 33

2.2.2 消息和方法 34

2.2.3 类和实例 35

2.3 面向对象的基本特征 35

2.3.1 继承性 36

2.3.2 封装性 36

2.3.3 多态性 37

2.3.4 应用举例 38

2.4 软件生命周期与开发模型 42

2.4.1 面向对象的软件生命周期 42

2.4.2 面向对象方法与快速原型技术 43

2.5 几种主要面向对象方法的介绍与比较 44

2.5.1 Booch方法 44

2.5.2 OMT方法 44

2.5.3 Coad/Yourdon方法 45

2.5.4 OOSE方法 45

2.6 统一建模语言UML 46

2.6.1 为什么要使用UML 46

2.6.2 UML的组成 46

2.6.3 UML的结构和图符表示 48

2.6.4 UML的静态建模 49

2.6.5 UML的动态建模机制 52

2.7 面向对象的建模工具Rational Rose 55

2.7.1 Rational Rose概况 56

2.7.2 Rational Rose的主要功能 56

2.7.3 Rose模型 57

2.7.4 如何使用Rational Rose 58

2.7.5 RUP的开发过程 60

2.8 面向对象技术的新应用 62

2.8.1 并发面向对象技术 63

2.8.2 面向对象的数据库技术 64

小结 64

习题二 65

一、选择题 65

二、填空题 65

三、简答题 65

四、上机操作题 66

第3章 软件组件技术 67

3.1 组件技术产生的背景 67

3.2 组件技术概述 68

3.2.1 组件技术的编程思想 68

3.2.2 组件技术简介 68

3.2.3 组件的创建与组成 69

3.3 组件与对象、构件的关系 70

3.3.1 组件与对象 70

3.3.2 基于对象的组件体系结构 70

3.3.3 组件与构件 71

3.4 组件开发原理 71

3.4.1 组件的软件设计模式 71

3.4.2 组件的软件体系结构 72

3.5 开发组件的一般步骤 72

3.5.1 确定组件基类 73

3.5.2 创建组件单元 73

3.5.3 创建包工程 75

3.5.4 注册组件 76

3.5.5 添加组件属性 77

3.5.6 为组件添加事件 78

3.5.7 组件的测试 78

3.5.8 组件图标的创建与组件的发布 79

3.6 典型组件技术COM概述 79

3.6.1 COM的优点 80

3.6.2 COM的基本机制 80

3.7 Delphi组件开发实例 81

3.7.1 实例一:聊天程序设计 81

3.7.2 实例二:图形镜像应用 86

小结 89

习题三 90

一、选择题 90

二、填空题 90

三、简答题 91

四、上机操作题 91

第4章 中间件技术 92

4.1 中间件的概述 92

4.1.1 中间件的发展动力 92

4.1.2 中间件的定义 93

4.1.3 为什么需要中间件 93

4.1.4 计算模式的演变 94

4.1.5 中间件与两层、三层C/S结构模式 95

4.2 中间件的特点、功能和分类 96

4.2.1 中间件的特点 96

4.2.2 中间件的功能 97

4.2.3 中间件的分类 97

4.3 中间件应用现状 98

4.3.1 中间件在电子商务中的应用 98

4.3.2 中间件在ERP系统中的应用 98

4.4 中间件的基本框架模型和工作机理 99

4.4.1 中间件的基本框架 99

4.4.2 中间件的工作机理 100

4.4.3 Web环境中的中间件 100

4.5 五大中间件的工作机理 100

4.5.1 数据库中间件 101

4.5.2 远程过程调用中间件 101

4.5.3 面向消息的中间件 102

4.5.4 对象请求代理中间件 103

4.5.5 事务处理监控中间件 104

4.6 中间件实现的关键技术 105

4.6.1 远程过程调用 105

4.6.2 发报文和排队 105

4.7 当前支持服务器端中间件的平台技术 106

4.7.1 SUN的J2EE 106

4.7.2 Microsoft DNA 2000 107

4.7.3 OMG的CORBA 107

4.7.4 三种分布式计算平台的特点 108

4.8 开源Jdon Framework 109

4.8.1 传统的J2EE系统面临的问题 109

4.8.2 Jdon框架简介 109

4.8.3 Jdon框架特点 110

4.8.4 Jdon两个优势 110

4.8.5 Jdon框架在软件生产中的作用 111

4.8.6 开发框架和代码生成工具区别 111

4.9 中间件技术的发展趋势 111

4.9.1 网格技术 111

4.9.2 面向移动计算 112

4.9.3 面向服务质量 112

4.9.4 其他技术对中间件技术的影响 113

4.9.5 中间件研究的最新热点 113

4.10 RMI概述与编程实例 113

4.10.1 RMI概述 114

4.10.2 RMI编程步骤 115

4.10.3 使用RMI实现回调 120

4.11 中间件技术的新应用 124

4.11.1 几个相关的概念 124

4.11.2 从中间件到Web Services 125

4.11.3 中间件的应用级别 125

4.11.4 中间件技术在集成中的应用 126

4.11.5 中间件技术的新趋势 126

小结 127

习题四 128

一、选择题 128

二、填空题 129

三、简答题 130

四、上机操作题 130

第5章 软件复用与构件技术 131

5.1 软件复用和构件化 131

5.1.1 软件复用和构件化提出的背景 131

5.1.2 构件化与软件工厂 132

5.2 软件复用技术 133

5.2.1 软件复用产生的背景 133

5.2.2 软件复用的历史 134

5.2.3 软件复用技术的概念 134

5.2.4 复用意义 135

5.2.5 基于构件的软件开发过程 136

5.2.6 软件复用的关键因素 137

5.3 复用的分类、软件制品以及建议 138

5.3.1 软件复用的分类 138

5.3.2 可复用的软件制品 140

5.3.3 软件复用途径的一些建议 140

5.4 实现软件复用应考虑的主要问题 140

5.4.1 程序设计结构方面 141

5.4.2 系统的组织结构方面 141

5.5 软件复用的核心技术——软件构件技术 141

5.5.1 软件构件技术简介 142

5.5.2 软件构件技术的产生 143

5.5.3 原则 144

5.5.4 构件与对象 145

5.5.5 构件与构件的分类 146

5.5.6 构件开发应该注意的问题 147

5.5.7 实现构件技术的条件 147

5.6 构件技术的研究内容 148

5.6.1 构件模型和构件描述语言 148

5.6.2 构件的获取 149

5.6.3 构件的表示和检索 149

5.6.4 构件组装 150

5.6.5 构件组装技术 150

5.6.6 构件及构件库的标准化 150

5.7 基于构件技术的复用与传统复用的区别 151

5.8 基于构件复用的软件开发实践活动 151

5.9 构件技术与中间件的关系 152

5.9.1 中间件:构件存在的基础 152

5.9.2 构件思想对中间件的作用 152

5.10 复用的其他相关技术 153

5.10.1 领域工程 153

5.10.2 软件构架 154

5.10.3 软件再工程 155

5.10.4 开放系统技术 156

5.10.5 CASE技术 156

5.11 主流构件模型技术 156

5.11.1 JavaBean/EJB 156

5.11.2 CORBA 158

5.11.3 COM/DCOM 158

5.11.4 EJB和其他技术的比较 160

5.12 相关技术 162

5.12.1 .NET(DOTNET) 162

5.12.2 开放网格服务体系结构(OGSA) 163

5.13 EJB开发技术与应用实例 163

5.13.1 EJB技术概述 164

5.13.2 EJB构件的开发步骤 166

5.13.3 EJB开发实例 166

小结 170

习题五 171

一、选择题 171

二、填空题 172

三、简答题 172

四、上机操作题 173

第6章 软件Agent技术 174

6.1 软件Agent技术起源及发展概述 174

6.1.1 软件Agent技术的起源 174

6.1.2 多Agent系统 175

6.1.3 软件Agent技术发展现状 175

6.2 软件Agent的概述 176

6.2.1 软件Agent定义 176

6.2.2 软件Agent的功能 177

6.2.3 软件Agent技术的标准化 177

6.2.4 软件Agent的联邦结构 178

6.3 软件Agent的分类 179

6.4 软件Agent的基本结构和工作机理 180

6.5 Agent状态 181

6.6 移动Agent 182

6.6.1 固定Agent的定义 182

6.6.2 移动Agent及相关概念的区别 182

6.6.3 移动Agent的特点 183

6.6.4 移动Agent的体系结构 183

6.6.5 基于移动Agent的分布计算模型 184

6.6.6 实现移动Agent系统的关键技术 186

6.6.7 移动Agent的优点 187

6.6.8 几种典型的移动Agent平台 188

6.7 Voyager的移动代理编程 189

6.7.1 启动和终止Voyager 189

6.7.2 使用移动Agent 190

6.7.3 开发移动Agent 190

6.8 移动Agent的应用 195

6.8.1 电子商务 195

6.8.2 分布式信息检索 196

6.9 移动Agent存在的问题 197

6.9.1 效率问题 197

6.9.2 标准问题 197

6.9.3 安全问题 197

6.10 移动Agent未来的研究方向 197

6.11 面向Agent的软件开发 198

6.11.1 面向Agent与面向对象之间的关系 198

6.11.2 几种典型的面向Agent软件开发方法 201

6.12 多Agent系统开发平台——JADE 203

6.12.1 JADE内容概述 203

6.12.2 JADE的主要功能 204

6.12.3 多Agent系统的创建 204

6.12.4 目录服务(DF) 205

6.12.5 Agent管理系统服务(AMS) 205

6.13 Agent类与JADEAgent类 205

6.13.1 Agent生命周期 206

6.13.2 Agent内的通信 207

6.13.3 带有GUI的Agent 207

6.13.4 Agent任务与Agent行为 207

6.13.5 JADE对移动Agent的支持 208

小结 208

习题六 209

一、选择题 209

二、填空题 209

三、简答题 209

四、上机操作题 210

第7章 软件应用集成技术 211

7.1 集成概念的发展与集成模型的分类 211

7.1.1 集成概念的发展 211

7.1.2 集成模型的分类 212

7.2 集成与耦合 213

7.3 三种集成模型概述 214

7.3.1 表示集成模型 214

7.3.2 数据集成模型 215

7.3.3 功能集成模型 215

7.4 软件集成的应用模式 216

7.4.1 企业应用集成 216

7.4.2 电子商务 220

7.5 多数据库集成 221

7.5.1 CORBA与多数据库集成的技术 223

7.5.2 基于CORBA的多数据库集成策略 223

7.5.3 基于CORBA的多数据库集成结构和访问途径 223

7.5.4 基于ASP的多源数据库集成 224

7.6 XML技术以及基于XML的应用集成 225

7.6.1 XML技术简介 225

7.6.2 利用XML进行应用集成 227

7.7 Web Service技术与三种开发平台 228

7.7.1 Web Service技术简介 229

7.7.2 三种典型的Web Service开发平台 233

7.8 基于Web服务的系统集成 234

7.9 CORBA与Web服务的集成 235

7.9.1 CORBA简介 235

7.9.2 CORBA与Web服务的集成 235

7.9.3 集成网关的设计 236

7.9.4 关键技术 237

7.10 Voyager和CORBA集成 237

7.10.1 Voyager CORBA编程基础 237

7.10.2 Voyager CORBA应用程序举例 238

小结 240

习题七 240

一、选择题 240

二、填空题 241

三、简答题 241

四、上机操作题 241

第8章 数字城市的软件组建模型 242

8.1 数字城市的相关概念 242

8.1.1 数字城市的基本概念 242

8.1.2 数字城市的内容 243

8.1.3 数字城市意义和作用 244

8.2 基于元数据的数字城市数据组织模型 244

8.2.1 数字城市中元数据的内涵 244

8.2.2 数字城市中元数据的特征 247

8.2.3 基于元数据的数字城市数据组织模型 247

8.3 基于软件Agent的数字城市软件构架模型 249

8.3.1 软件Agent在数字城市中的适应性 249

8.3.2 基于CORBA/DCOM的软件Agent数字城市模型 249

小结 253

习题八 253

一、选择题 253

二、填空题 254

三、简答题 254

附录 上机实训 255

实训1 用结构化方法验证“歌德巴赫猜想” 255

实训2 用面向对象方法实现学生信息管理 257

实训3 用Delphi 7.0中的组件实现优化的数据库设计 259

实训4 用CORBA实现分布式照明系统 263

实训5 用RMI实现“城市信息”服务器的应用程序开发 269

实训6 基于CORBA的数值计算应用程序 272

实训7 基于CORBA的银行应用程序 275

实训8 使用Voyager开发移动代理程序 279

实训9 Voyager和CORBA的集成 282

参考文献 286