第一部分 复合应用技术概况 2
第1章 复合应用系统概念 2
1.1 企业单一业务信息系统方法与问题 3
1.1.1 面向流程的单一业务系统 3
1.1.2 单一业务信息系统架构 4
1.1.3 业务系统增加带来的集成需求 5
1.1.4 应用集成与数据集成 6
1.1.5 特殊数据集成 7
1.1.6 企业中众多的工具软件 8
1.1.7 企业信息系统不断增加的趋势及问题 9
1.2 复合应用系统概念 10
1.2.1 复合应用基本思想 10
1.2.2 复合应用系统的类型和开发 12
1.2.3 复合应用管理 15
1.3 复合应用是SOA系统的前端 16
1.3.1 SOA概念 16
1.3.3 SOA思想在复合应用使用中的体现 16
1.3.2 SOA思想在复合应用架构中的体现 17
1.4 复合应用的应用实例 18
1.4.1 银行网点系统 18
1.4.2 物流企业调度系统 19
1.4.3 员工个人计算机管理系统 21
1.4.4 医生工作站 22
1.5 复合应用系统的生命期 25
1.5.1 信息系统生命期 26
1.5.2 复合信息系统的生命期 26
1.5.3 复合信息系统的需求分析和系统定义 27
1.5.4 复合信息系统的设计开发与测试 27
1.5.5 复合信息系统的部署与运行管理 28
1.5.6 复合应用框架的生命期 29
1.5.7 复合应用中应用构件的生命期 29
1.6 实现复合应用系统的技术和工具 30
1.6.1 信息系统技术工具分类 31
1.6.2 复合应用的技术和产品 31
1.6.3 基于浏览器的Web复合技术 32
1.6.4 桌面客户端复合技术 33
1.6.5 复合应用的运行和管理环境 33
1.7 复合应用的未来发展 34
1.7.1 企业信息系统前端的基本形态 34
1.7.2 促进企业综合信息系统技术和工具的发展 34
1.7.3 复合应用在个人家庭信息系统中的应用 35
1.8 小结与进一步学习 35
第2章 复合应用需求分析与系统定义 36
2.1 企业组织中的员工和业务流程 37
2.1.1 组织结构和员工类型 37
2.1.2 业务流程,岗位与员工 38
2.2 面向流程的系统需求 39
2.2.1 面向业务流程的需求分析 39
2.2.2 需求分析结果表示方法 40
2.2.3 面向特定业务流程需求分析问题 41
2.3 面向组织角色的系统需求 41
2.3.1 用复合应用满足员工对信息系统的需求 41
2.3.2 角色的任务管理要求 42
2.3.3 不同类型角色的任务管理要求 43
2.3.4 用户的工具管理要求 43
2.3.5 系统管理人员的要求 44
2.3.6 企业对复合系统的总体要求 44
2.4 对现有业务系统的分析和调查 44
2.4.1 现有系统与企业流程和岗位操作的关系 45
2.4.2 现有系统开发技术和接口分析 45
2.4.3 现有系统运行基础设施调查 45
2.4.4 现有系统与复合系统关系分析 45
2.5 复合应用系统功能定义 46
2.5.1 需求与系统定义的区别和关系 46
2.5.2 复合系统功能定义的形式和内容 47
2.5.3 定义系统业务功能与管理功能 47
2.6 复合应用框架定义 47
2.6.1 业务人员使用界面定义 48
2.6.2 框架基本结构定义 48
2.6.3 构件管理定义 48
2.6.4 应用组合定义 49
2.6.5 框架安全定义 49
2.7 应用构件的定义 49
2.7.1 功能定义 49
2.7.2 复合要求定义 50
2.7.3 与后台服务接口 50
2.7.4 管理和技术服务要求 50
2.8 复合应用系统需求的演进 50
2.8.1 企业组织结构和人员职责的演进 51
2.8.2 企业业务流程变化的演进 51
2.8.3 业务岗位人员技能的演进 51
2.8.4 业务岗位需求的变化 52
2.9 小结与进一步学习 52
第3章 复合应用系统的开发技术和工具 53
3.1 复合系统开发阶段技术和工具 54
3.1.1 复合系统开发阶段的任务与工具 54
3.1.2 复合系统构件开发工具 54
3.1.3 复合系统框架开发工具 55
3.1.4 组合调试工具 55
3.1.5 商业与开源工具 55
3.2 复合系统运行和管理阶段任务与工具 56
3.2.1 系统运行管理任务 56
3.2.2 系统部署工具 57
3.2.3 系统安全管理工具 57
3.2.4 系统监控工具 57
3.3 Web复合应用技术 57
3.3.1 特定厂商的Web构件技术 59
3.3.2 特定厂商的Web复合技术 59
3.3.3 基于标准的Web界面复合技术 62
3.3.4 浏览器Web界面复合运行平台 63
3.4 桌面复合应用开发技术和工具 65
3.4.1 桌面应用的构件技术,框架技术和运行平台 65
3.4.2 厂商专有桌面框架与构件 66
3.4.3 桌面复合应用的相关工具 67
3.5 小结与进一步学习 67
第4章 复合应用系统设计和开发 68
4.1 复合应用设计和开发特点 69
4.1.1 复合系统整体设计 69
4.1.2 复合系统结构设计 70
4.1.3 与其他系统的集成和接口设计 70
4.1.4 复合系统实现 70
4.2 复合框架的设计和开发 71
4.2.1 复合应用界面层次设计 71
4.2.2 复合应用组合内布局与交互设计 71
4.2.3 运行架构设计 72
4.2.4 本地服务,通讯设计 72
4.2.5 框架开发 73
4.3 复合构件的设计和开发 73
4.3.1 复合构件结构设计 73
4.3.2 复合构件开发实现 74
4.3.3 从零开始开发构件 74
4.3.4 开发前端构件 74
4.3.5 开发包装现有应用 74
4.4 复合系统运行管理的设计 74
4.4.1 浏览器运行环境 75
4.4.2 桌面运行环境 75
4.4.3 运行环境的基础设施 75
4.4.4 运行管理制度的设计 75
4.5 小结与进一步学习 75
第二部分 用Eclipse实践复合应用 77
第5章 作为桌面复合应用平台的Eclipse RCP 77
5.1 Eclipse RCP简介 78
5.1.1 Eclipse平台 78
5.1.2 Eclipse插件结构 80
5.1.3 Eclipse RCP平台及应用 80
5.2 Eclipse RCP作为复合应用平台 80
5.2.1 Eclipse RCP结构与复合应用架构的对应 80
5.2.2 在Eclipes RCP中集成各种技术的应用系统 81
5.2.3 对企业应用Eclipse RCP需要扩展 81
5.3 基于Eclipse RCP的复合应用开发和管理 82
5.3.1 复合应用开发与Eclipse RCP开发的对应 82
5.3.2 复合应用框架在Eclipse RCP中的实现 82
5.3.3 复合应用构件在Eclipse RCP中的实现 82
5.3.4 基于Eclipse RCP的复合应用的部署和管理 82
5.4 小结与进一步学习 83
第6章 Eclipse平台的开发、运行环境设置 84
6.1 安装Eclipse 85
6.1.1 安装JDK/JRE 85
6.1.2 安装Eclipse SDK 86
6.1.3 启动Eclipse 87
6.2 Eclipse集成开发环境介绍 88
6.2.1 Eclipse工作空间 88
6.2.2 Eclipse工作台 89
6.2.3 插件开发透视图 90
6.2.4 调试透视图 91
6.2.5 其他透视图 91
6.3 应用程序的运行与调试 92
6.3.1 运行Java应用 92
6.3.2 运行Eclipse应用 93
6.3.3 调试Eclipse插件 95
6.4 小结与进一步学习 97
第7章 第一个RCP应用的开发及运行 98
7.1 创建Hello World RCP应用程序 99
7.2 运行Hello World RCP应用程序 100
7.3 RCP应用程序的结构 102
7.3.1 RCP程序类文件 103
7.3.2 RCP插件配置文件 107
7.3.3 RCP项目构建文件 107
7.3.4 RCP项目资源文件 108
7.4 丰富Hello World RCP应用程序 108
7.4.1 添加视图 108
7.4.2 添加菜单 113
7.4.3 添加工具条 115
7.5 小结与进一步学习 117
第8章 Eclipse RCP应用的部署和更新 118
8.1 打包RCP应用 119
8.1.1 创建RCP产品配置 119
8.1.2 为RCP产品打上商标 123
8.2 运行测试RCP产品 130
8.3 部署RCP应用 132
8.4 更新RCP应用 134
8.4.1 什么是功能部件 134
8.4.2 什么是更新站点 136
8.4.3 本地更新 137
8.5 小结与进一步学习 142
第9章 实现多个透视图 143
9.1 创建透视图 144
9.1.1 添加透视图扩展 144
9.1.2 创建透视图类 145
9.2 添加Perspective Bar 146
9.2.1 传统风格的Perspective Bar 146
9.2.2 非传统风格的Perspective Bar 147
9.3 在透视图中加入视图 148
9.3.1 新建视图插件项目 148
9.3.2 在透视图中加入视图 150
9.4 在透视图中加入多个视图 153
9.4.1 视图的布局 153
9.4.2 视图间交互 154
9.5 小结与进一步学习 155
第10章 集成Web应用 156
10.1 集成原理 157
10.2 创建浏览器封装类 157
10.2.1 浏览器初始化 158
10.2.2 创建ToolBar和ToolItem 159
10.2.3 创建ProgressBar 160
10.3 在视图中加入浏览器 161
10.4 RCP平台和其他应用与Web应用的交互 165
10.4.1 设置和取得浏览器URL 166
10.4.2 访问浏览器内容 166
10.5 小结与进一步学习 169
第11章 集成Swing/AWT应用 170
11.1 集成技术基础 171
11.2 在RCP应用的视图中加入Swing程序UI界面 172
11.2.1 创建插件项目 172
11.2.2 导入Swing程序代码包 173
11.2.3 在View中加入Swing面板 174
11.3 SWT与Swing组件之间的交互 177
11.4 统一界面外观 180
11.5 小结与进一步学习 181
第12章 集成.NET应用 182
12.1 集成技术基础 183
12.2 注册COM组件 183
12.3 创建插件项目 185
12.3.1 创建视图 185
12.3.2 创建画布(Canvas)类 187
12.3.3 将画布加入到视图中 190
12.4 用JNI连接Java与C 191
12.5 .NET应用与RCP平台和其他应用插件的交互 197
12.6 小结及进一步学习 200
第13章 一个图形构件工具 201
13.1 需求和设计目标 202
13.1.1 机场机位靠港计划图图形化显示与操作 202
13.1.2 设计目标 204
13.2 设计思想和程序框架 204
13.2.1 设计思想 205
13.2.2 结构框架 205
13.3 组件对象描述 206
13.3.1 详细类图 206
13.3.2 生成组件类 206
13.3.3 基本图形类 207
13.4 具体实现 208
13.4.1 导入com.ibm.pictool项目 208
13.4.2 实现基本的图形元素 209
13.4.3 实现图形构件工具的展现 210
13.4.4 使用图形构件工具实例 212
13.5 小结及进一步学习 214
第14章 Eclipse RCP应用的自动更新 215
14.1 Eclipse RCP手动更新和自动更新 216
14.1.1 Eclipse RCP手动更新 216
14.1.2 Eclipse RCP自动更新 216
14.1.3 自动更新的设计原理 216
14.2 自动更新RCP应用的实现 217
14.2.1 Eclipse更新API介绍 218
14.2.2 具体实现 219
14.3 小结及进一步学习 226
第15章 后端数据集成 227
15.1 本地数据集成原理 228
15.2 实例 228
15.2.1 创建插件项目 229
15.2.2 加入数据库类文件包 229
15.2.3 实现UI界面 231
15.2.4 实现数据库操作 235
15.3 远程数据访问 239
15.4 小结与进一步学习 240
第三部分 企业级平台高级功能 242
第16章 企业复合应用平台IBM Lotus Expeditor 242
16.1 企业应用的现状及特点 243
16.1.1 什么是企业应用 243
16.1.2 企业应用的现状 243
16.1.3 企业应用的特点 244
16.2 企业对复合应用的需求 246
16.2.1 界面 247
16.2.2 架构 247
16.2.3 安全 248
16.2.4 管理 249
16.3 企业复合应用软件及Lotus Expeditor平台概况 250
16.3.1 企业复合应用软件及平台 250
16.3.2 Expeditor背景 250
16.3.3 Expeditor的功能 251
16.4 Lotus Expeditor的组成 254
16.4.1 桌面客户端 254
16.4.2 设备客户端 258
16.4.3 服务器 259
16.4.4 开发工具 262
16.5 Expeditor平台架构 265
16.5.1 交互服务 266
16.5.2 存取服务 268
16.5.3 平台服务 270
16.5.4 可管理客户端服务 270
16.6 Expeditor中的复合应用 271
16.6.1 客户端复合应用框架 271
16.6.2 Expeditor复合应用的中心化管理 273
16.7 小结及进一步学习 274
第17章 IBM Lotus Expeditor复合应用设计 275
17.1 复合应用中的基本概念 276
17.1.1 组件 276
17.1.2 组件通讯及Property Broker 277
17.1.3 WSDL文件 278
17.1.4 Expeditor组件布局 282
17.2 复合应用设计 282
17.2.1 复合应用设计的一般原则 282
17.2.2 Expeditor组件设计 284
17.3 小结及进一步学习 287
第18章 Expeditor复合应用的开发 288
18.1 概述 289
18.1.1 开发环境 289
18.1.2 安装Lotus Expeditor Toolkit 289
18.1.3 配置Lotus Expeditor Toolkit 291
18.1.4 安装运行Expeditor Toolkit自带的样例 293
18.2 Expeditor复合应用的开发 294
18.2.1 开发实例 294
18.2.2 消息动作及属性的定义 295
18.2.3 消息动作的实现 300
18.2.4 数据的发送 301
18.2.5 组件的线接(Wire) 302
18.3 小结及进一步学习 304
第19章 企业综合信息系统客户端平台Notes 8 306
19.1 Notes/Domino概述 307
19.1.1 历史演进 307
19.1.2 Notes的特性 308
19.2 Notes 8的新功能 309
19.2.1 丰富用户体验 309
19.2.2 可管理客户端 312
19.3 Notes 8对复合应用的支持 314
19.3.1 概述 314
19.3.2 Notes 8基础功能组件——邮件、日历和联系人 316
19.3.3 生产力工具作为复合应用的组件 317
19.3.4 Notes 8其他组件 319
19.4 小结及进一步学习 321
第20章 Lotus Notes 8复合应用的设计和开发 322
20.1 概述 323
20.1.1 Notes 8应用 323
20.1.2 Notes 8复合应用中基本概念 324
20.2 Notes 8组件设计 326
20.2.1 组件的分类 326
20.2.2 组件中的Notes设计元素 328
20.2.3 组件的几种模式 329
20.3 Notes 8开发环境 332
20.3.1 Domino Designer 8 332
20.3.2 复合应用编辑器 334
20.3.3 WSDL编辑器 337
20.4 Notes 8复合应用开发 339
20.4.1 构建Notes 8组件 340
20.4.2 构建Eclipse组件 343
20.4.3 如何在复合应用中使用LotusScript API 343
20.5 Notes 8复合应用实例 346
20.5.1 实例描述 346
20.5.2 创建个人文档数据库及文档 347
20.5.3 创建一个包含内嵌视窗的表单 348
20.5.4 创建一个帧结构集 348
20.5.5 创建一个WSDL文件用于描述组件间交互的输入/输出信息 349
20.5.6 在Notes组件中引入已经创建的WSDL文件 350
20.5.7 定义一个按钮用于发布属性 350
20.5.8 定义两个动作用于接受输入数据属性 351
20.5.9 创建一个复合应用 352
20.5.10 复合应用中增加组件 353
20.5.11 线接复合应用中的组件 354
20.5.12 运行并测试 355
20.6 小结及进一步学习 355