On the modularization provided by concern-oriented reuse

Reuse is essential in modern software engineering, and hence also in the context of model-driven engineering (MDE). Concern-Oriented Reuse (CORE) proposes a new way of structuring model-driven software development where models of the system are modularized by domains of abstraction within units of reuse called concerns. Within a concern, models are further decomposed and modularized by views and features. High-level concerns can reuse lower-level concerns, and models within a concern can extend other models belonging to the same concern, resulting in complex inter- and intra-concern dependencies. To clearly specify what dependencies are allowed between models belonging to the same or to different concerns, CORE advocates a three-part interface to describe each concern (variation, customization, and usage interfaces). This paper presents the CORE metamodel that formalizes the CORE concepts and enables the integration of different mod- elling languages within the CORE framework.

[1]  Ekkart Kindler,et al.  Behavior Modeling -- Foundations and Applications , 2015, Lecture Notes in Computer Science.

[2]  Jean-Marc Jézéquel,et al.  Model Driven Engineering , 2017, Encyclopedia of GIS.

[3]  Matthias Schöttle,et al.  On the Challenges of Composing Multi-View Models , 2013 .

[4]  David Lorge Parnas,et al.  A technique for software module specification with examples , 1972, CACM.

[5]  Thomas Ledoux,et al.  Aspect-Oriented Software Development , 2003 .

[6]  Wisam Al Abed,et al.  Concern-Driven Software Development with jUCMNav and TouchRAM , 2014, Demos@MoDELS.

[7]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[8]  Daniel Amyot,et al.  Composing Goal and Scenario Models with the Aspect-Oriented User Requirements Notation Based on Syntax and Semantics , 2013, Aspect-Oriented Requirements Engineering.

[9]  Jörg Kienzle,et al.  Concern-Oriented Software Design , 2013, MoDELS.

[10]  Jörg Kienzle,et al.  On the Reuse of Goal Models , 2015, SDL Forum.

[11]  Stuart Kent,et al.  Model Driven Engineering , 2002, IFM.

[12]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

[13]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[14]  Wisam Najm Al-din Abed,et al.  Concern-Oriented Behaviour Modelling with Sequence Diagrams and Protocol Models , 2015, BM-FA.

[15]  Matthias Schöttle,et al.  Feature modelling and traceability for concern-driven software development with TouchCORE , 2015, MODULARITY.

[16]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[17]  Jacques Klein,et al.  Aspect-oriented multi-view modeling , 2009, AOSD '09.