VPML: an approach to detect design patterns of MOF-based modeling languages
详细信息    查看全文
  • 作者:Maged Elaasar ; Lionel C. Briand ; Yvan Labiche
  • 关键词:Design pattern ; Modeling ; MOF ; UML ; BPMN ; QVT ; GoF ; VPML
  • 刊名:Software and Systems Modeling
  • 出版年:2015
  • 出版时间:May 2015
  • 年:2015
  • 卷:14
  • 期:2
  • 页码:735-764
  • 全文大小:3,828 KB
  • 参考文献:1.Model-driven engineering. http://?en.?wikipedia.?org/?wiki/?Model-driven_?engineering
    2.Booch, G.: Handbook of Software Architecture. http://?www.?handbookofsoftwa?rearchitecture.?com
    3.Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, MA (1995)
    4.Unified Modeling Language (UML), Superstructure v2.4. http://?www.?omg.?org/?spec/?UML/-.-/?Superstructure/?PDF
    5.Russell, N., Hofstede, A., Aalst, W., Mulyar, N.: Workflow control-flow patterns: a revised view. BPM Center Report BPM-06-22, BPMcenter.org (2006)
    6.Business Process Model and Notation (BPMN) v2.0. http://?www.?omg.?org/?spec/?BPMN/-.-/?PDF
    7.Kerievsky, J.: Refactoring to Patterns. Addison-Wesley, Reading, MA (2004)
    8.Ambler, S.: Agile Modeling: Effective Practices for eXtreme Programming and the Unified Process. Wiley, New York, NY (2002)
    9.Chikofsky, E., Cross, J.: Reverse engineering and design recovery: a taxonomy. IEEE Softw. 7(1), 13-7 (1990)View Article
    10.Elaasar, M., Briand, L., Labiche, Y.: Domain-specific model verification with QVT. In: ECMFA-1. LNCS, vol. 6698, pp. 282-98 (2011)
    11.Meta Object Facility (MOF) Core v2.0. http://?www.?omg.?org/?spec/?MOF/-.-/-/span>
    12.Object Constraint Language (OCL) v2.2. http://?www.?omg.?org/?spec/?OCL/-.-/-/span>
    13.Query/View/Transformation (QVT) v1.1. http://?www.?omg.?org/?spec/?QVT/-.-/-/span>
    14.ATL Transformation Language. http://?www.?eclipse.?org/?atl/-/span>
    15.Steinberg, D., Budinsky, F., Paternostro M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edition. Addison-wesley, Boston, MA (2009)
    16.Graphical Modeling Framework (GMF). http://?www.?eclipse.?org/?gmf/-/span>
    17.Medini QVT. http://?projects.?ikv.?de/?qvt
    18.Fulop, L., Ferenc R., Gyimothy, T.: Towards a benchmark for evaluating design pattern miner tools. In: Proceedings of CSMR, pp. 143-52 (2008)
    19.Dong, J., Zhao, Y., Peng, T.: Architecture and design pattern discovery techniques—a review. In: Software Engineering Research and Practice, pp. 621-27 (2007)
    20.Birkner, M.: Objected-oriented design pattern detection using static and dynamic analysis in Java Software. Master Thesis, University of Applied Sciences Bonn-Rhein-Sieg, Germany (2007)
    21.Huang, H., Zhang, S., Cao, J., Duan, Y.: A practical pattern recovery approach based on both structural and behavioral analysis. J. Syst. Softw. 75(1-), 69-7 (2005)View Article
    22.Mikkonen, T.: Formalizing design patterns. In: Proceedings of International Conference on Software Engineering, pp. 115-24 (1998)
    23.Taibi, T., Check, D., Ngo, L.: Formal specification of design patterns—a balanced approach. J. Object Technol. 2(4), 127-40 (2003)View Article
    24.Eden, A., Hirshfeld, Y., Lundqvist, K.: LePUS—Symbolic logic modeling of object oriented architectures: a case study. University of Karlskrona. In: Proceedings of Second Nordic Workshop on Software Architecture (1999)
    25.Beyer, D., Noack, A., Lewerentz, C.: Efficient relational calculation for software analysis. IEEE Trans. Softw. Eng. 31(2), 137-49 (2005)View Article
    26.Dijkmana, R., Dumasb, M., Ouyangc, C.: Semantics and analysis of business process models in BPMN. Inf. Softw. Technol. 50(12), 1281-294 (2008)View Article
    27.Seemann, J., Gudenberg, J.: Pattern-based design recovery of Java software. In: Proceedings of the 6th International Symposium on Foundations of Software Engineering, pp. 10-6 (1998)
    28.Eppstein, D.: Subgraph isomorphism in planar graphs and related problems. In: Proceedings of 6th Annual Symposium on Discrete Algorithms, pp. 632-40 (1995)
    29.Pettersson, N., Lowe, W.: Efficient and accurate software pattern detection. In: Proceedings of 13th Asia Pacific, Software Engineering Conference, pp. 317-26 (2006)
    30.Rudolf, M.: Utilizing constraint satisfaction techniques for efficient graph pattern matching. In: Proceedings of 6th International Workshop on Theory and Application of Graph Transformations. LNCS, vol. 1764, pp. 238-51, London (1998)
    31.Dong, J., Lad, D., Zhao, Y.: DP-Miner: design pattern discovery using matrix. In: Proceedings of 14th IEEE International Conference on Engineering of Computer-Based Systems, pp. 371-80 (2007)
    32.Tsantalis, N., Chatzigeorgiou, A., Stephanides, G., Halkidis, S.: Design pattern detection using similarity scoring. IEEE Trans. Softw. Eng. 32(11), 896-09 (2006)View Article
    33.Gueheneuc, Y., Sahraoui, H., Zaidi, F.: Fingerprinting design patterns. In: Proceedings of the 11th Working Conference on Reverse Engineering, pp. 172-81 (2004)
    34.Le Guennec, A., Sunye, G., Jezequel, J.: Precise modeling of design patterns. In: Proceedings of UML 2000. LNCS, vol. 1939, pp. 482-96 (2000)
    35.Mak, J., Choy, C., Lun, D.: Precise modeling of design patterns in UML. In: Proceedings of International Conference of Software Engineering, pp. 252-61 (2004)
    36.Milicev, D
  • 作者单位:Maged Elaasar (1)
    Lionel C. Briand (2)
    Yvan Labiche (3)

    1. Rational Software, Ottawa Lab, IBM Canada Ltd., 770 Palladium Dr., Kanata, ON, K2V 1C8, Canada
    2. SnT Centre, University of Luxembourg, 6, rue Richard Coudenhove-Kalergi, 1359, Luxembourg, Luxembourg
    3. Department of Systems and Computer Engineering, Carleton University, 1125 Colonel By Drive, Ottawa, ON, K1S 5B6, Canada
  • 刊物类别:Computer Science
  • 刊物主题:Software Engineering, Programming and Operating Systems
    Programming Techniques
    Software Engineering
    Programming Languages, Compilers and Interpreters
    Information Systems Applications and The Internet
    Business Information Systems
  • 出版者:Springer Berlin / Heidelberg
  • ISSN:1619-1374
文摘
A design pattern is a recurring and well-understood design fragment. In a model-driven engineering methodology, detecting occurrences of design patterns supports the activities of model comprehension and maintenance. With the recent explosion of domain-specific modeling languages, each with its own syntax and semantics, there has been a corresponding explosion in approaches to detecting design patterns that are so much tailored to those many languages that they are difficult to reuse. This makes developing generic analysis tools extremely hard. Such a generic tool is however desirable to reduce the learning curve for pattern designers as they specify patterns for different languages used to model different aspects of a system. In this paper, we propose a unified approach to detecting design patterns of MOF-based modeling languages. MOF is increasingly used to define modeling languages, including UML and BPMN. In our approach, a pattern is modeled with a Visual Pattern Modeling Language and mapped to a corresponding QVT-Relations transformation. Such a transformation runs over an input model where pattern occurrences are to be detected and reports those occurrences in a result model. The approach is prototyped on Eclipse and validated in two large case studies that involve detecting design patterns—specifically a subset of GoF patterns in a UML model and a subset of Control Flow patterns in a BPMN model. Results show that the approach is adequate for modeling complex design patterns for MOF-based modeling languages and detecting their occurrences with high accuracy and performance.

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

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

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