Design Pattern Support for Model-Driven Development

Timo Vepsäläinen, Seppo Kuikka


Design patterns document solutions to recurring design and development challenges. UML, as the de-facto modeling language in software development, aims to support defining and using patterns in models. However, as is demonstrated in the paper, the support is not sufficient for all kinds of patterns and all meaningful ways to use patterns. In this paper, the use of design patterns is suggested for documentation purposes in Model-Driven Development. The pattern support of UML is complemented with an approach that does not constrain the structures that can be used in patterns. The approach, which is tool supported in a model-driven development environment for control applications, also enables specification of part of the information content of patterns that UML leaves intact. The developed tool support includes instantiating and highlighting patterns in models and gathering of traceability information on use of patterns.


  1. Agerbo, E., Cornils, A. 1998, How to preserve the benefits of design patterns, ACM SIGPLAN Notices, ACM, pp. 134-143.
  2. Alexander, C. 1979, The timeless way of building.
  3. Alexander, C., Ishikawa, S., Silverstein, M. 1977, Pattern languages, Center for Environmental Structure, vol. 2.
  4. Appleton, B. 1997, Patterns and software: Essential concepts and terminology, Object Magazine Online, vol. 3, no. 5, pp. 20-25.
  5. Briand, L.C., Labiche, Y., Sauve, A. 2006, Guiding the application of design patterns based on uml models, Software Maintenance, 2006. ICSM'06. 22nd IEEE International Conference on, IEEE.
  6. Buschmann, F. 1999, Pattern oriented software architecture: a system of patters, Ashish Raut.
  7. Dong, J. 2002, UML extensions for design pattern compositions, Journal of object technology, vol. 1, no. 5, pp. 151-163.
  8. Dong, J., Yang, S. 2006, QVT based model transformation for design pattern evolutions, in: Proceedings of the 10th IASTED international conference on Internet and multimedia systems and applications.
  9. France, R.B., Kim, D., Ghosh, S., Song, E. 2004, A UMLbased pattern specification technique, Software Engineering, IEEE Transactions on, vol. 30, no. 3, pp. 193-206.
  10. France, R., Chosh, S., Song, E., Kim, D. 2003, A metamodeling approach to pattern-based model refactoring, Software, IEEE, vol. 20, no. 5, pp. 52-58.
  11. Gamma, E., Helm, R., Johnson, R.,Vlissides, J. 1994, Design Patterns: Elements of Reusable ObjectOriented Software. Pearson Education.
  12. Harrison, N.B., Avgeriou, P., Zdlin, U. 2007, Using patterns to capture architectural decisions, Software, IEEE, vol. 24, no. 4, pp. 38-45.
  13. Jansen, A., Bosch, J. 2005, Software architecture as a set of architectural design decisions, Software Architecture, 2005. WICSA 2005. 5th Working IEEE/IFIP Conference onIEEE, pp. 109.
  14. Jing, D., Sheng, Y., Kang, Z. 2007, Visualizing design patterns in their applications and compositions, Software Engineering, IEEE Transactions on, vol. 33, no. 7, pp. 433-453.
  15. Kajsa, P., Majtás, L. 2010, Design patterns instantiation based on semantics and model transformations, in SOFSEM 2010: Theory and Practice of Computer Science, Springer, pp. 540-551.
  16. Lasater, C.G. 2010, Design patterns, Jones & Bartlett Publishers.
  17. No Magic, Inc. 2014, MagicDraw. Available: [2014, 1/23].
  18. OMG, 2011. Unified Modeling Language Specification 2.4.1: SuperStructure, Object Management Group.
  19. Rauhamäki, J., Vepsäläinen, T., Kuikka, S. 2013, Patterns for safety and control system cooperation, Proceedings of VikingPLoP 2013 Conference.
  20. Sunyé, G., Le Guennec, A., Jézéquel, J. 2000, Design patterns application in UML, in ECOOP 2000- Object-Oriented Programming Springer, pp. 44-62.
  21. Tsantalis, N., Chatzigeorgiou, A., Stephanides, G., Halkidis, S.T. 2006, Design pattern detection using similarity scoring, Software Engineering, IEEE Transactions on, vol. 32, no. 11, pp. 896-909.
  22. Vepsäläinen, T., Hästbacka, D., Kuikka, S. 2008, Tool Support for the UML Automation Profile - For Domain-Specific Software Development in Manufacturing, Software Engineering Advances, 2008. ICSEA 7808. The Third International Conference on.
  23. Vepsäläinen, T., Kuikka, S. 2011, Towards model-based development of safety-related control applications, Emerging Technologies & Factory Automation (ETFA), 2011 IEEE 16th Conference on.
  24. Xue-Bin, W., Quan-Yuan, W., Huai-Min, W., Dian-Xi, S. 2007, Research and implementation of design patternoriented model transformation, Computing in the Global Information Technology, 2007. ICCGI 2007. International Multi-Conference on, IEEE.

Paper Citation

in Harvard Style

Vepsäläinen T. and Kuikka S. (2014). Design Pattern Support for Model-Driven Development . In Proceedings of the 9th International Conference on Software Engineering and Applications - Volume 1: ICSOFT-EA, (ICSOFT 2014) ISBN 978-989-758-036-9, pages 277-286. DOI: 10.5220/0004990002770286

in Bibtex Style

author={Timo Vepsäläinen and Seppo Kuikka},
title={Design Pattern Support for Model-Driven Development},
booktitle={Proceedings of the 9th International Conference on Software Engineering and Applications - Volume 1: ICSOFT-EA, (ICSOFT 2014)},

in EndNote Style

JO - Proceedings of the 9th International Conference on Software Engineering and Applications - Volume 1: ICSOFT-EA, (ICSOFT 2014)
TI - Design Pattern Support for Model-Driven Development
SN - 978-989-758-036-9
AU - Vepsäläinen T.
AU - Kuikka S.
PY - 2014
SP - 277
EP - 286
DO - 10.5220/0004990002770286