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.
Similar content being viewed by others
References
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
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
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
Goldschmidt, T., Becker, S., Burger, E.: View-based modelling–a tool oriented analysis. In: Proceedings of the Modellierung 2012, Bamberg (2012)
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
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
EMF Facet. http://www.eclipse.org/facet/
EMF Model Query. http://www.eclipse.org/modeling/emf/?project=query
EMF Query 2. http://wiki.eclipse.org/EMF_Query2Home
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
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
Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification. Object Management Group (2011). http://www.omg.org/spec/QVT/1.1/
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
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
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
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
Atlas Model Weaver. http://www.eclipse.org/gmt/amw/
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)
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
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)
Rumbaugh, J., et al.: Object-Oriented Modeling and Design. 1. Prentice Hall, Englewood Cliffs (1991).
Coleman, D., et al.: Object-Oriented Development: The Fusion Method. Prentice Hall, Englewood Cliffs (1994)
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
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
OMG Unified Modeling Language (UML). Object Management Group (2011). http://www.omg.org/spec/UML/2.4.1/
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
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
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
ISO/IEC/IEEE Std 42010:2011: Systems and Software Engineering-Architecture Description. IEEE, Los Alamitos (2011)
Stahl, T., Völte, M.: Model-Driven Software Development. Wiley, New York (2006)
OMG Model Driven Architecture. http://www.omg.org/mda/
Eclipse Modeling Framework. Version 2.7. http://www.eclipse.org/modeling/emf/
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)
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
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
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
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
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
Atlas Transformation Language. http://www.eclipse.org/atl/
OMG Object Constraint Language (OCL): Object Management Group (2012). http://www.omg.org/spec/OCL/2.3.1/
Meta Object Facility (MOF) Core: Object Management Group (2011). http://www.omg.org/spec/MOF/2.4.1/
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
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
The Modeling Workflow Engine 2 (MWE2). http://www.eclipse.org/Xtext/documentation/2_0_0/118-mwe-in-depth.php
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
Johnson, R., et al.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley (1995). ISBN: 9780201633610
Mendenhall, W., Beaver, R.J., Beaver, B.M.: Introduction to Probability and Statistics, 12th edn. Cengage Learning, Stamford (2005). ISBN 9780534418700
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
Codd, E.F.: The Relational Model for Database Management: Version 2. Addison-Wesley/Longman, Boston (1990). ISBN 0-201-14192-2
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
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
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
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
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
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
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
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
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
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
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
Hein, C., Ritter, T., Wagner, M.: Model-driven tool integration with ModelBus. In: Workshop Future Trends of Model-Driven Development (2009)
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
Eclipse Connected Data Objects (CDO). http://wiki.eclipse.org/CDO
Cypher Query Language. http://docs.neo4j.org/chunked/stable/cypher-query-lang.html
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
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)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Prof. Colin Atkinson.
Rights and permissions
About this article
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
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-014-0413-5