用户名: 密码: 验证码:
基于MDA的SOA服务协作模型的研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
面向服务体系构架SOA作为整合已有不同系统的一种构架被提出来,主要是解决企业中信息孤岛问题。BPEL是业务流程执行语言用来描述SOA的服务协作模型,实现对各个系统业务流程的编排。但其随着整合遗产系统的增多和业务流程复杂性的增加,BPEL建模也变得异常复杂,同时,因其缺乏形式化的语义描述,极易潜藏一些逻辑错误。简化BPEL建模并自动验证其逻辑正确性将有利于SOA的普及应用。
     MDA作为一种模型驱动开发构架,它的核心思想是抽象出与具体实现技术无关的PIM层模型,通过转换工具将PIM层模型自动的转换到PSM平台相关层模型。本文给出了一种基于MDA的SOA服务协作模型的构建方法,首先使用UML活动图描述服务协作模型的交互过程,以构建SOA服务协作的PIM模型;然后,通过建立活动图元模型元素与BPEL元模型元素之间的映射规则,以XMI作为标准交换文件,利用EMF及MTF模型框架作为模型转换引擎,将SOA服务协作模型自动转换为BPEL模型即PSM模型。本文还对BPEL的逻辑正确性的验证方法进行了研究,通过将BPEL转换为有色Petri网,利用Petri网工具实现BPEL模型逻辑正确性的自动化验证。由于采用了Petri网工具内置的函数实现分支的跳过处理,简化了BPEL模型到Petri网的转换的复杂性,使其更有利于BPEL的验证。
     本文利用网上购书的原型系统进行实例验证,利用活动图对网上购物车、银行收费和物流等服务进行了SOA服务协作模型建模,并成功地转换成了BPEL,利用有色Petri网工具进行了结果BPEL的逻辑正确性验证,通过与XSLT的转换方法对比,表明本文给出的方法的可行性和高效性。
Service-Oriented Architecture as architecture has been proposed to integrate the different systems which had been existed, it mainly to resolve the business problems of separating information. Business Process Execution Language is used to describe the service collaborative model of SOA, which implemented to choreography the individual system's business processes.But with the legacy systems’s integrated and the complexity of business processes's increased, constructing the BPEL model becomes more and more complex. Meanwhile, the BPEL model lacks the semantic description of formalization, which possible hiding some logic errors. Simplify the BPEL model and automatic verificates its logical correctness will be conducived the popularity of SOA’s application.
     MDA as a model-driven development architecture, its core idea is to abstract the PIM layer model which has no relation with the concrete implementing technology, using the conversion tools to translate it into platform specific model automatically.This article proposes a method to construct the SOA's service collaboration model which was based on MDA. At first, we use the activity diagram of UML to describe the interaction of SOA's service collaboration model, building the SOA's service collaboration model in PIM layer; and then establishing the particular mapping rules between the UML activity diagram meta-model elements and BPEL meta-model elements, using the XMI as a standard exchange file and EMF as a model translation framework, converting the SOA service collaboration model to BPEL which was the PSM model automatically. And also we research the method to validate the logical correctness of the BPEL, through translating the BPEL into colored Petri net, using the colored petri net tools to achieve the BPEL model’s logical correctness and validation automatically. We use the functions which were in the colored petri net tools to deal with the skip branches, which simplify the complexity of translating BPEL to Petri nets, and make it much more avail to validate the BPEL.
     In this paper,we verificate the method that was proposed through the prototype system of online bookshop, using the activity diagram to construct online shopping cart, bank charges and logistics services of SOA service collaboration model, and successfully converting it into BPEL model, using the colored petri net tools to validate the BPEL's logic correctness. We compare it with the conversion method of XSLT, and the result shows that the presented method is feasible and efficient.
引文
[1]白伟华.基于SOA的多Agent协商服务及其应用[J].计算机工程,2007,33(23): 129-131.
    [2]刘艳,吴健.基于SOA的OA与ERP的整合应用[J].计算机应用,2008,28(3):816- 818.
    [3]童鑫,李军义.面向SOA的企业服务总线研究与实现[J].计算机应用,2008,28(3): 819-822.
    [4] T. Gardner and al. Draft UML 1.4 profile for automated business processes with a mapping to the BPEL 1.0[J],IBM alphaWorks,2003.
    [5]崔萌,史耀馨,李宣东.基于MDA的PIM到J2EE平台PSM的转换方法[J].计算机应用与软件,2005.1,22(1):100-102.
    [6] Zhang, Wei; Mei, Hong; Zhao, Haiyan.Transformation from CIM to PIM:A Feature-Oriented Component-Based Approach.8th International Conference on Model Driven Engineering Languages and Systems[J].MoDELS 2005:248-263.
    [7] Kim,S.,Her,Chang,S.A theoretical foundation of variability in component based development[J].Information and Software Technology,Vol.47 2005.6.
    [8]谢正良,赵建华,李宣东.一种基于J2EE平台的MDA模型转换技术[J].计算机应用研究,2005.3,3:51-54.
    [9] Devon Simmonds,Raghu Reddy,Sudipto Ghosh.Using Aspect Oriented Techniques to Support Separation of Concerns in Model Driven Development.29th Annual International Computer Software and Applications Conference,COMPSAC 2005:121-126.
    [10]张广胜,蒋昌俊,汤宪飞.面向服务的企业应用集成系统描述与验证[J].软件学报, 2007.12. 18(12):129-131
    [11]李春荣,吴静.基于SOA的军事仿真系统架构研究[J].中国电子科学研究院学报, 2007.2. 2(1):14-19.
    [12] Michael N.Huhns,Munindar P.Service Oriented Computing:Key Concepts and Principles.Singh Journal of IEEE Internet Computing 2005:75-81.
    [13] Wei-Tek Tsai.PESOI:Process Embedded Service-Oriented Architecture[J].软件学报, 2006.6:1470-1484.
    [14]符宁,周兴社,杨刚.分布式企业服务总线的设计与实现[J].计算机工程,2007.12. 33(24):118-120.
    [15]刘立恒.基于SOA的商业智能平台的研究与设计[J].计算机工程,2008.2. 34(3):73- 75.
    [16] Jardim-Goncalves, Ricardo; Grilo, Antonio; Steiger-Garcao, Adolfo Elsevier, Amsterdam, Challenging the interoperability between computers in industry with MDA and SOA.1000 AE, Netherlands 2006:679-689.
    [17] Xu, Bin.A service oriented model for role based global cooperative software development.2nd International Conference on Convergent Information Technology, ICCIT 07 2007:376-381.
    [18]谷玉奎,曹宝香.基于柔性SOA的通用权限管理服务[J].计算机工程,2008.4. 34(8):75-79.
    [19]兰建忠,柴跃廷,刘义.基于SOA的知识服务交易平台的设计与实现[J].计算机工程,2008.5. 34(10):58-60.
    [20]季磊.模型驱动的Web服务合成[J].计算机工程,2007.9. 33(18):100-102.
    [21]朱嘉贤,白伟华.基于服务虚拟化的业务编程模型[J].计算机应用,2008.6. 28(6): 1635-1638.
    [22]迟文学,吴信才.面向服务的搭建式开发技术研究[J].计算机应用研究,2008.6. 25(6):1717-1720.
    [23] Pfadenhauer, Konrad; Dustdar, Schahram; Kittl, Burkhard. Challenges and solutions for model driven web service composition. 14th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, WET ICE 2005:126-131.
    [24]闻晓,张为群,杨阳.BPEL应用程序验证模型研究[J].计算机科学,2009.4. 36(4): 163-165.
    [25]梅彪,姜新文,吴恒.WS-BPEL业务流程与访问控制[J].计算机工程,2008.10. 34(19):144-146.
    [26]刘发贵,胡耀民.基于MDA的模式化软件设计方法与应用[J].计算机应用,2005.4, 25(4):790-795.
    [27] Sangdo-Dong, Dongjak-Ku. A Technique to Represent and Generate Components in MDA/PIM for Automation. Seoul 9th International Conference on Fundamental Approaches to Software Engineering, FASE 2006. 295-307.
    [28]陈翔,王学斌,吴泉源.代码生成技术在MDA中的实现[J].计算机应用研究, 2006.2,1:147-150.
    [29]侯金奎,张玉艳,万建成.一种支持模型驱动开发的Web用户界面建模方法[J].计算机应用,2006.6,26(6):1446-1448.
    [30] Smith,M.,Friese,T.Freisbelen,B.Model Driven Development of Service Oriented GridApplication. Conference on Telecommunications and International Conference on Internet and Web Applications and Service 2006.2:139-146.
    [31]刘静,何积丰,缪淮扣.模型驱动架构中模型构造与集成策略[J].软件学报, 2006.6,17(6):1411-1422.
    [32]王学斌,王民,吴泉源.一种模型转换的编织框架[J].软件学报,2006.6.17(6):1423- 1435.
    [33] Ortiz, Guadalupe; Hernandez, Juan.Model Driven Extra-Functional Properties for Web Services.SCW 2006:IEEE Services Computing Workshops 2006:113-120.
    [34]王赟华,陈蔚薇.模型驱动开发方法的应用研究[J].计算机工程,2006.7.22(13):63- 65.
    [35]段玉聪,顾毓清.多维关注分离的模型驱动过程框架设计方法[J].软件学报, 2006.8. 17(8):1707-1716.
    [36]王学斌,吴泉源,史殿习.模型驱动架构中的模型转换方法[J].计算机工程与科学, 2006.11. 28(11): 133-139.
    [37]徐晓钟.模型驱动架构(MDA)相关技术研究与实现[J].计算机科学,2006.12. 33(12):278-280.
    [38]常浩浩,覃征.基于EMF和OCL的MDA软件工程方法研究[J].计算机科学, 2007.1. 34(1):268-271.
    [39]郑娟,冯书兴,张立兵.基于MDA数据库开发方法研究[J].计算机仿真,2007.10. 22(1):100-102.
    [40]刘辉,麻志毅,邵维忠.模型转换中特性保持的描述与验证[J].软件学报,2007.10. 28(10):2369-2379.
    [41] Larrucea, Xabier John Wiley and Sons Ltd, Chichester, West Sussex, Method engineering approach for interoperable systems development.PO19 8SQ, United Kingdom 2008:127-133.
    [42]崔红军,邵培南,严少清.一种基于MDA的容错软件开发工具框架设计[J].计算机工程,2007.11. 33(21)::278-280.
    [43]罗卫国,卢雷,李增强.MDA面临的困境与发展趋势分析[J].计算机应用与软件, 2007.12. 24(12):94-96.
    [44]王志,刘斌,钟德明.代码走查辅助工具的MDA开发模式[J].计算机工程,2007.12. 33(231):87-89.
    [45]张德芬,李师贤.面向方面的MDA开发方法[J].计算机应用与软件,2008.1. 25(1): 73-75.
    [46]李丽.模型驱动架构的应用[J].计算机系统应用,2008.1. 1:97-112.
    [47]薛振伟,吴志杰.模型驱动的软件开发模式研究[J].计算机技术与发展,2008.2. 18(2):24-27.
    [48]夏雷,欧阳松.基于MDA的关联关系转换方法[J].计算机工程,2007.2. 33(3):67- 70.
    [49] Schmidt, Markus.Transformations of UML 2 Models Using Concrete Syntax Patterns. 3rd International Workshop on Rapid Integration of Software Engineering Techniques, RISE 2007:130-143.
    [50] Adel Torkaman Rahmani,Vahid Rafe,Saeed Sedighian .An MDA-Based Modeling and Design of Service Oriented Architecture. ICCS 2006: 6th International Conference on Computational Science 2006:578-585.
    [51]侯金奎,万建成,张玉艳.一种支持MDA的PIM建模方法[J].计算机工程,2007.4. 33(8):71-73.
    [52] B.Graaf,S.Weber,and A.van Deursen.Model driven migration of supervisory machine control architectures.Journal of Systems and Software 2007:517-535.
    [53]杨艳萍.自动Web服务组合关键技术研究[J].国防科学技术大学,2007.4:95-96.
    [54]侯金奎,万建成,杨潇.支持MDA的J2EE PSM模型描述及代码生成方法[J].计算机工程,2007.8. 33(15):79-82.
    [55]孙健,陶晓峰.基于Petri网的web服务BPEL4WS建模与分析[J].计算机工程, 2004.22. 30(22):14-16.
    [56]黄超白,黄上腾.基于有色Petri网的Web合成服务会话协议[J].计算机工程与应用,2005.4:143-146.
    [57]刘烁,陈俊杰.基于UML的CPN模型在软件测试中的应用[J].计算机工程,2008.2. 34(3):119-121.
    [58]林强,胡昊,吕建.基于对象Petri网的BPEL建模技术[J].计算机工程,2009.1. 34(3):74-76.
    [59]邓新国,林子禹,陈伟清.有色Petri网协作模型的BPEL代码实现[J].计算机科学, 2008. 34(3):262-266.
    [60] Karsten Schmidt and Christian Stahl.A Petri net Semantic for BPEL4WS Validation and Application . In Proc . of the 1lth Workshop on Algorithms and Tools for Petri Nets(AWPN),2004.l-6.
    [61] S.Nakajima.Verification of Web Service Flows with Model Checking Techniques.In Proc.of the First International Symposium on Cyber worlds(CW),2002.
    [62] Foster H.,Uchitel S.,Magge J.,Kramer J.Mdole based verification of Web services composition.In Proc.of the 18th IEEE International Conference on Automated Software Engineering,Montreal,Canada,2003,152—161.

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

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

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