《SOA 快速指南 1 2 3》系列文章是笔者在近年来在 SOA 项目实施中的经验结晶。该系列文章以一个示例场景为背景, 总结了利用 IBM 的方法实施 SOA 的一般步骤,并详细阐述了每个实施步骤中使用的 IBM 的方法学、技术和产品。
以服务为中心的业务活动管理与监控是最近出现的一种热门的 IT 技术,它的目的在于帮助企业管理人员实时获悉企业运营状况,了解企业的战略实施进展。本文结合一个汽车贷款流程介绍了在 SOA 的环境下如何基于IBM的现有产品构造业务活动管理解决方案。希望通过本文的介绍,能够帮助读者理清业务流程管理所包含的基本概念,并了解构建解决方案所需要的基本步骤。
IBM中国软件开发实验室 SOA 设计中心是 IBM 全球四个 SOA 设计中心中最大的一个,成立一年多来,已经取得了可喜的成果。我们在全球范围内实施了多个 SOA 应用项目,为多个行业的客户提供了 SOA 解决方案。我们正在实施的 SOA 项目涵盖了很多的重要行业,包括零售业、航运业、电力、银行、保险等等。通过这些不断增长的成功案例,我们不仅深入地推广了 SOA 的理念,树立了 SOA 成功实施的范例,也为我们的队伍积累了经验,培养了人才。与此同时,我们还是 IBM 开发 SOA 的软件平台的主力军。这个新的平台基于模型驱动的思想,旨在最大化地重用软件资产,它为 SOA 项目的实施提供了一整套源自成功实践的方法论、设计范式和工具集。它的出现将极大地方便 SOA 系统架构师、设计人员、开发人员,使他们能够快速地开发 SOA 应用项目。
参与本系列文章撰写的主要技术人员包括:
金戈, IBM 中国软件开发实验室 IBM 中国SOA 设计中心客户服务经理, IBM 中国 SOA 设计中心架构师。多年软件设计和解决方案设计经验,精通软件工程、分布式中间件、Linux以及系统管理,并拥有丰富的Linux和SOA架构、设计、开发技术经验。联系方式:jinge@cn.ibm.com。
姚辉,IBM 中国软件开发实验室 IBM 中国SOA 设计中心高级工程师。具有多年的面向对象设计与开发经验,目前专注于SOA的相关理论与项目实践。对EA、SOA、BPM、EAI等领域有浓厚的兴趣。联系方式:yaohui@cn.ibm.com。
赵勇,IBM 中国软件开发实验室 IBM 中国SOA 设计中心工程师。具有多年的 J2EE 和 Web Service 开发经验,目前专注于 SOA 项目实践和相关的理论,工具的研究和开发。对ESB、SCA、BPEL、自动化测试和极限编程等技术有浓厚的兴趣。联系方式:zhaoyong@cn.ibm.com。
谭佳,IBM 中国软件开发实验室 IBM 中国SOA 设计中心工程师。拥有多个SOA项目实施经验,目前对于J2EE、SOA、EAI、BPM、Data Mining和语义网等相关技术有浓厚兴趣。联系方式:tanjia@cn.ibm.com。
金 戈, IBM软件部企业集成解决方案架构师, IBM 中国软件开发实验室 SOA设计中心 姚 辉 (yaohui@cn.ibm.com), IBM 中国SOA 设计中心高级工程师, IBM 中国软件开发实验室 赵 勇 (zhaoyong@cn.ibm.com), IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室 谭 佳, IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室
2006 年 12 月 26 日
《SOA 采纳步骤和价值分析》是本系列文章的第一部分。本文前半部分首先概览了实施 SOA 的简单步骤,然后介绍了贯穿本系列文章的示例场景。在文章的后半部分着重介绍了IBM SOA 成熟度模型和SOA评估框架,并分析了示例场景中采纳 SOA 的步骤和价值。
以服务为中心的业务活动管理与监控是最近出现的一种热门的IT技术,它的目的在于帮助企业管理人员实时获悉企业运营状况,了解企业的战略实施进展。 《SOA 快速指南 1 2 3》系列文章是笔者近年来在 SOA 项目实施中的经验结晶。该系列文章结合一个汽车贷款流程, 介绍了在 SOA 的环境下如何基于 IBM 的现有产品构造业务活动管理解决方案,详细阐述了每个实施步骤中使用的 IBM 的方法学、技术和产品。希望通过本文的介绍,能够帮助读者理清业务流程管理所包含的基本概念,并了解构建解决方案所需要的基本步骤。
金 戈, IBM软件部企业集成解决方案架构师, IBM 中国软件开发实验室 SOA设计中心 姚 辉 (yaohui@cn.ibm.com), IBM 中国SOA 设计中心高级工程师, IBM 中国软件开发实验室 赵 勇 (zhaoyong@cn.ibm.com), IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室 谭 佳, IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室
2006 年 12 月 26 日
《服务建模》是本系列文章的第二部分。本系列的第一部分概览了实施 SOA 的简要步骤,并针对示例场景分析了采纳 SOA 的步骤和价值。本文首先介绍了服务建模的方法学;对示例场景进行流程建模,为服务建模做准备;在第一部分文章对现有业务和 IT 环境分析的基础上,结合价值分析和流程建模的结果,设计了目标的业务和 IT 场景;基于业务组件模型、流程模型以及业务目标进行服务建模的前两个步骤——服务发现和服务规约。
以服务为中心的业务活动管理与监控是最近出现的一种热门的IT技术,它的目的在于帮助企业管理人员实时获悉企业运营状况,了解企业的战略实施进展。 《SOA 快速指南 1 2 3》系列文章是笔者近年来在 SOA 项目实施中的经验结晶。该系列文章结合一个汽车贷款流程, 介绍了在 SOA 的环境下如何基于 IBM 的现有产品构造业务活动管理解决方案,详细阐述了每个实施步骤中使用的 IBM 的方法学、技术和产品。希望通过本文的介绍,能够帮助读者理清业务流程管理所包含的基本概念,并了解构建解决方案所需要的基本步骤。
以服务为中心的业务活动管理与监控是最近出现的一种热门的IT技术,它的目的在于帮助企业管理人员实时获悉企业运营状况,了解企业的战略实施进展。 《SOA 快速指南 1 2 3》系列文章是笔者近年来在 SOA 项目实施中的经验结晶。该系列文章结合一个汽车贷款流程, 介绍了在 SOA 的环境下如何基于 IBM 的现有产品构造业务活动管理解决方案,详细阐述了每个实施步骤中使用的 IBM 的方法学、技术和产品。希望通过本文的介绍,能够帮助读者理清业务流程管理所包含的基本概念,并了解构建解决方案所需要的基本步骤。
金 戈, IBM软件部企业集成解决方案架构师, IBM 中国软件开发实验室 SOA设计中心 姚 辉 (yaohui@cn.ibm.com), IBM 中国SOA 设计中心高级工程师, IBM 中国软件开发实验室 赵 勇 (zhaoyong@cn.ibm.com), IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室 谭 佳, IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室
以服务为中心的业务活动管理与监控是最近出现的一种热门的IT技术,它的目的在于帮助企业管理人员实时获悉企业运营状况,了解企业的战略实施进展。 《SOA 快速指南 1 2 3》系列文章是笔者近年来在 SOA 项目实施中的经验结晶。该系列文章结合一个汽车贷款流程, 介绍了在 SOA 的环境下如何基于 IBM 的现有产品构造业务活动管理解决方案,详细阐述了每个实施步骤中使用的 IBM 的方法学、技术和产品。希望通过本文的介绍,能够帮助读者理清业务流程管理所包含的基本概念,并了解构建解决方案所需要的基本步骤。
金 戈, IBM软件部企业集成解决方案架构师, IBM 中国软件开发实验室 SOA设计中心 姚 辉 (yaohui@cn.ibm.com), IBM 中国SOA 设计中心高级工程师, IBM 中国软件开发实验室 赵 勇 (zhaoyong@cn.ibm.com), IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室 谭 佳, IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室
2007 年 2 月 06 日
《逐步实现服务和持续集成》是本系列文章的第 5 部分。本文承接上篇文章定义的服务模块和服务集成模型,首先简要介绍了服务模块的逐步实现,对各种服务模块进行分析;然后阐述了如何根据模拟服务进行迭代的开发和集成,其中涉及到服务组件的测试,模拟测试客户端,以及模拟服务的实现;最后强调了SOA实施中的持续集成和持续测试。我们希望通过本文使读者对 SOA 项目的开发和测试形成基础的认识,对于一些重要的方法和特殊的手段能够有所了解。
以服务为中心的业务活动管理与监控是最近出现的一种热门的IT技术,它的目的在于帮助企业管理人员实时获悉企业运营状况,了解企业的战略实施进展。 《SOA 快速指南 1 2 3》系列文章是笔者近年来在 SOA 项目实施中的经验结晶。该系列文章结合一个汽车贷款流程, 介绍了在 SOA 的环境下如何基于 IBM 的现有产品构造业务活动管理解决方案,详细阐述了每个实施步骤中使用的 IBM 的方法学、技术和产品。希望通过本文的介绍,能够帮助读者理清业务流程管理所包含的基本概念,并了解构建解决方案所需要的基本步骤。
关于具体的BPEL开发,这里不打算详细介绍。在WPS6和WID中,流程的实现更为简单,只需要简单的拖拽和设置,你就能完成一个业务流程的建模。当然IBM也提供了更为复杂和专业的WBM(WebSphere Business Modeler),用于完整的业务流程建模,使用WBM导出的模型文件,WID可以直接射程业务流程组件。
当这部分工作完成后,看起来这个就是一个完整的流程,包含了"预定"的业务功能,我们部署在自己的测试环境中,使用BPC Explorer 可以进行测试,观察流程在测试数据的运行情况下是否符合我们的预期,人工活动的交互是否满足等。此时的测试还是比较简单的单元测试,主要测试流程的完整性,流程调用和一些简单的业务逻辑。
相比导出的绑定形式 (SCA,JMS,Web Service ),WID中SCA的导入绑定形式相比增加了无状态session bean的形式。之所以要增加这个绑定,是为了更好的集成现有的J2EE应用,但是导出则没有这种方式,则是为了向上提供一致性。前面我们也提到,一般的服务组件如果是Java实现,通常的接口是SDO作为数据交换的格式,而如果你的组件import了一个SessionBean,你会发现你的服务组件的接口返回的仍然是该SessionBean的Java对象,此时Java对象和SDO之间的转化就不可避免了,我们在上一篇文章中已经探讨过这个问题。
使用ITC 首先我们可以使用WID的Integration Test Client,从右键菜单"Test Component"进入该测试界面,ITC会自动生成界面供你选择希望测试的接口的方法,并可以输入参数,开始测试。ITC会将测试结果和测试过程中捕获的异常以可视化的方式展现出来。ITC适用于所有的SCA模块,包括流程模块。在ITC中如果你不希望每次都要输入测试参数,你可以选择将测试参数保存进一个数据池,并将该次测试保存为配置文件,就可以自动加载了。
public ConfirmTaxAmount locateService_ConfirmTaxAmountPartner() {
return (ConfirmTaxAmount) ServiceManager.INSTANCE
.locateService("ConfirmTaxAmountPartner");
}
/**
* Method generated to support implemention of operation
"confirmTaxAmount" defined for WSDL port type
* named "interface.ConfirmTaxAmount".
*
* The presence of commonj.sdo.DataObject as the return type and/
or as a parameter
* type conveys that its a complex type. Please refer to the WSDL
Definition for more information
* on the type of input, output and fault(s).
*/
public DataObject confirmTaxAmount(DataObject input1) {
//TODO Needs to be implemented.
return
locateService_ConfirmTaxAmountPartner().confirmTaxAmount(input1);
}
金 戈, IBM软件部企业集成解决方案架构师, IBM 中国软件开发实验室 SOA设计中心 姚 辉 (yaohui@cn.ibm.com), IBM 中国SOA 设计中心高级工程师, IBM 中国软件开发实验室 赵 勇 (zhaoyong@cn.ibm.com), IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室 谭 佳, IBM 中国SOA 设计中心工程师, IBM 中国软件开发实验室
以服务为中心的业务活动管理与监控是最近出现的一种热门的IT技术,它的目的在于帮助企业管理人员实时获悉企业运营状况,了解企业的战略实施进展。 《SOA 快速指南 1 2 3》系列文章是笔者近年来在 SOA 项目实施中的经验结晶。该系列文章结合一个汽车贷款流程, 介绍了在 SOA 的环境下如何基于 IBM 的现有产品构造业务活动管理解决方案,详细阐述了每个实施步骤中使用的 IBM 的方法学、技术和产品。希望通过本文的介绍,能够帮助读者理清业务流程管理所包含的基本概念,并了解构建解决方案所需要的基本步骤。