技术开发 频道

从SCA看构件图形化软件组装的趋势

【IT168 技术文章】

    服务组件模型(SCA)中提出了一些新的概念,比如服务组件,模块,共享库,导入和导出。导出导出都是为了复用已有软件资产。 

    一、SCA的概念

    SCA(Service Component Architecture)面向服务的组件模型,源于IBM 的WSIF (Web Service Invocation Framework,具体请参考http://ws.apache.org/wsif/),SCA的目的是使用户在构建企业应用时有一个不再直接面对具体的技术细节的层次,而是通过服务组件的方式来构建应用(这一点与EOS的思路一致)。

    服务组件模型(SCA)中提出了一些新的概念,比如服务组件,模块,共享库,导入和导出。

    服务组件

    包括对外提供的接口,所依赖的接口。服务组件的接口类型可以是Java类型,也可以是WSDL定义。例如一个“客户服务”组件,可能包括“获得客户基本信息”、“获得客户帐单”、“新建客户”等接口。这些接口的实现可能是WSDL描述的,也可能是用Java类实现的。服务组件的实现对外是透明的,调用者无需知道该服务是如何实现,以及采用什么技术实现的。

    模块(Module)

    模块是由多个服务组件以及服务之间的调用关系组成的,每个模块相当于J2EE应用中的一个项目。通过将不同的“服务组件”用连线组装起来,就成为一个模块。模块是最小的部署单元。

    共享库(Library)

    如果多个Module需要共享一些资源,则可使用共享库。但是共享库不包括服务组件(即不包括业务逻辑),只包括数据定义、接口定义、数据映射等。

    导入(Import)

    目的是为了调用其它组件(包括SCA组件、JMS、WS等)

    导出(Export)

    与导入相反,导出是为了让其它系统可以调用SCA组件,调用方式同样可以是SCA组件、JMS、WS等。

    目前,SCA模型已经得到了业界几个主要软件厂商的支持。IBM、Oracle、BEA、SAP、Siebel、Sybase、IONA等厂商联合发布了SCA规范的0.9版本。具体规范可参见IBM DW的网址:http://www.ibm.com/developerworks/library/specification/ws-sca/

    关于服务组件模型(SCA)更详细的概念参见IBM DW网站(http://www-128.ibm.com/developerworks/cn/webservices/ws-sca/)的介绍。

    二、 IBM对SCA的产品支持

    SCA服务组件模型的提出,解决了EJB、POJO等组件模型与实现语言相关的问题,同时也将SOA的抽象概念落到了实处。也为集成软件项目的开发的图形化组装方式提供了基础。

    目前IBM对SCA的产品支持为2005年10月发布的WPS (Websphere Process Server)6.0 ,并为之提供了可视化的集成开发工具WID(Websphere Integration Developer)。使用WID开发集成项目,只要有一定基础编程经验或知识,就可以拖拉的方式,进行图形化的组装,不需要了解太多的J2EE技术细节。

0
相关文章