论文部分内容阅读
面向服务的体系结构SOA (service-oriented architecture)是一个组件模型,其主要的思想是通过集成跨平台跨语言的软件资源完成复杂的分布式计算。以与平台无关的半结构化XML语言为基础,定义了服务的接口描述语言WSDL,服务之间通信协议SOAP。这些都是独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互和协作。在SOA的应用中,定义并封装好了可复用软件组件一Web服务之后。最重要的工作是如何快速地集成和组合这些Web服务构造新的业务流程。目前最常用的Web服务组合语言是基于XML的BPEL语言。业务开发人员能够手写或是选择基于BPEL的可视化业务开发工具来编写BPEL代码来组合服务,虽然这些可视化的开发平台在一定程度上加快了构造流程的效率。可是这些平台的抽象模型都是基于BPEL语言元素和属性的。业务开发人员要利用这些工具开发流程,不仅要熟悉特定领域的业务知识和需求,还必须要知道BPEL的语法细节,并具备一定的编程能力,所以限制了开发效率的进一步提高。相比于一般的基于BPEL的可视化开发平台,本文基于SOA的服务生成平台的抽象模型直接面向特定领域的Web服务,并通过友好的可视化界面向业务开发员显示服务库里相关的服务组件。平台能够根据用户拖拉的服务对应的图形组件自动的生成调用服务相关的BPEL元素和相应的属性值,从而对业务开发员屏蔽掉BPEL的语法细节,能够使用户直接面向具体的业务需求构造业务流程,使得业务开发效率得到进一步提高。本文的主要工作有:基于业务流程上下文的服务查询和推荐方法以及面向服务的业务流程构造技术和方法。