论文部分内容阅读
近几年面向服务计算(SOC)的出现为分布式计算和电子商务提供了有效的解决方案,因此受到了很多企业的关注。服务是异构的、自治的、可计算的,尽管它们可能基于不同的平台或者属于不同的组织和公司,但它们可以通过一些合适的服务描述语言,根据特定的协议发布并被使用者发现,再利用一些方法将其组合在一起,形成一个更具功能性更有健壮性的大型服务,以满足用户越来越大的需求。Web服务组合技术简单来说就是一个广泛传播的实例化的SOC技术,它可以跨过公司、跨越不同平台将各个单个的服务利用起来,形成一个用户需要的服务模型。Web服务是分布式的,它们都是基于XML开放标准,因此保证了在不同平台上也能够相互协作,并能够动态的连接形成一个特定的模型来解决一些商业需求。这种将单个的Web服务进行组合、协调来协同形成一个大型的服务模型就是Web服务组合技术。发展到目前已经有很多Web服务组合技术,像是BPEL,OWL-S等等,有优点也有不足,本文提供一种基于程序切片和Web构件的技术,增加了服务组合的重用性和功能性,并利用WordNet对服务组合进行的语义上的比较,使得服务更加具体,更人性化,更加符合用户的需求。在服务组合时,先将原来的服务进行分解,这部分是利用程序切片技术来完成。程序切片技术是基于Haskell语言的,利用这种技术可以将原来程序进行分解并形成依赖图,通过这种方式我们可以根据用户的需求仅将用户所需的那部分程序单独抽取出来,形成一个更小但服务,但这种服务也能够同样完成原服务对用户的需求,因此更加细化,更加具有针对性,然后我们将这些原子服务发布,并利用相应的接口和逻辑分开封装、组合。在组合的过程中,利用WordNet,对接口信息进行语义分析,计算相邻服务接口之间的相似度,这样就能够将那些字形虽不同但字义却相近的的接口信息进行分析并组合,提高了组合过程中的智能性,从而形成的服务也更具人性化,更贴合用户的实际需求。