Web服务组合研究领域的一个重要问题是如何形式化描述Web服务组合,验证服务组合的正确性,Web服务组合的形式化模型可以用来检查和验证Web服务组合以保证组合的正确性.文章使用模型检查工具SPIN对目前普遍使用的Web服务组合规范BPEL4WS(Business Process Execution Language for Web Services,Web服务业务流程执行语言)模型进行了验证,给出了BPEL4WS语法到Promela形式化模型的转换方法,最后通过一个实例对BPEL4WS表示的服务组合模型的安全性、活性和有界性等特性进行了验证分析,从而给出了基于SPIN的BPEL4WS表示的Web服务组合模型验证的方法.
IBM、Microsoft和BEA于2002年联合提出业务流程执行语言(Business Process Execution Language for Web Services,BPEL4WS或BPEL,后更新为WSBPEL)是用于在不改变Web Service正常运行的情况下,将多个Web Service集成起来创造出新的业务模型和业务流程。但是开发BPEL应用是一项繁琐而枯燥的任务,业务流程建模和BPEL开发之间并没有建立直接的关系。在对UML和BPEL深入学习的基础上,提出通过构造型和键值方法扩展活动图,并采用扩展模型对业务流程建模,最后定义了UML模型到BPEL的映射。利用图形化方式开发BPEL业务流程具有开发速度快和易维护等优点。
针对Web服务的组合问题,给出了一种基于BPEL4WS(Business Process Execution Language for Web Services)语言的语义Web服务动态组合框架。该框架把一些具有相似性的商业流程定义成一个抽象流程模板APT,每个活动节点所需服务的语义信息用PPC模型描述,并引入一个OWL-S/UDDI转换器使Web服务在UDDI上的注册信息与该服务的语义信息之间进行转换,实现UDDI注册信息与语义信息的关联,以便于语义匹配及服务绑定。通过语义匹配组件匹配选择合适的Web服务,并通过APT绑定组件把所选Web服务的相关信息动态绑定到APT模板中,从而实现Web服务的动态组合。该框架增强了Web服务组合的灵活性和动态性。