ABSTRACT
Modularizing concerns is a common strategy to lower application complexity: it results in modules that are easy to maintain, to adapt, and to replace. In some cases, these modules can also be expressed with very expressive concern-specific languages that manage high level concepts. On the other hand, modularization also requires tools and languages to describe the relations and interactions between concerns and to reconstruct the full application semantics. Ideally, these descriptions should be written using languages that work with the same concepts than the concern specific languages. Cumbia is a metamodel-based platform to build applications that support multiple concern specific languages. However, the composition and coordination mechanism between concerns depends on a too low level language called CCL: since it is built around very basic and generic coordination primitives, using the language requires a strong technical knowledge of the platform, and it is difficult to implement tools that offer meaningful validations on compositions. In this paper we propose a composition metamodel to characterize, at metamodel level, the composition and coordination of Cumbia models. By adopting this solution, the mentioned problems are solved, and domain experts can have a more active role in the creation of models for Cumbia-based applications.
- E. Bodden. Concern specific languages and their implementation with ABC. In SPLAT 2005: Software engineering Properties of Languages for Aspect Technologies at AOSD 2005, March 2005.Google Scholar
- T. Cottenier, A. van den Berg, and T. Elrad. The Motorola WEAVR: Model Weaving in a Large Industrial Context. International Conference on Aspect Oriented Software Development, Industry Track, 2007.Google Scholar
- M. D. Del Fabro, J. Bézivin, and P. Valduriez. Weaving Models with the Eclipse AMW plugin. In Eclipse Modeling Symposium, Eclipse Summit Europe, 2006.Google Scholar
- J. Estublier, A. D. Ionita, and G. Vega. A domain composition approach. In Proceedings of the International Workshop on Applications of UML/MDA to Software Systems (UMSS), June 2005.Google Scholar
- J. Estublier, A. D. Ionita, and G. Vega. Relationships for Domain Reuse and Composition. Journal of Research and Practice in Information Technology, 38: 287--302, 2006.Google Scholar
- E. Evans. Domain-Driven Design: Tacking Complexity In the Heart of Software. Addison-Wesley Longman Publishing Co., Inc., Boston, MA Google ScholarDigital Library
- C. Jeanneret, R. France, and B. Baudry. A reference process for model composition. In AOM '08: Proceedings of the 2008 AOSD Workshop on Aspect-Oriented Modeling, pages 1--6, New York, NY, USA, 2008. ACM. Google ScholarDigital Library
- G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J. Loingtier, and J. Irwin. Aspect-Oriented Programming. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP), volume 1241 of LNCS. Springer-Verlag, 1997.Google Scholar
- M. Sánchez, C. Jiménez, J. Villalobos, and D. Deridder. Extensibility in model-based business process engines. In M. Oriol and B. Meyer, editors, TOOLS EUROPE 2009, volume 33 of LNBIP, pages 157--174, Berlin - Heidelberg, July 2009. Springer-Verlag.Google Scholar
- M. Sánchez and J. Villalobos. Cumbia Navigation Language. Technical Report ISIS-001-2010, Universidad de los Andes - Departamento de Ingeniería de Sistemas y Computación, 2010. http://cumbia.uniandes.edu.co/index.php?option=com_content&task=view&id=15&Itemid=27.Google Scholar
- M. Sánchez, J. Villalobos, and D. Romero. A State Machine Based Coordination Model applied to Workflow Applications. Avances en Sistemas e Informática, 6(1): 35--44, June 2009.Google Scholar
- The Eclipse Foundation. Xtext - Language Development Framework. http://www.eclipse.org/Xtext/, 2010.Google Scholar
Index Terms
- Executable model composition: a multilevel approach
Recommendations
Metamodel dependencies for executable models
TOOLS'11: Proceedings of the 49th international conference on Objects, models, components, patternsCumbia is our platform to develop applications based on multiple, coordinated executable models which can be described using different languages. The coordination of models is achieved by describing how their elements should interact, and mapping those ...
A Formal Approach to Model Composition Applied to VUML
ICECCS '11: Proceedings of the 2011 16th IEEE International Conference on Engineering of Complex Computer SystemsSeveral approaches adopted by the software engineering community rely on the principle of multi-modeling which allows to separate concerns and to model a system as a set of less complex sub-models. Model composition is a crucial activity in Model Driven ...
Toward a Generic Metamodel for Model Composition Using Transformation
One of the recent trends used in the iterative software development is a model presenting the system at the different levels of abstraction. In this context, model composition is assumed to take one or more models as its input and integrated output ...
Comments