Skip to main content

Towards Rule-Based Detection of Design Patterns in Model Transformations

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9959))

Abstract

Model transformations are at the very heart of the Model-Driven Engineering paradigm. As modern programs, they are complex, difficult to write and test, and overall, difficult to understand, maintain, and reuse. In other paradigms, such as object-oriented programming, design patterns play an important role for understanding and reusing code. Many works have been proposed to detect complete design pattern instances for understanding and documentation purposes, but also partial design pattern instances for quality assessment and refactoring purposes. Recently, a catalog of design patterns has been proposed for model transformations. In this paper, we propose to detect these design patterns in declarative model transformation programs. Our approach first detects the rules that may play a role in a design pattern. Then, it ensures that the control flow over these rules corresponds to the scheduling scheme in the design pattern. Our preliminary evaluation shows that our detection mechanism is effective for both complete and partial instances of design patterns.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    https://eclipse.org/acceleo/.

  2. 2.

    https://www.eclipse.org/henshin/examples.php.

References

  1. Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: advanced concepts and tools for in-place emf model transformations. In: Model Driven Engineering Languages and Systems, pp. 121–135 (2010)

    Google Scholar 

  2. De Lucia, A., Deufemia, V., Gravino, C., Risi, M.: Improving behavioral design pattern detection through model checking. In: European Conference on Software Maintenance and Reengineering, pp. 176–185 (2010)

    Google Scholar 

  3. Dong, J., Zhao, Y., Peng, T.: A review of design pattern mining techniques. Int. J. Softw. Eng. Knowl. Eng. 19(06), 823–855 (2009)

    Article  Google Scholar 

  4. Guéhéneuc, Y.G., Guyomarc’h, J.Y., Sahraoui, H.: Improving design-pattern identification: a new approach and an exploratory study. Softw. Qual. J. 18(1), 145–174 (2010)

    Article  Google Scholar 

  5. Gueheneuc, Y.G., Sahraoui, H., Zaidi, F.: Fingerprinting design patterns. In: Working Conference on Reverse Engineering, pp. 172–181. IEEE (2004)

    Google Scholar 

  6. Hill, E.F.: Jess in Action: Java Rule-Based Systems. Manning Greenwich, Greenwich (2003)

    Google Scholar 

  7. Rasool, G., Mäder, P.: Flexible design pattern detection based on feature types. In: International Conference on Automated Software Engineering, pp. 243–252 (2011)

    Google Scholar 

  8. Agrawal, A.: Reusable idioms and patterns in graph transformation languages. In: International Workshop on Graph-Based Tools, ENTCS, vol. 127, pp. 181–192. Elsevier (2005)

    Google Scholar 

  9. Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Syst. J. Spec. Issue Model-Driven Softw. Dev. 45(3), 621–645 (2006)

    Google Scholar 

  10. Ergin, H., Syriani, E., Gray, J.: Design pattern oriented development of model transformations. Comput. Lang. Syst. Struct. 46, 106–139 (2016). doi:10.1016/j.cl.2016.07.004

    Google Scholar 

  11. Ergin, H., Syriani, E.: Identification and application of a model transformation design pattern. In: ACM Southeast Conference, ACMSE 2013. ACM (2013)

    Google Scholar 

  12. Ergin, H., Syriani, E.: Towards a Language for Graph-Based Model Transformation Design Patterns. In: Ruscio, D., Varró, D. (eds.) ICMT 2014. LNCS, vol. 8568, pp. 91–105. Springer, Heidelberg (2014). doi:10.1007/978-3-319-08789-4_7

    Google Scholar 

  13. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley Professional, Boston (1994)

    MATH  Google Scholar 

  14. Hutchinson, J., Whittle, J., Rouncefield, M., Kristoffersen, S.: Empirical assessment of MDE in industry. In: International Conference on Software engineering, pp. 471–480. ACM (2011)

    Google Scholar 

  15. Iacob, M.E., Steen, M.W.A., Heerink, L.: Reusable model transformation patterns. In: Enterprise Distributed Object Computing Conference Workshops, pp. 1–10. IEEE Computer Society (2008)

    Google Scholar 

  16. Lúcio, L., Amrani, M., Dingel, J., Lambers, L., Salay, R., Selim, G.M., Syriani, E., Wimmer, M.: Model transformation intents and their properties. Softw. Syst. Model. 15(3), 647–684 (2014)

    Article  Google Scholar 

  17. Lano, K., Rahimi, S.K.: Model-transformation design patterns. IEEE Trans. Softw. Eng. 40(12), 1224–1259 (2014)

    Article  Google Scholar 

  18. Lano, K., Rahimi, S.K., Poernomo, I.: Comparative evaluation of model transformation specification approaches. Int. J. Softw. Inf. 6(2), 233–269 (2012)

    Google Scholar 

  19. Levendovszky, T., Lengyel, L., Mészáros, T.: Supporting domain-specific model patterns with metamodeling. Softw. Syst. Model. 8(4), 501–520 (2009)

    Article  Google Scholar 

  20. Prechelt, L., Krämer, C.: Functionality versus practicality: employing existing tools for recovering structural design patterns. J. Univ. Comput. Sci. 4(11), 866–882 (1998)

    Google Scholar 

  21. Syriani, E., Vangheluwe, H.: A modular timed graph transformation language for simulation-based design. Softw. Syst. Model. 12(2), 387–414 (2013)

    Article  Google Scholar 

  22. Tsantalis, N., Chatzigeorgiou, A., Stephanides, G., Halkidis, S.: Design pattern detection using similarity scoring. Trans. Softw. Eng. 32(11), 896–909 (2006)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Eugene Syriani .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Mokaddem, C.e., Sahraoui, H., Syriani, E. (2016). Towards Rule-Based Detection of Design Patterns in Model Transformations. In: Grabowski , J., Herbold, S. (eds) System Analysis and Modeling. Technology-Specific Aspects of Models . SAM 2016. Lecture Notes in Computer Science(), vol 9959. Springer, Cham. https://doi.org/10.1007/978-3-319-46613-2_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-46613-2_14

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-46612-5

  • Online ISBN: 978-3-319-46613-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics