Pattern-based Rewriting through Abstraction
Entity
UAM. Departamento de Ingeniería InformáticaPublisher
IOS PressDate
2016-03-04Citation
10.3233/FI-2016-1325
Fundamenta Informaticae 144.2 (2016): 109-160
ISSN
0169-2968DOI
10.3233/FI-2016-1325Funded by
This work has been partially supported by the Spanish Ministry of Economy and Competitivity with projects Go-Lite (TIN2011-24139) and Flexor (TIN2014-52129-R), the Madrid Region with project SICOMORO (S2013/ICE-3006), and the EU commission with project MONDO (FP7-ICT-2013-10, #611125).Project
Gobierno de España. TIN2011-24139; Gobierno de España. TIN2014-52129-R; Comunidad de Madrid. S2013/ICE-3006/SICOMORO; info:eu-repo/grantAgreement/EC/FP7/611125Editor's Version
http://dx.doi.org/10.3233/FI-2016-1325Subjects
Model-based development; Modelling patterns; Graphs; Trees; Category theory; Graph transformation; Refactorings; Pattern variants; InformáticaNote
Fundamenta Informaticae, vol. 144, no. 2, pp. 109-160, 2016, Copyright 2016, with permission from IOS PressRights
Copyright © 2016 IOS Press All rights reservedAbstract
Model-based development relies on models in different phases for different purposes, with modelling patterns being used to document and gather knowledge about good practices in specific domains, to analyse the quality of existing designs, and to guide the construction and refactoring of models. Providing a formal basis for the use of patterns would also support their integration with existing approaches to model transformation. To this end, we turn to the commonly used, in this context, machinery of graph transformations and provide an algebraic-categorical formalization of modelling patterns, which can express variability and required/forbidden application contexts. This allows the definition of transformation rules having patterns in left and right-hand sides, which can be used to express refactorings towards patterns, change the use of one pattern by a different one, or switch between pattern variants. A key element in our proposal is the use of operations to abstract models into patterns, so that they can be manipulated by pattern rules, thus leading to a rewriting mechanism for classes of graphs described by patterns and not just individual graphs. The proposal is illustrated with examples in object-oriented software design patterns and enterprise architecture patterns, but can be applied to any other domain where patterns are used for modelling.
Files in this item
Google Scholar:Bottoni, Paolo
-
Guerra Sánchez, Esther
-
Lara Jaramillo, Juan de
This item appears in the following Collection(s)
Related items
Showing items related by title, author, creator and subject.