SOA原理·方法·实践

2007年电子工业出版社出版的图书
《SOA原理·方法·实践》是2007年电子工业出版社出版的图书，作者是毛新生。
编辑推荐
IBM资深架构师 毛新生主编
SOA技术巅峰之作
内容简介
本书并不是关于Web服务的又一本开发手册，抑或是开发技术的宝典之类的读物。本书的作者来自于IBM软件开发中心的SOA技术中心，作为最早的一批从事SOA相关产品和客户项目开发的软件技术人员，见证了SOA从诞生到发展壮大的全过程。而本书的目的在于将作者在项目过程中的经验介绍给读者，通过分析SOA产生的根源，以及SOA对业务模式和开发模式带来的变革，帮助读者理解什么是SOA，以及如何科学的实施SOA。
本书的内容分为三部分，将从作者的实际经验出发，分析SOA理念产生的合理性，然后分析SOA的相关开发技术，最后结合一个实例片断，讲述一个完整的SOA项目是如何设计完成的。
本书针对的读者是有一定经验的开发人员，例如，信息系统架构师，企业决策人员，对Web开发感兴趣的高年级计算机或相关领域的学生，以及任何希望了解SOA的广大技术人员。
作者简介
毛新生，现为IBM中国开发中心资深技术专员（STSM）。1997从北京大学计算机系毕业以后，他先后在北京大学和IBM研究院从事研发工作，以研究人员，开发经理，或者架构师的身份在以下领域工作过：信息检索，语音技术及其中间件，门户，普及计算，Linux，网格计算，Web Service，SOA和Web 2.0。欢迎通过电子邮件maoxs@cn.ibm.com或者博客http://mxs.blog.ccidnet.com/跟他讨论SOA与Web 2.0的问题。
金戈，硕士，2001年毕业于中科院软件研究所。现任IBM中国软件开发实验室全球SOA解决方案中心技术经理和架构师。从2004年起一直耕耘在IBMSOA客户服务第一线，曾经领导若干SOA的咨询和实施项目。
易立，硕士，2001年毕业于北京大学计算机系。现任IBM中国软件开发实验室软件工程师。曾经参与多个国外SOA的咨询和实施项目。
黄若波，硕士，2000年毕业于中科院软件研究所。现任IBM中国软件开发实验室全球SOA设计中心技术经理。参与多个SOA项目的设计和实施。
李珉，硕士，1999年毕业于北京工业大学。现任IBM中国软件开发实验室新技术孵化部门技术经理。参与多个SOA相关项目的设计和开发工作。
是IBM SOA design Center的SOA架构师，对网络安全、J2EE、Eclipse、SOA等有深入研究。曾经作为架构师参与实施过多个大型的SOA项目，如Pepboys，Insurance Australia Group和URC。
目录
第一部分 SOA理论篇
第1章 SOA概述 1
1.1 SOA的基本概念 4
1.2 计算环境的演变和面向服务的计算环境 7
1.2.1 计算环境 7
1.2.2 计算环境的演变历程 8
1.2.3 面向服务的计算环境 9
1.2.4 面向服务计算环境的现状 11
1.2.5 面向服务的编程模型：服务组件架构（SCA）和
1.2.5 服务数据对象（SDO） 14
1.3 软件体系结构的演变和面向服务的设计原则 14
1.4 软件工程的演变和面向服务体系结构 17
1.5 SOA技术概览 19
1.5.1 SOA的主要组件 19
1.5.2 SOA主要技术和标准 19
1.5.3 SOA技术在工业界的支持现状 21
1.6 本章小结 35
第2章 SOA与企业IT战略 37
2.1 当今IT战略所面临的主要挑战和任务 38
2.2 开始你的SOA旅程 41
2.3 本章小结 43
第3章 SOA设计原则 45
3.1 业务和IT对齐 47
3.2 保持灵活性 49
3.3 松散耦合 50
3.4 本章小结 54
第4章 SOA方法学 55
4.1 SOA方法学和其他方法学的比较 56
4.2 面向服务的分析和设计概述 59
4.2.1 服务发现 61
4.2.2 服务规约 63
4.2.3 服务实现 64
4.3 本章小结 65
第5章 SOA参考架构 67
5.1 SOA概念层次 68
5.2 SOA参考架构 70
5.2.1 连接服务：企业服务总线 72
5.2.2 业务逻辑服务 73
5.2.3 控制服务 75
5.2.4 开发支持 77
5.2.5 业务创新和优化 78
5.2.6 管理支持 79
5.3 本章小结 80
第6章 SOA设计模式 81
6.1 服务注册表（service registry）模式 82
6.2 企业服务总线（Enterprise Service Bus, ESB）模式 84
6.3 服务编排（choreography）模式 89
6.4 本章小结 91
第二部分 SOA技术基础篇
第7章 Web服务基础 95
7.1 Web服务标准 96
7.1.1 从XML到Web服务98
7.1.2 Web服务的特性 99
7.1.3 Web服务简史 101
7.1.4 Web服务体系结构 102
7.1.5 标准组织与Web服务 105
7.1.6 Web服务规范简介 108
7.2SOAP协议119
7.2.1 SOAP消息 120
7.2.2 SOAP消息交换模式 125
7.2.3 传输协议独立性 125
7.2.4 SOAP编码 128
7.3 WSDL规范 129
7.3.1 WSDL概念模型 130
7.3.2 WSDL文档格式 132
7.3.3 WSDL SOAP绑定 137
7.4 UDDI协议 141
7.4.1 UDDI信息模型 142
7.4.2 UDDI API 146
7.4.3 UDDI与WSDL 148
7.4.4 其他服务发现机制 151
7.5 本章小结 153
第8章 Web服务实现方式 155
8.1 Web服务实现平台的发展历程 156
8.2 Java SOAP服务引擎的工作原理 158
8.2.1 Web服务的客户端 159
8.2.2 Web服务的服务器端 164
8.3 开发Web服务的方式 167
8.4 不同Web服务引擎的工作原理 169
8.4.1 SOAP 2.3引擎的Web服务的运行时环境 169
8.4.2 IBM的SOAP引擎/AXIS 173
8.5 Java Web服务的主流编程模式JAX-RPC 176
8.6 IBM WAS6的JAX-RPC Web服务开发过程 180
8.6.1 IBM WAS对Web服务的支持 181
8.6.2 从已有的业务逻辑EJB出发构建Web服务 182
8.7 特殊类型的Web服务实现方式 201
8.7.1 基于EJB绑定的Web服务 202
8.7.2 直接绑定数据库操作的Web服务 210
8.8 Web服务的互操作——WS-I协议 217
8.8.1 Web服务的类型与编码模式 217
8.8.2 WS-I概述（基于WS-I Basic Profile） 220
8.9 本章小结 225
第9章 Web服务的事务，安全和可靠性 227
9.1 Web服务的事务处理 228
9.1.1 Web服务事务模型与规范 228
9.1.2 IBM WebSphere中实现事务处理的方式 237
9.2 Web服务的安全 238
9.2.1 Web安全的基本概念 238
9.2.2 Web服务的安全协议介绍 240
9.2.3 IBM WebSphere中实现Web服务安全性的方式 249
9.3 本章小结 263
第10章 业务流程简述 265
10.1 BPEL简史 267
10.2 BPEL的基本特性 268
10.3 BPEL模型 269
10.4 BPEL活动 273
10.5 BPEL异常管理 278
10.6 BPEL事务与补偿机制 279
10.7 BPEL开发 281
10.8 本章小结 283
第11章 SOA程序设计模型 285
11.1 SCA编程模型 287
11.1.1 SCA起源 288
11.1.2 SCA的规范现状 288
11.1.3 SCA的构成 290
11.1.4 SCA客户端开发模式 293
11.2 SDO 294
11.2.1 SDO的结构 295
11.2.2 SDO的编程模式 296
11.3 本章小结 297
第12章 SOA体系结构的高级话题 299
12.1 WS-Resource Framework协议 300
12.2 WS-Notification协议 306
12.3 WS-Reliability Message协议 314
12.4 本章小结 323
第三部分 实例篇
第13章 SOA体系结构的实例讲解 327
13.1 选择什么样的SOA解决方案及具体的业务 329
13.2 业务流程分析 330
13.3 建立服务模型 334
13.3.1 自顶向下分解业务进行分析 334
13.3.2 通过业务目标来分析 337
13.3.3 自底向上分析 339
13.3.4 决定服务是否暴露 340
13.3.5 定义服务接口 342
13.4 建立业务流程 348
13.4.1 建立业务对象 348
13.4.2 建立服务接口 350
13.4.3 建立业务流程 351
13.4.4 通过ESB来连接不同的服务 354
13.5 本章小结 358
参考文献 359