用户名: 密码: 验证码:
基于Petri网的Web服务组合相关技术研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
Web服务作为面向服务体系结构(Service Oriented Architecture,SOA)的主要实现方式,得到了工业界和学术界的普遍重视。它的出现使得“软件就是服务”的设计理念逐渐转变成一种切实可行的系统构架模式。采用Web服务组合技术能够快速灵活的构建具有新功能的Web服务。目前,组合Web服务的形式化验证以及自动Web服务组合是Web服务研究领域两个重要的问题。本文以Petri网为理论基础,针对这两方面问题进行深入的研究,具体研究成果如下:
     1.改进了一种着色Petri网的模型检测方法。在着色Petri网原有的基于CTL的局部模型检测算法基础上,给出了获取模型检测证据/反例的算法,并在着色Petri网模型检测工具—CPN Tools中使用ML(Metal Language)语言实现这些算法。该方法不仅可以验证系统是否存在逻辑错误,还能告诉用户发生错误的原因,为组合Web服务的验证提供了技术上的保障。实验表明对着色Petri网的模型检测工具的扩展是正确、有效的。
     2.提出一种基于层次着色Petri网的组合Web服务验证方法。分别针对编制/编排方式构造的组合Web服务进行建模、仿真以及验证。首先,给出BPEL规范和WSCI规范到层次着色Petri网的映射规则以及建模方法。然后使用着色Petri网的模型检测技术分析、验证具体的组合Web服务,发现其中潜在的逻辑错误。实验表明使用层次着色Petri网对Web服务组合验证的方法是切实、可靠、有效的。
     3.提出了一种新的基于代数的模糊Petri网逆向推理算法。该算法充分利用了Petri网的数学理论基础和描述并发系统的能力,其数据结构简单,便于计算机编程处理。此外,采用逆向推理策略将系统转化为一个只与问题有关的简单的系统,减小空间复杂度。实践证明该方法是可行的。为评估动态组合Web服务的语义匹配度提供技术上的支持。
     4.提出了一种基于Petri网模型的自动Web服务组合方法。根据用户需求使用Petri网描述原子服务之间的数据依赖关系;从中选择出各种可能的组合方案;利用模糊Petri网和随机Petri网分别评价组合服务的语义匹配程度和系统性能,从而在保证组合成功率的基础上选择出最佳组合方案;并给出算法将Petri网模型描述的最佳组合方案转换为可执行的BPEL抽象流程模板。与已有方法相比较,该方法充分利用Petri网善于描述分析评估系统的优点,方便的获取最佳组合Web服务方案。
As the corner stone technology of Service Oriented Architecture (SOA), Web service has widely been adopted in academic and industry communities. The popularity of Web service technology also turned the Software-as-a-Service (SaaS) design theory into a practical system architecture paradigm. With Web services, new functions can be easily built by composing existing Web services. Currently, automatic Web services composition and verification are key challenges in the Web services research. In this paper, we investigate the two aspects based on Petri-net theories.
     1. An extended model checking method based on colored Petri nets is proposed. Based on local model checking algorithm of CTL (Computational Tree Logic) in colored Petri nets, an algorithm for searching witness or counterexample of the model checking result is investigated. The algorithm is implemented using ML (Metal Language) language, and fluently integrated in the colored Petri net model checking tool named CPN-tools. Then, the extended CPN model checking tool can be used in the verification of Web services composition. The method can not only check the logical errors in some systems, but also tell users the reasons for the errors. This extension provides the technical guarantees for the Web services composition validation based on the colored Petri nets. Our experiments demonstrate that the extension is correct and effective.
     2. This paper proposes a colored Petri net based approach for the modeling, simulation and verification of the Web service compositions based on orchestrations or choreographies. First, the mapping rules from BPEL and WSCI to colored Petri nets are introduced; then CTL based colored Petri nets model checking approach is applied to verify Web service compositions for error detection. Our experiments demonstrate the Web service verification based on colored Petri nets is more practical, reliable and effective.
     3. This paper proposes a new backward reasoning algorithm based on algebra. The algorithm fully takes advantage of mathematics foundation of Petri nets, is of parallel computing capability and simpler data structure. The method is much easier for implementation. In addition, based on the backward reasoning method, a complex system can be transformed into a simpler system closely related to the current problems. Thus, the space complexity of the algorithm can be reduced. The feasibility was testified through practice. This algorithm provides the technical support for evaluating the semantic matchmaking degree of dynamic Web services composition.
     4. An automatic Web services composition based on Petri nets is presented. With this method, we first obtain a Petri net model that represents the data dependent relationship between the service composition according to consumers' demands and the current available services. Then, plans of the service composition are obtained. Further, Fuzzy Petri net (FPN) is utilized to evaluate the semantic matching degree of each kind of combination plan, and the generalized stochastic Petri net (GSPN) is employed to analyze the performance of the plan with better semantic matching degree. Then, a better performance composition plans can be obtained on the basis of guaranteeing high success ratio of composition. Finally, one can pick out the better plan and transform it into an operational code framework in BPEL. Compared with other approaches available, our method takes full advantages of Petri nets, such as easy description, analysis and evaluation of the systems, to obtain a better plan of Web service compositions.
引文
[1] M.L. Liu著,顾铁成,王亚丽,叶保留译.分布式计算原理与应用.北京:清华大学出版社. 2004.
    [2]柴晓路. Web服务架构与开放互操作技术.北京:清华大学出版社. 2002.
    [3] B. Benatallah, M. Dumas and M.C. Fauvet, et al. Towards Patterns of Web Services Composition. Patterns and Skeletons for Parallel and Distributed Computing. Springer Verlag, UK, 2002(11), 265-296.
    [4]李景霞,侯紫峰. Web服务组合综述.计算机应用研究. 2005(12). 4-7.
    [5] IBM Software group. Web Services Flow Language (WSFL). http://www-4.ibm.com/software/solutions/webservices/pdf/WSFL.pdf. 2001.
    [6] Microsoft Software group. XLANG/s Language. http://msdn.microsoft.com/en-us/library/aa577463.aspx. 2001.
    [7] BEA Systems, IBM and Microsoft, et al. Business Process Execution Language for Web Services (BPEL), Version 1.1. http://www-128.ibm.com/developer works/library/specification/ws-bpel/.
    [8] A. Arkin, S. Askayr and S. Fordin, et al. Web Service Choreography Interface (WSCI) 1.0. http://www.w3.org/TR/wsci/. 2002.
    [9] A. Banerji, C. Bartolini and D. Beringer, et al. Web Services ConversationLanguage (WSCL)1.0. http://www.w3.org/TR/wscl10/. 2002.
    [10] A. ARKNI. Business Proeess Modeling Language (BPML). http://www.ebpml.org/bpml.htm. 2002.
    [11] S. Nakajima. Model-Checking Behavioral Specifications of BPEL Applications. Electronic Notes in Theoretical Computer Science. 2006, 151(2). 89-105.
    [12] C.T. Karamanolis, D. Giannakopoulou and J. Magee, et al. Model checking of workflow schemas. Proceedings of the 4th International Enterprise Distributed Object Computing Conference. Japan, 2000. 170-179.
    [13] H. Foster, S. Uchitel and H. Magee, et al. Compatibility verification for Web service choreography. Proceedings of the 4th International Web Services Conference. London, UK, 2004.
    [14] J. Koehler, G. Tirenni and S. Kumaran. From business process model to consistent implementation: A case for formal verification methods. Proceedings of the 6th International Enterprise Distributed Object Computing Conference.2002. 96-106.
    [15] X. Fu, T. Bultan and J. Su. Analysis of interacting BPEL Web services. Proceedings of the 13th international conference on World Wide Web. USA, 2004.621-630.
    [16] X. Fu, T. Bultan, J. Su. Model checking XML manipulating software. Proceedings of the International Symposium on Software Testing and Analysis. USA: ACM, 2004: 252-262.
    [17] T. Bultan, X. Fu and R. Hull, et al. Conversation specification: a new approach to design and analysis of e-service composition. Proceedings of the 12th international conference on World Wide Web. 2003. 403-410.
    [18] R. Milner. A Calculus of Communication Systems, Lecture Notes in Computer Science. 92.1980.
    [19] C.A. Hoare. Communicating Sequential Processes. Communications of the ACM, 1978,21(8). 666-677.
    [20] R. Milner. Communicating and Mobile Systems: the Pi-Calculus. Cambridge University Press. 1999.
    [21] M. Schroeder. Verification of Business Processes for a Correspondence Handling Center Using CCS. Proceedings of the 5th European Symposium on Validation and Verification of Knowledge Based Systems-Theory, Tools and Practice. 1999. 253-264.
    [22] B.A. Antonio, C.B. Carlos and P.B. Ernesto, et al. Formalizing Web Service Choreographies. Proceedings of the First International Workshop on Web Services and Formal Methods. 2004. 73-94.
    [23] H. Overdick, F. Puhlmann and M. Weske. Towards a Formal Model for Agile Service Discovery and Integration. Proceedings of the First International Workshop on Dynamic Web Processes. 2005.
    [24] R. Hamadi and B. Benatallah. A Petri net-based model for Web service composition. Proceedings of the 14th Australasian Database conference. Australia, 2003.191-200.
    [25] Wil.M.P. van der Aalst. Verification of workflow nets. Proceedings of the 18th International Conference on Applications and Theory of Petri Nets. 1997, 1248. 407-426.
    [26] A. Martens. Distributed Business Processes-Modeling and Verification by help of Web Services. PhD thesis, Berlin, Humboldt-University. 2003.
    [27] A. Martens. WOMBAT4WS, Workflow Modeling and Business Analysis Toolkitfor Web Services. http://www2.informatik.hu-berlin.de/top/wombat/.
    [28] K. Schmidt and C. Stahl. A Petri net semantic for BPEL-validation and application. Proceedings of the 11th workshop on Algorithms and Tools for Petri Nets. 2004.1-6.
    [29] K. Schmidt. Lola-a low level analyser. Proceedings of the International Conference on Application and Theory of Petri Nets. 2000. 465-474.
    [30] C. Ouyang, E. Verbeek and Wil M. P. van der Aalst, et al. Formal semantics and analysis of control flow in WS-BPEL. Science of Computer Programming. 2007, 67.162-198.
    [31] C. Ouyang, E. Verbeek and Wil M. P. van der Aalst, et al. BPEL2PNML translating tool. http://www.bpm.fit.qut.edu.au/projects/babel/tools/BPEL2PNML.pdf.
    [32] C. Ouyang, E. Verbeek and Wil M. P. van der Aalst, et al. WofBPEL:A Tool for Automated Analysis of BPEL Processes. Lecture notes in computer science. 2005,3826. 484-489.
    [33] S. Narayanan and S. McIlraith. Simulation, Verification and automated composition of Web services. Proceedings of the11th International World Wide Web Conference. ACM Press, 2002. 77-88.
    [34] Y.P. Yang, Q.P. Tan and J.S. Yu, et al. Transformation BPEL to CP-nets for verifying Web services composition. Proceedings of the International Conference on Next Generation Web Services Practices, 2005.137-143.
    [35] S. White and D. Miers. BPMN: Modeling and Reference Guide Understanding and Using BPMN. Future Strategies Inc. 2008.
    [36] ActiveBPEL Engine. http://www.activebpel.org/download/download.php.2008.
    [37] Oracle Company. OracleBPEL developer tools. http://download-uk.oracle.com/docs/cd/B14099_19/integrate.1012/b14448/appx_owb.htm. 2008.
    [38] W3C. Extensible Markup Language (XML). http://www.w3.org/XML/.
    [39] W3C. Web Service Description Language (WSDL). http://www.w3.org/TR/wsdl.
    [40] OASIS. Universal Description, Discovery, and Integration (UDDI). http://www.oasis-open.org/committees/uddi-spec/doc/tcspecs.html.
    [41] W3C. Simple Object Access Protocol (SOAP). http://www.w3.org/TR/soap/.
    [42] Berners L T, Hander J and Lassila O. The Semantic Web. Scientific American, 2001. http://www.sciam.com/article.cfm?id=the-semantic-web.
    [43]宋炜,张铭.语义网简明教程.北京:高等教育出版社, 2004.6.
    [44] W3C. Resource Description Framework(RDF). http://www.w3.org/RDF/.
    [45] W3C. RDF Schema,http://www.w3.org/TR/rdf-schema/.
    [46] W3C. Web Ontology Language(OWL), http://www.w3.org/2004/OWL/.
    [47] W3C. OWL Web Ontology Language Semantics and Abstract Syntax. http://www.w3.org/TR/2004/REC-owl-semantics-20040210/.
    [48]刘升平. XML的模型论语义及其应用.北京大学数学科学学院博士学位论文,2005.
    [49] W3C. OWL Web Ontology Language for Services (OWL-S). http://www.w3.org/Submission/2004/07/.
    [50] W3C. Semantic Annotations for WSDL (SAWSDL). http://www.w3.org/2002/ws/sawsdl/.
    [51] W3C. Web Service Semantics(WSDL-S). http://www.w3.org/Submission/WSDL-S/.
    [52] H. Wilms. WSDL和XML Schema的语义标注(SWSDL)成为W3C推荐. http://www.infoq.com/cn/news/2007/09/sawsdl-recommendation.
    [53] H. Kreger. Web服务概念性体系结构(WSCA 1.0). http://www.ibm.com/developerworks/cn/webservices/ws-wsca/part1/index.html.
    [54] M. Paolucci, T. Kawamura and T.R. Payne. Semantic Matching of Web Services Capabilities. Proceedings of the First International Semantic Web Conference on The Semantic Web. 2002.333-347.
    [55] L.D. Ngan, T.M. Huang and A.E.S. Goh. MOD-A Multi-Ontology Discovery System. Proceedings of the First International Workshop on Semantic Matchmaking and Resource Retrieval. 2006.
    [56] K. Jensen. Application and Theory of Petri Nets. Proceedings of the 13th International Conference. Sheffield, UK, 1992.
    [57] K. Jensen. Colored Petri nets: Basic concepts, analysis methods and practical use: Volume 1, Basic Concepts. Monographs in Theoretical Computer Science, Springer-Verlag, 1992.
    [58] K. Jensen. Colored Petri nets: Basic concepts, analysis methods and practical use: Volume 2, Analysis Methods. Monographs in Theoretical Computer Science, Springer-Verlag, 1994.
    [59] K. Jensen. Colored Petri nets: Basic concepts, analysis methods and practical use: Volume 3, A practical use. Monographs in Theoretical Computer Science, Springer-Verlag, 1997.
    [60] K. Jensen. An Introduction to the Theoretical Aspects of Colourd Petri Nets.Lecture Notes in Computer Science. 1994, 803. 230-274.
    [61] P. Huber, K. Jensen and R.M. Shapiro. Hierarchies in coloured Petri nets. Applications and Theory of Petri Nets. 1989. 313-341.
    [62] H.J. Genrich and K. Lautenbach. System modeling with high-level Petri nets. Theretical Computer Science, 1981. 109-136.
    [63] D. Xu, R. Volz and T. loerger. Modeling and Analyzing Multi-Agent Behaviors Using Predicate/Transition Nets. International Journal of Software Engineering and Knowledge Engineering, 2003, 13(1).103-124.
    [64] K. Garg. An approach to performance specification of communication protocols using timed Petri nets. IEEE Transaction on Software Engineering. 1985, 11(10).1216-1225.
    [65] M.A. Holiday and M.K. Venon. A generalized timed Petri net model for performance analysis. IEEE Transaction on Software Engineering. 1987, 13(12).1297-1310.
    [66] T. Murata. Use of resource-time product concept to derive a performance measure of timed Petri nets. Procceding of 1985 Midwest Symposium on Circuits Systems.1985.
    [67] M.A. Marsan, G. Balbo and G. Conte. Performance models of multiprocessor systems. Mit Press Series In Computer Systems, 1987. 280.
    [68] M.A. Marsan, G. Conte and G. Balbo. A class of generalized Petri nets for the performance evaluation of multiprocessor systems. ACM Transaction on Computer. System, 1984, 2(2). 93-122.
    [69] P.J. Hass and G.S. Shedler. Stochastic Petri net representation of discrete event simulation. The special section in Petri net performance models in IEEE Transaction on Software Engineering, 15(4), 1989. 381-393.
    [70]林闯.随机Petri网和系统性能评价.北京:清华大学出版社, 2005.
    [71]袁崇义. Petri网原理与应用.北京:电子工业出版社, 2005.
    [72] A. Pnueli. The temporal semantics of concurrent programs. Theoretical Computer Science, 1981. 45-60.
    [73] E.M. Clarke, E.A. Emerson and A.P. Sistla. Automatic verification of finite state concurrent system using temporal logical specification. ACM Transaction on Programming Language and Systems. 1986, 8(2). 244~263.
    [74] A. Cheng, S. Christensen and K.H. Mortensen. Model Checking Colored Petri Nets Exploiting Strongly Connected Components. Proceedings of the International Workshop on Discrete Event Systems, UK, 1996. 169-177.
    [75] C. Lawrence, Paulson著,柯韦译. ML程序设计教程.北京:机械工业出版社. 2005.
    [76] H. Michael, R. Mark. Logic in Computer Science: Modelling and Reasoning about Systems.北京:机械工业出版社. 2005.
    [77] E.M. Clarke, O. Grumberg and S. Jha, et al. Counterexample-Guided abstraction refinement. Proceedings of the 12th International Conference on Computer Aided Verification. 2000. 154-169.
    [78] J.P. Katoen. Concepts, Alorithms, and Tools for Model Checking. Lecture Notes of the Course“Mechanised Validation of Parallel Systems”. 1999.
    [79] E.M. Clarke, S. Jha and Y. Lu, et al. Tree-Like Counterexamples in Model Checking. IEEE Symposium on Logic in Computer Science. 2002. 19-29.
    [80] C.G. Looney. Petri fuzzy nets for rule-based decision making. IEEE Transactions on system, man, and cybernetics, part A. 1998, 18(1). 178-183.
    [81] S.M. Chen, J.S. Ke and J.F. Chang, et al. Knowledge representation using fuzzy Petri nets. IEEE Transaction on Knowledge and Data Engineering, 1990, 2(3). 311-319.
    [82] W. Pedrycz and F. Gomide. A generalized fuzzy Petri net model. IEEE Transactions on Fuzzy Systems, 1994, 2(4). 295-301.
    [83] M.M. Gao and Z.M. Wu. A fuzzy reasoning Petri net model and its reasoning algorithm. Journal of Shanghai Jiao tong University. 1999, E-4(2). 5-9.
    [84] B. Fryc, K. Pancerz and J.F. Peters, et al. On Fuzzy Reasoning Using Matrix Representation of Extended Fuzzy Petri Nets. Fundamenta Informaticae. 2004. 143-157.
    [85] Y. Rong P.A. Heng and K.S. Leung. Backward Reasoning on Rule-Based Systems Modeled by Fuzzy Petri Nets Through Backward Tree. Proceedings of the first International Conference on Fuzzy Systems and Knowledge Discovery. 2002.18-22.
    [86] S.M. Chen. Fuzzy backward reasoning using fuzzy Petri nets. IEEE Transaction on system, man, and cybernetics-part B. 2000, 30(6). 846-856.
    [87]蒋昌俊. A Study of Fuzzy Logical Petri nets and its application.电子科学学刊(英文版). 2001.70-78.
    [88] J.H. Rao, P. Küngas and M. Matskin. Logic-based Web Services Composition. Proceedings of the International Conference on Web Services. 2004. 446-453.
    [89] D. McDermott. Estimated-regression planning for interactions with Web services. Proceedings of the 6th International Conference on AI planning and Schedling,2002. 204-211.
    [90] J. Peer. A PDDL Based Tool for Automatic Web Service Composition. Proceedings of the 2nd workshop on Principles and Practice of Semantic Web Reasoning at the 20th International Conferrence on Logic Programming. 2004. 149-163.
    [91] K. Verma, R. Goodwin and P. Doshi. Executing Abstract Web Process Flows. Proceedings of the 14th International Conference on Automated Planning and Scheduling. 2004. 3-7.
    [92] S. Mcllraith and T.C. Son. Adapting Golog for Programming the Semantic Web. Proceedings of 5th International Symposium on Logical Formalization of Commonsense Reasoning. 2001. 195-202.
    [93]梁晟.基于语义Web的服务自动组合技术的研究,博士论文,中科院软件研究所. 2004.
    [94] E. Sirin, B. Parsia and D. Wu, et.al. HTN planning for Web service composition using SHOP2. Journal of Web Semantics, 2004, 1(4). 377-396.
    [95]邓水光,吴健,李莹,等.基于回溯树的Web服务自动组合.软件学报. 2007, 18(8). 1896-1910.
    [96] S.V. Hashemian and F. Mavaddat. A Graph-Based Approach to Web Services Composition. Proceedings of the International Symposium on Applications and the Internet. 2005. 183-189.
    [97] S. Prabhus. Towards Distributed Dynamic Web Service Composition, Proceedings of the 8th International Symposium on Autonomous Decentralized Systems. 2007. 25-32.
    [98] J.M. Liu, J.T. Cui and N. Gu. Composing Web services Dynamically and Semantically. Proceedings of the International Conference on E-Commerce Technology for Dynamic E-Business. 2004. 234-241.
    [99]李曼,王大治,杜小勇等.基于领域本体的Web服务动态组合.计算机学报. 2005, 28(4). 644-650.
    [100] R. Waldinger. Web agents cooperating deductively. Proceedings of the First International Workshop on Formal Approaches to Agent-Based Systems. 2000. 250–262.
    [101] L. Freddy. Semantic Web Service Composition Based on a Closed World Assumption. Proceedings of the European Conference on Web Services, 2006. 233-242.
    [102] S.R. Ponnekanti and A. Fox. SWORD: A Developer Toolkit for Web servicecomposition. Proceedings of the 11th World Wide Web Conference. 2002. 83-107.
    [103]汤宪飞,蒋昌俊,丁志军,等.基于Petri网的语义Web服务自动组合方法.计算机学报. 2007. 2991-3000.
    [104] C. Lin, A. Chaudhury and A.B. Whiston, et al. Logical inference of Horn clauses in Petri net models. IEEE Transaction on Knowledge and Data Engineering. 1993, 4(3). 416-426.
    [105] CPN Group of University of Aarhus. Computer Tool for Colored Petri Nets. http://wiki.daimi.au.dk/cpntools/. 2008.
    [106] F. Casati, S. Ilnicki, L. Jin, et al. eFlow: A platform for developing and managing composite e-services. Proceeding of the Academic Industry Wording Conference on Reasearch Challenges. 2000. 341-348.
    [107] B. Benatallah, M. Dumas. The Self-Serv Environment for Web Services Composition. IEEE Computer Society, 2003.
    [108] P. Abhijit, O. Swapna, S. Amit et al. METEOR-S Web service Annotation Framework. Proceeding of the 13th international World Wide Web conference. 2004, 533-562.
    [109]葛声,马殿富,胡春明,等.基于Web服务的网络软件运行平台研究与实现,北京航空航天大学学报,2003,29(10). 897-900.
    [110] F. Greg.探索企业服务总线,第1部分:了解ESB如何帮助您满足SOA解决方案的需求. http://www.ibm.com/developerworks/cn/architecture/ar-esbpat1/.2008,4.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700