Skip to main content
Log in

View-based model-driven software development with ModelJoin

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Fragmentation of information across instances of different metamodels poses a significant problem for software developers and leads to a major increase in effort of transformation development. Moreover, compositions of metamodels tend to be incomplete, imprecise, and erroneous, making it impossible to present it to users or use it directly as input for applications. Customized views satisfy information needs by focusing on a particular concern, and filtering out information that is not relevant to this concern. For a broad establishment of view-based approaches, an automated solution to deal with separate metamodels and the high complexity of model transformations is necessary. In this paper, we present the ModelJoin approach for the rapid creation of views. Using a human-readable textual DSL, developers can define custom views declaratively without having to write model transformations or define a bridging metamodel. Instead, a metamodel generator and higher-order transformations create annotated target metamodels and the appropriate transformations on-the-fly. The resulting views, which are based on these metamodels, contain joined instances and can effectively express concerns unforseen during metamodel design. We have applied the ModelJoin approach and validated the textual DSL in a case study using the Palladio Component Model.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

Notes

  1. http://www.eclipse.org/modeling/emf/.

  2. http://sdqweb.ipd.kit.edu/wiki/ModelJoin.

  3. http://sdqweb.ipd.kit.edu/wiki/ModelJoin/Experiment.

  4. http://code.google.com/p/m2m-quality/.

References

  1. France, R., Rumpe, B.: Does model driven engineering tame complexity? English. Softw. Syst. Model. 6.1, 1–2 (2007). ISSN: 1619-1366. doi:10.1007/s10270-006-0041-9

  2. Bendix, L., Emanuelsson, P.: Requirements for practical model merge–an industrial perspective. In: Schürr, A., Selic, B. (eds.) Model Driven Engineering Languages and Systems, vol. 5795. LNCS, pp. 167–180. Springer, Berlin (2009). ISBN: 978-3-642-04424-3. doi:10.1007/978-3-642-04425-0_13

  3. Yang, Y., et al.: Phase distribution of software development effort. In: Proceedings of the Second ACMIEEE International Symposium on Empirical Software Engineering and Measurement (ESEM ’08), pp. 61–69. ACM, Kaiserslautern, Germany (2008). ISBN: 978- 1-59593-971-5. doi:10.1145/1414004.1414016

  4. Goldschmidt, T., Becker, S., Burger, E.: View-based modelling–a tool oriented analysis. In: Proceedings of the Modellierung 2012, Bamberg (2012)

  5. Atkinson, C., Stoll, D., Bostan, P.: Orthographic software modeling: a practical approach to view-based development. In: Maciaszek, L.A., González-Pérez, C., Jablonski, S. (Eds.) Evaluation of Novel Approaches to Software Engineering, vol. 69, Communications in Computer and Information Science, pp. 206–219. Springer, Berlin (2010). ISBN: 978-3-642-14819-4

  6. Burger, E.: Flexible views for view-based model-driven development. In: Proceedings of the 18th International Doctoral Symposium on Components and Architecture (WCOP ’13), pp. 25–30. ACM, Vancouver, BC, Canada (2013). ISBN: 978-1-4503-2125-9. doi:10.1145/2465498.2465501

  7. EMF Facet. http://www.eclipse.org/facet/

  8. EMF Model Query. http://www.eclipse.org/modeling/emf/?project=query

  9. EMF Query 2. http://wiki.eclipse.org/EMF_Query2Home

  10. Hegedüs, Á., et al.: Query-driven soft interconnection of EMF models. In: France, R., et al. (eds.) Model Driven Engineering Languages and Systems, Vol. 7590. Lecture Notes in Computer Science, pp. 134–150. Springer, Berlin (2012). ISBN: 978-3-642-33665-2. doi:10.1007/978-3-642-33666-9_10

  11. Clasen, C., Jouault, F., Cabot, J.: VirtualEMF: a model virtualization tool. In: De Troyer, O., et al. (eds.) Advances in Conceptual Modeling. Recent Developments and New Directions, vol. 6999. LNCS, pp. 332–335. Springer, Berlin (2011). ISBN: 978-3-642-24573-2. doi:10.1007/978-3-642-24574-9_43

  12. Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification. Object Management Group (2011). http://www.omg.org/spec/QVT/1.1/

  13. Jouault, F., Kurtev, I.: Transforming models with ATL. In: Satellite Events at the MoDELS 2005 Conference, pp. 128–138. Springer, Berlin (2006). http://www.springerlink.com/index/7143g735r4j59463.pdf

  14. Herrmann, C., et al.: An algebraic view on the semantics of model composition. In: Akehurst, D., Vogel, R., Paige, R. (eds.) Model Driven Architecture-Foundations and Applications, Vol. 4530. Lecture Notes in Computer Science, pp. 99–113. Springer, Berlin (2007). ISBN: 978-3-540-72900-6. doi:10.1007/978-3-540-72901-3_8

  15. Bézivin, J., et al.: A canonical scheme for model composition. In: Rensink, A., Warmer, J. (eds.) Model Driven Architecture-Foundations and Applications, Vol. 4066. LNCS, pp. 346–360. Springer, Berlin (2006). ISBN: 978-3-540-35909-8. doi:10.1007/11787044_26

  16. Fleurey, F., et al.: A generic approach for automatic model composition. In: Giese, H. (ed.) Models in Software Engineering, vol. 5002. LNCS, pp. 7–15. Springer, Berlin (2008). ISBN: 978-3-540-69069-6. doi:10.1007/978-3-540-69073-3_2

  17. Atlas Model Weaver. http://www.eclipse.org/gmt/amw/

  18. Bouzitouna, S., Gervais, M.-P., Blanc, X.: Model reuse in MDA. In: Proceedings of the International Conference on Software Engineering Research and Practice (SERP’05). Las Vegas, USA (2005)

  19. Becker, S., Koziolek, H., Reussner, R.: The Palladio Component Model for model-driven performance prediction. J. Syst. Softw. 82, 3–22 (2009). doi:10.1016/j.jss.2008.03.066

    Article  Google Scholar 

  20. Finkelstein, A., et al.: Viewpoints: a framework for integrating multiple perspectives in system development. Int. J. Softw. Eng. Knowl. Eng. 2(1), 31–57 (1992)

    Article  Google Scholar 

  21. Rumbaugh, J., et al.: Object-Oriented Modeling and Design. 1. Prentice Hall, Englewood Cliffs (1991).

  22. Coleman, D., et al.: Object-Oriented Development: The Fusion Method. Prentice Hall, Englewood Cliffs (1994)

    Google Scholar 

  23. Kruchten, P.B.: The 4+1 view model of architecture. In: Software IEEE 12.6, 42–50 (1995). ISSN: 0740-7459. doi:10.1109/52.469759

  24. Kruchten, P.: The Rational Unified Process: An Introduction, 3rd ed., 6. pr. Addison-Wesley Object Technology Series. Addison-Wesley, Upper Saddle River (2007). ISBN: 0-321-19770-4

  25. OMG Unified Modeling Language (UML). Object Management Group (2011). http://www.omg.org/spec/UML/2.4.1/

  26. Atkinson, C., et al.: Modeling components and component-based systems in KobrA. In: Rausch, A., et al. (eds.) The Common Component Modeling Example, vol. 5153. Lecture Notes in Computer Science, pp. 54–84. Springer, Berlin (2008). doi:10.1007/978-3-540-85289-6_4

  27. Kramer, M.E., Burger, E., Langhammer, M.: View-centric engineering with synchronized heterogeneous models. In: Proceedings of the 1st Workshop on View-Based, Aspect-Oriented and Orthographic Software Modelling (VAO ’13), pp. 5:1–5:6. ACM, Montpellier, France (2013). ISBN: 978-1-4503-2070-2. doi:10.1145/2489861.2489864

  28. ISO/IEC Standard for Systems and Software Engineering-Recommended Practice for Architectural Description of Software-Intensive Systems. In: ISO/IEC 42010 IEEE Std 1471-2000 First edition 2007-07-15 (July 2007), pp. c1–c24. doi:10.1109/IEEESTD.2007.386501

  29. ISO/IEC/IEEE Std 42010:2011: Systems and Software Engineering-Architecture Description. IEEE, Los Alamitos (2011)

  30. Stahl, T., Völte, M.: Model-Driven Software Development. Wiley, New York (2006)

    Google Scholar 

  31. OMG Model Driven Architecture. http://www.omg.org/mda/

  32. Eclipse Modeling Framework. Version 2.7. http://www.eclipse.org/modeling/emf/

  33. Goldschmidt, T., Becker, S., Uhl, A.: Incremental updates for textual modeling of large scale models. In: Proceedings of the 15th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS 2010)–Poster Paper. IEEE (2010)

  34. Reddy, M., et al.: A methodology for integration of heterogeneous databases. IEEE Trans. Knowl. Data Eng. 6.6, 920–933 (1994). ISSN: 1041-4347. doi:10.1109/69.334882

  35. Burger, E., Gruschko, B.: A change metamodel for the evolution of MOF-based metamodels. In: Engels, G., Karagiannis, D., Mayr, H.C. (eds.) Proceedings of Modellierung 2010, vol. P-161. GI-LNI. Klagenfurt, Austria (2010). http://sdqweb.ipd.kit.edu/publications/pdfs/burger2010a.pdf

  36. Herrmannsdörfer, M., Vermolen, S.D., Wachsmuth, G.: An extensive catalog of operators for the coupled evolution of metamodels and models. In: Proceedings of the Third International Conference on Software Language Engineering (SLE’10), pp. 163–182. Springer, Berlin (2011). ISBN: 978-3-642-19439-9. http://www4.in.tum.de/herrmama/publications/SLE2010_herrmannsdoerfer_catalog_coupled_operators.pdf

  37. Happe, L., et al.: Completion and extension techniques for enterprise software performance engineering. In: Brunetti, G., et al. (eds.) Future Business Software-Current Trends in Business Software Development. Progress in IS. Springer, New York (2014). ISBN 978-3-319-04143-8. doi:10.1007/978-3-319-04144-5

  38. Reussner, R., et al.: The Palladio Component Model. Tech. rep. Karlsruhe: KIT, Fakultät für Informatik (2011). http://digbib.ubka.uni-karlsruhe.de/volltexte/1000022503

  39. Atlas Transformation Language. http://www.eclipse.org/atl/

  40. OMG Object Constraint Language (OCL): Object Management Group (2012). http://www.omg.org/spec/OCL/2.3.1/

  41. Meta Object Facility (MOF) Core: Object Management Group (2011). http://www.omg.org/spec/MOF/2.4.1/

  42. Burger, E., Toshovski, A.: Differencebased conformance checking for ecore metamodels. In: Proceedings of Modellierung 2014, Vol. 225. GI-LNI. Vienna, Austria (2014). http://sdqweb.ipd.kit.edu/publications/pdfs/burger2014a.pdf

  43. Knöpfel, A., Gröne, B., Tabeling, P.: Fundamental Modeling Concepts: Effective Communication of IT Systems. Wiley, New York (2006). ISBN 978-0-470-02710-3

    Google Scholar 

  44. The Modeling Workflow Engine 2 (MWE2). http://www.eclipse.org/Xtext/documentation/2_0_0/118-mwe-in-depth.php

  45. Burger, E., et al.: ModelJoin. A Textual Domain-Specific Language for the Combination of Heterogeneous Models. Tech. rep. 1. Karlsruhe Institute of Technology, Faculty of Informatics (2014). http://digbib.ubka.uni-karlsruhe.de/volltexte/1000037908

  46. Johnson, R., et al.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley (1995). ISBN: 9780201633610

  47. Mendenhall, W., Beaver, R.J., Beaver, B.M.: Introduction to Probability and Statistics, 12th edn. Cengage Learning, Stamford (2005). ISBN 9780534418700

    MATH  Google Scholar 

  48. Bancilhon, F., Spyratos, N.: Update semantics of relational views. ACM Trans. Database Syst. 6.4, 557–575 (1981). ISSN: 0362-5915. doi:10.1145/319628.319634

  49. Codd, E.F.: The Relational Model for Database Management: Version 2. Addison-Wesley/Longman, Boston (1990). ISBN 0-201-14192-2

    MATH  Google Scholar 

  50. Lechtenbörger, J.: The impact of the constant complement approach towards view updating. In: Proceedings of the Twenty-Second ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems (PODS ’03), pp. 49–55. ACM, New York, NY, USA (2003). ISBN: 1-58113-670-6. doi:10.1145/773153.773159

  51. Nathan Foster, J., et al.: Combinators for bi-directional tree transformations: a linguistic approach to the view update problem. SIGPLAN Not. 40.1, 233–246 (2005). ISSN: 0362-1340. doi:10.1145/1047659.1040325

  52. Sheth, A.P., Larson, J.A.: Federated database systems for managing distributed, heterogeneous, and autonomous databases. ACM Comput. Surv. 22(3), 183–236 (1990). ISSN: 0360-0300. doi:10.1145/96602.96604

  53. Cicchetti, A., Ciccozzi, F., Leveque, T.: A hybrid approach for multi-view modeling. In: Electronic Communications of the EASST Recent Advances in Multi-paradigm Modeling (MPM2011), vol. 50 (2011). ISSN: 1863-2122. http://journal.ub.tu-berlin.de/eceasst/article/view/738

  54. Alanen, M., Porres, I.: Difference and union of models. In: Stevens, P., Whittle, J., Booch, G. (Eds.) Proceedings of the “UML 2003”—The Unified Modeling Language, Modeling Languages and Applications 6th International Conference, San Francisco, CA, USA (October 20–24, 2003), Vol. 2863. LNCS, pp. 2–17. Springer, Berlin/Heidelberg (2003). ISBN: 978-3-540-20243-1

  55. Brun, C., Pierantonio, A.: Model differences in the eclipse modelling framework. In: UPGRADE the European J for the Informatics Professional IX.2, pp. 29–34 (2008). http://www.cepis.org/upgrade/files/2008-II-pierantonio.pdf

  56. Cicchetti, A., et al.: Automating co-evolution in model-driven engineering. In: 12th International IEEE Enterprise Distributed Object Computing Conference, pp. 222–231. IEEE (2008). doi:10.1109/EDOC.2008.44. http://www.computer.org/portal/web/csdl/doi/10.1109/EDOC.2008.44

  57. Kolovos, D., Paige, R., Polack, F.: Merging models with the epsilon merging language (EML). In: Nierstrasz, O., et al. (Eds.) Model Driven Engineering Languages and Systems, Vol. 4199. Lecture Notes in Computer Science, pp. 215–229. Springer, Berlin (2006). ISBN: 978-3-540-45772-5. doi:10.1007/11880240_16

  58. Kienzle, J., Al Abed, W., Klein, J.: Aspect-oriented multi-view modeling. In: Proceedings of the 8th ACM International Conference on Aspect-Oriented Software Development (AOSD ’09), pp. 87–98. ACM, Charlottesville, VA, USA (2009). ISBN: 978-1-60558-442-3. doi:10.1145/1509239.1509252

  59. Didonet Del Fabro, M., Valduriez, P.: Towards the efficient development of model transformations using model weaving and matching transformations. Softw. Syst. Model. 8(3), 305–324 (2008). ISSN: 1619-1366. doi:10.1007/s10270-008-0094-z. http://www.springerlink.com/index/10/s10270-008-0094-z

  60. Kühne, T., et al.: Explicit transformation modeling. In: Proceedings of the 2009 International Conference on Models in Software Engineering (MODELS’ 09), pp. 240–255. Springer, Denver, CO (2010). ISBN: 3-642-12260-4-642-12260-6. doi:10.1007/978-3-642-12261-3_23

  61. Hein, C., Ritter, T., Wagner, M.: Model-driven tool integration with ModelBus. In: Workshop Future Trends of Model-Driven Development (2009)

  62. Malavolta, I., et al.: Providing Architectural Languages and Tools Interoperability Through Model Transformation Technologies. Tech. rep. 1, pp. 119–140 (2010). doi:10.1109/TSE.2009.51

  63. Eclipse Connected Data Objects (CDO). http://wiki.eclipse.org/CDO

  64. Cypher Query Language. http://docs.neo4j.org/chunked/stable/cypher-query-lang.html

  65. Amstel, M., et al.: Performance in model transformations: experiments with ATL and QVT. In: Cabot, J., Visser, E. (Eds.) Theory and Practice of Model Transformations, Vol. 6707. Lecture Notes in Computer Science, pp. 198–212. Springer, Berlin, Heidelberg (2011). ISBN: 978-3-642-21731-9. doi:10.1007/978-3-642-21732-6_14

  66. Westermann, D., et al.: Automated inference of goal-oriented performance prediction functions. In: Proceedings of the 27th IEEE/ACM International Conference On Automated Software Engineering (ASE 2012). Essen, Germany (2012)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Erik Burger.

Additional information

Communicated by Prof. Colin Atkinson.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Burger, E., Henss, J., Küster, M. et al. View-based model-driven software development with ModelJoin. Softw Syst Model 15, 473–496 (2016). https://doi.org/10.1007/s10270-014-0413-5

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-014-0413-5

Keywords

Navigation