BEA Systems、IBM、Iona Technologies、Oracle Corp、SAP AG、Sybase以及Xcalia S.A.把服务构件架构(Service Component Architecture SCA)和服务数据对象(Service Data ObjectsSDO)混合成了SOA编程模型。其中,服务构件模型用于创建能绑定到不同技术实现的中立的接口、实现和引用。而服务数据对象则用于访问位于多个位置多种格式的数据。
虽然这种新的简称可能会让已经充满术语的市场感觉不舒服,但它提供了用来构建遵循预定架构模式的Web服务的一套工具。
BEA 负责架构和标准的副总裁Edward Cobb说:“服务基础设施是为广泛采用SOA而设计的新型软件,它需要一种技术、标准、处理和协作的丰富的生态系统才能实现。这些新的规格说明书代表着在帮助企业达到目标上取得了重大进展。”
事实上,Cobb说明了为潜在用户如何架构SOA方面存在的混淆。他指出尽管有很多标准可以让开发人员构建服务但却没有如何构建它们的标准。
他说:“利用那些服务创建能力的编程工具至今还非常初级。”
SOA编程模型可被免费使用,它包括
实现SCA服务构件的Java语言规格说明书。
实现SCA服务构件的C++语言规格说明书。
描述了用于在客户端和服务器端之间数据交换的通用渲染方法的Java SDO规格说明书。
描述了用于在客户端和服务器端之间数据交换的通用渲染方法的C++ SDO规格说明书。
IBM负责软件标准的副总裁Karla Norsworthy认为JDO应该在6个月内提交为标准而SCA会花费至少1年时间来成为官方标准。她说,所有的Java元素都会提交到Java Community Process。
尽管这并不是为构建SOA而必须学习的作为一部分转移大规模协作文化的新事物,但是编程模型的支持者坚持认为它简化了开发和组装实际业务服务。
SDO通过一个单独的应用程序编程接口来访问多种数据源,例如关系数据库,XML页面和EJB容器。它通过类似的设计模式加入Eclipse集成开发环境框架,创建一个使分离的应用都能插入的集成点,这样它们就能相互联系起来工作。
SCA提供了一种自顶向下的开发过程。首先,一个SCA模型被创建,然后是业务对象。之后,定义服务接口,生成构件以及实现代码。
ZapThink的分析师Ron Schmelzer相信模型工作的细节比起谁使用它和它的内涵来,不是那么的重要。
他说:“这些公司一起定义通用服务和通用架构。在2004年,你可能对SOA有一点怀疑,但他们都是产业界最大的厂商”,他们走到一起来推动这件事,所以我们现在不必再怀疑了。
事实上,Schmelzer认为缓慢采用SOA的IT公司可能会从他们的提供商那里获得一些帮助,因为他们都是迅速转到这个方向的公司。
Norsworthy补充到,运行时工具也会在将来被加入到编程模型中,而Eclipse Foundation则计划启动一个SCA工具项目。