Skip to main content
Log in

Model-driven software engineering: concepts and tools for modeling-in-the-large with package diagrams

  • Regular Paper
  • Published:
Computer Science - Research and Development

Abstract

Model-driven software engineering intends to reduce development effort by generating executable code from high-level models. However, models for non-trivial problems are still very large and require sophisticated support for modeling-in-the-large—a challenge which has not yet gained sufficient attention in model-driven software engineering. In response to this need, we have developed a set of tools for modeling-in-the-large based on UML package diagrams. The tool set comprises a stand-alone tool, which serves as a graphical editor for package diagrams, an integration tool, which controls the consistency of the model with its architecture defined in the package diagram, and a metrics tool, which is used to measure the coupling of model packages. Our tools for modeling-in-the-large complement the functionality of an environment for model-driven software engineering which so far has focused on supporting modeling-in-the-small. The overall environment has been applied successfully in a project which is dedicated to model-driven engineering of a product line for software configuration management systems.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Allen R, Garlan D (1997) A formal basis for architectural connection. ACM Trans Softw Eng Methodol 6(3):213–249

    Article  Google Scholar 

  2. Amelunxen C, Königs A, Rötschke T, Schürr A (2006) MOFLON: A standard-compliant metamodeling framework with graph transformations. In: Rensink A, Warmer J (eds) Model driven architecture—foundations and applications: second European conference, ECMDA-FA 2006. Lecture notes in computer science, vol 4066. Springer, Bilbao, pp 361–375

    Chapter  Google Scholar 

  3. Antkiewicz M, Czarnecki K (2004) FeaturePlugin: feature modeling plug-in for eclipse. In: Proceedings of the 2004 OOPSLA workshop on eclipse technology eXchange (eclipse’04). ACM Press, New York, pp 67–72

    Chapter  Google Scholar 

  4. Bézivin J, Jouault F, Rosenthal P, Valduriez P (2005) Modeling in the large and modeling in the small. In: Model driven architecture, European MDA workshops: foundations and applications, MDAFA 2003 and MDAFA 2004. Lecture notes in computer science, vol 3599. Twente, The Netherlands, pp 33–46

    Chapter  Google Scholar 

  5. Booch G, Rumbaugh J, Jacobson I (1999) The unified modeling language user guide. Object technology series. Addison-Wesley, Amsterdam

    Google Scholar 

  6. Briand LC, Daly JW, Wüst J (1998) A unified framework for cohesion measurement in object-oriented systems. Empir Softw Eng 3(1):65–117

    Article  Google Scholar 

  7. Buchmann T (2010) Modelle und Werkzeuge für modellgetriebene Softwareproduktlinien am Beispiel von Softwarekonfigurationsverwaltungssystemen. PhD Thesis, University of Bayreuth, Germany

  8. Buchmann T, Dotor A (2006) Building graphical editors with GEF and Fujaba. In: Giese H, Westfechtel B (eds) Fujaba days 2006. Bayreuth, Germany, pp 47–50

    Google Scholar 

  9. Buchmann T, Dotor A, Klinke M (2009) Supporting modeling in the large in Fujaba. In: van Gorp P (ed) Proceedings of the 7th international Fujaba days. Eindhoven, The Netherlands, pp 59–63

    Google Scholar 

  10. Buchmann T, Dotor A, Westfechtel B (2007) Model-driven development of graphical tools—Fujaba meets GMF. In: Filipe J, Helfert M, Shishkov B (eds) Proceedings of the second international conference on software and data technologies (ICSOFT 2007). INSTICC Press, Barcelona, pp 425–430

    Google Scholar 

  11. Buchmann T, Dotor A, Westfechtel B (2008) Experiences with modeling in the large in Fujaba. In: Aßmann U, Johannes J, Zündorf A (eds) Fujaba days 2008—6th international Fujaba days, Dresden, Germany, pp 5–9

    Google Scholar 

  12. Buchmann T, Dotor A, Westfechtel B (2009) Model-driven development of software configuration management systems—a case study in model-driven engineering. In: Proceedings of the 4th international conference on software and data technologies (ICSOFT 2009), vol 1. INSTICC Press, Sofia, pp 309–316

    Google Scholar 

  13. Chang KC, Cohen SG, Hess JA, Novak WE, Peterson AS (1990) Feature-oriented domain analysis ({FODA}) feasibility study. Tech Rep CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA

  14. Clements P (1996) A survey of architecture description languages. In: Proceedings of the 8th ACM/IEEE international workshop on software specification and design (IWSSD 1996). IEEE Computer Society Press, Schloss Velen, pp 16–25

    Chapter  Google Scholar 

  15. Collins-Sussman B, Fitzpatrick BW, Pilato CM (2004) Version control with subversion. O’Reilly, Sebastopol

    Google Scholar 

  16. Cuadrado JS, Molina JG (2009) Modularization of model transformations through a phasing mechanism. Softw Syst Model 8(3):325–345

    Article  Google Scholar 

  17. DeRemer F, Kron H (1976) Programming-in-the-large versus programming-in-the-small. IEEE Trans Softw Eng 2(2):80–86

    Article  MATH  MathSciNet  Google Scholar 

  18. Dingel J, Diskin Z, Zito A (2008) Understanding and improving UML package merge. Softw Syst Model 7(4):443–467

    Article  Google Scholar 

  19. Dotor A (2011) Entwurf und Modellierung einer Produktlinie von Software-Konfigurations-Management-Systemen. PhD thesis, University of Bayreuth, Germany

  20. D’Souza DF, Wills AC (1998) Objects, components, and frameworks with UML—the Catalysis approach. Addison-Wesley, Upper Saddle River

    Google Scholar 

  21. The Eclipse Foundation: Eclipse UML2. http://www.eclipse.org/uml2

  22. Estublier J, Casallas R (1994) The Adele configuration manager. In: Tichy WF (ed) Configuration management. Trends in software, vol 2. Wiley, New York, pp 99–134

    Google Scholar 

  23. Geiger L, Buchmann T, Dotor A (2007) EMF code generation with Fujaba. In: Geiger L, Giese H, Zündorf A (eds) Fujaba days 2007, Kassel, Germany, pp 25–29

    Google Scholar 

  24. Gronback RC (2009) Eclipse modeling project: a domain-specific language (DSL) toolkit, 1st edn. The eclipse series. Addison-Wesley, Boston

    Google Scholar 

  25. Hemel Z, Kats LC, Groenewegen DM, Visser E (2010) Code generation by model transformation: a case study in transformation modularity. Softw Syst Model 9(3):375–402

    Article  Google Scholar 

  26. Hofmeister C, Nord RL, Soni D (1999) Describing software architecture with UML. In: Donohoe P (ed) Proceedings of the TC2 first working IFIP conference on software architecture ({WICSA 1999}). IFIP conference proceedings, vol 140. Kluwer, San Antonio, pp 145–160

    Google Scholar 

  27. IBM Corp.: Rational Rose. http://www.ibm.com/software/awdtools/developer/rose/java/index.html

  28. IBM Corp.: Rational Software Architect. http://www.ibm.com/software/awdtools/swarchitect/standard

  29. Kandé MM, Strohmeier A (2000) Towards a UML profile for software architecture descriptions. In: Evans A, Kent S, Selic B (eds) Proceedings of the third international conference on the Unified Modeling Language (UML 2000). Lecture notes in computer science, vol 1939. Springer, New York, pp 513–527

    Google Scholar 

  30. Kolovos DS, Paige RF, Pollack FA (2008) The grand challenge of scalability for model driven engineering. In: Chaudron MR (ed) Models in software engineering, workshops and symposia at MODELS 2008. Lecture notes in computer science, vol 5421. Springer, Toulouse, pp 48–53

    Google Scholar 

  31. Kruchten P, Obbink H, Stafford J (2006) The past, present, and future of software architecture. Commun ACM 23(2):22–30

    Google Scholar 

  32. Medvidovic N, Taylor RN (2000) A classification and comparison framework for software architecture description languages. IEEE Trans Softw Eng 26(1):70–93

    Article  Google Scholar 

  33. Mezini M, Beuche D, Moreira A (eds) (2009) Proceedings 1st international workshop on model-driven product line engineering (MDPLE 2009). In: CTIT proceedings, Twente, The Netherlands

  34. No Magic Inc.: MagicDraw. http://www.magicdraw.com

  35. Object Management Group, Needham MA (2010) OMG Unified Modeling Language (OMG UML), Infrastructure, Version 2.3, formal/2010-05-03 edn

  36. Object Management Group, Needham MA (2010) OMG Unified Modeling Language (OMG UML), Superstructure, Version 2.3, formal/2010-05-05 edn

  37. Prieto-Diaz R, Neighbors JM (1987) Module interconnection languages. J Syst Softw 6(4):307–334

    Article  Google Scholar 

  38. Shaw M, Clements P (2006) The golden age of software architecture. Commun ACM 23(2):31–39

    Google Scholar 

  39. Soyatec—Open Solution Company: eUML2. http://www.soyatec.com/euml2

  40. Sparx Systems: Sparx Enterprise Architect. http://www.sparxsystems.eu

  41. Steinberg D, Budinsky F, Paternostro M, Merks E (2009) EMF eclipse modeling framework, 2nd edn. The eclipse series. Addison-Wesley, Upper Saddle River

    Google Scholar 

  42. Tichy WF (1985) RCS—a system for version control. Softw Pract Exp 15(7):637–654

    Article  MathSciNet  Google Scholar 

  43. TOPCASED Consortium: TOPCASED: The open-source toolkit for critical systems. http://www.topcased.org

  44. Tratt L, Gogolla M (eds) (2010) Theory and practice of model transformations—third international conference, ICMT 2010. In: Lecture notes in computer science, vol 6142. Springer, Malaga

  45. TU Darmstadt Fachgebiet Echtzeitsysteme: MOFLON. http://www.moflon.org

  46. Vesperman J (2006) Essential CVS. O’Reilly, Sebastopol

    Google Scholar 

  47. Wagelaar D, van der Straeten R, Deridder D (2010) Module superimposition: a composition technique for rule-based model transformation languages. Softw Syst Model 9(3):285–309

    Article  Google Scholar 

  48. Weisemöller I, Schürr A (2008) Formal definition of MOF 2.0 metamodel components and composition. In: Czarnecki K, Ober I, Bruel JM, Uhl A, Völter M (eds) Model driven engineering languages and systems—11th international conference, MODELS 2008. Lecture notes in computer science, vol 5301. Springer, Toulouse, pp 386–400

    Google Scholar 

  49. White BA (2003) Software configuration management strategies and Rational ClearCase. Object technology series. Addison-Wesley, Reading

    Google Scholar 

  50. Zündorf A (2001) Rigorous object oriented software development. Tech Rep, University of Paderborn, Germany

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Thomas Buchmann.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Buchmann, T., Dotor, A. & Westfechtel, B. Model-driven software engineering: concepts and tools for modeling-in-the-large with package diagrams. Comput Sci Res Dev 29, 73–93 (2014). https://doi.org/10.1007/s00450-011-0201-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00450-011-0201-1

Keywords

Navigation