Towards a Novel Model Versioning Approach based on the Separation between Linguistic and Ontological Aspects

Size: px
Start display at page:

Download "Towards a Novel Model Versioning Approach based on the Separation between Linguistic and Ontological Aspects"

Transcription

1 Towards a Novel Model Versioning Approach based on the Separation between Linguistic and Ontological Aspects Antonio Cicchetti and Federico Ciccozzi School of Innovation, Design and Engineering Mälardalen University, SE , Västerås, Sweden antonio.cicchetti@mdh.se, federico.ciccozzi@mdh.se Abstract. With the increasing adoption of Model-Driven Engineering (MDE) the support of distributed development and hence model versioning has become a necessity. MDE research investigations targeting (meta-)model versioning, conflict management, and model co-evolution have progressively recognized the importance of tackling the problem at higher abstraction level and a number of solving techniques have been proposed. However, in general existing mechanisms hit the wall of semantics, i.e. when not only syntax is involved in the manipulations the chances for providing precision and automation are remarkably reduced. In this paper we illustrate a novel version management proposal that leverages on the separation between linguistic and ontological aspects involved in a (meta- )modelling activity. In particular, we revisit the main versioning tasks in terms of the mentioned separation. The aim is to maximize the amount of versioning problems that can be automatically addressed while leaving the ones intertwined with domain-specific semantics to be solved separately, possibly by means of semi-automatic techniques and additional precision. 1 Introduction Model-Driven Engineering (MDE) promises to reduce software development complexity by shifting the focus from coding to modelling. Models become first-class citizens and they represent abstractions of real-phenomena tailored to a specific purpose. In this respect they are an appropriate composition of concepts, whose well-formedness is specified by means of a metamodel. Moreover, model transformations are exploited to manipulate models to perform analysis and generate code. Given the relevance gained by models, they are expected to be affected by the same evolutionary pressure source code experienced in the past. Therefore, if MDE approaches are not able to provide evolution support at least comparable with the one existing for text-based software development, MDE adoption would be remarkably hindered. In the latest years the need for appropriate support of model evolution has been largely recognized and addressed by a number of research works, including differencing, storing versions, managing merges and possible conflicts, supporting metamodel evolution and corresponding model migrations. In particular, model differencing covered both language-specific and agnostic cases, model changes have been tackled both

2 2 in a state-based and operation-based manner, mechanisms have been introduced to detect divergences between concurrent manipulations of the same model and provide possible reconciliation strategies. Moreover, techniques have been developed to detect metamodel changes, classify them in terms of effects on existing model instances, and provide corresponding migration countermeasures ranging from manual to automatic. Given the high abstraction level of modelling activities, mixing syntax and semantics is unavoidable; unfortunately, when semantics comes into play, versioning problems become more complex to manage and very often they cannot be dealt with automatically. In other words, automation support has typically to be reduced and user intervention is required to keep the desired degree of precision. In this paper we propose to enhance automation opportunities by defining a novel methodology for all activities involved in model versioning. The main idea is to exploit the separation between linguistic and ontological aspects of a model [1] and address them separately. In particular, linguistic aspects are those related to the structural correctness of a model, while ontological aspects pertain to the specific domain taken into account (please, see Section 2 for a more precise definition of these aspects). In this way the evolution of the linguistic part, that is expected to be mainly syntactic and hence easier to manage, can be supported by automated mechanisms, whereas the ontological part can be provided with more precise domain-specific versioning support and possibly offer semi-automatic management. Based on the separation mentioned so far, this work revisits the current techniques developed for model version management and outlines a research agenda to cover all the aspects of model versioning. The structure of the paper is as follows. Section 2 depicts the motivations underneath the proposed methodology as well as the related works in the area. In Section 3 we propose a research agenda to cover the different aspects of model versioning with our novel methodology and we conclude the paper with an outlook in Section 4. 2 Background and Related Work In MDE, models are commonly defined as abstractions of real phenomena, by means of a given modelling purpose in mind, pursuing a simplification of the reality [2]. In this respect, (meta-)modelling activities carry along not only the syntax by which concepts are expressed (either textual, graphical, or a combination of both), but also the underlying semantics of the application domain taken into account. In general these two aspects are not clearly distinguishable, since part of the semantics can be intertwined with the adopted syntax and structural constraints. Kühne proposed an alternative separation between those two aspects by introducing linguistic and ontological matters of (meta-)modelling [1]. In particular, the linguistic can be referred to constraints and rules that define the structural correctness of a model. For instance, a class must have a unique name within a model, or a relationship shall have a source and a target model element. On the contrary, ontological aspects are those pertaining to the domain taken into account, and exploit structural compositions to prescribe domain-specific well-formedness. In other words, they create a new logical abstraction level by specializing (groups of) concepts at lower levels of abstraction. Notably, the class person must have a name, a surname, and an age greater than 0 to be

3 3 Fig. 1. Motivating Scenario a valid ontological instance of the type person. It is worth noting that while linguistic aspects are invariants of the modelling activity, the ontological part is strictly coupled with the domain taken into account, and hence the purpose the modelling activity is devoted to. More importantly, ontologies implicitly define a set of semantic relationships which would need to be explicitly specified otherwise, as proposed in existing works on semantic model versioning [3]. Therefore, the semantics can be considered as direct consequence of adopting a given ontology for the domain taken into account. The idea of separating linguistic and ontological matters to reduce the complexity of modelling management, and/or to enhance reuse chances, is not new. In general these techniques have been referred to as deep or multilevel metamodelling [4, 5], to stress the fact that it could be useful to consider more than two (fixed) metamodelling layers. Based on the partition of linguistic and ontological aspects, it has been possible to support generic modelling language and transformation specifications [6, 7], and to lower the complexity of language evolution [8]. Notably, even if by exploiting different terminologies, all the mentioned works leverage on the distinction between linguistic and ontological aspects to define generic operations that are later on applied to the metamodel taken into account. In particular, linguistic manipulations can be replicated directly, while onto-

4 4 logical ones have to be bound to the concepts pertaining to the considered applicative domain. This allows to create operators over models, define constraints, model transformations, and manage the need for language evolution. In [9] this methodological approach is the foundation for a framework supporting generic model management operators, which have been implemented within the Epsilon family of (meta-)modelling languages [10]. A similar solution is developed by means of the Melanie tool [11]; also in this case the modelling environment uses a multilevel modelling approach. Moreover, the ATLAS Transformation Language has been extended to encompass predicates distinguishing between the various modelling levels. Despite the growing research interest and effort in this area, so far there has been little effort in the definition of evolution management support based on the separation between linguistic and ontological aspects. In this respect, with this paper we propose to revisit the main model versioning features in terms of such a separation to improve their efficacy. In order to better grasp the potentials of this idea, in Fig. 1 a sample evolutionary scenario is depicted. Metamodel MM a defines a language for the definition of living creatures with focus on flying animals. As it can be noticed in its original form the metaclass FlyingAnimal is specialised by the sub-types Eagle and Pigeon, both containing a layeggs operation. Let us now suppose that MM a is exposed, and concurrently evolves, in two different views, resulting in two versions of MM a, namely MM a V 1 and MM a V 2. Both view-specific metamodels undergo modifications. In case of MM a V 1, the metaclass FlyingAnimal is renamed to Bird and the operation layeggs is moved from the sub-types to the super-type. In MM a V 2, the new sub-type Bat is added together with its operation givebirth as specialisation of FlyingAnimal. These modifications result in an ontological conflict from the perspective of MM a, since a bat is both a living creature and a flying animal giving birth to live young but NOT a bird laying eggs. 3 A Research Agenda In the latest years a considerable research work has been devoted to all the activities involved in evolution management, notably model differencing, conflict management, as well as metamodel evolution and model co-evolution. Providing a survey on all those investigations goes far beyond the scope of this work, however in the next sections we outline some common principles and problems characterizing the current available solutions. In general current approaches for model versioning that can be found in the literature have to fight intrinsic semantics issues entailed by the modelling level of abstraction. This paper aims at providing the guidelines for a novel version management methodology that takes into consideration the separation between linguistic and ontological aspects involved in modelling activities. Our belief is that, by means of such a separation, domain-specific issues can be better managed thus improving degree of automation and accuracy of current version management. In this respect, the next sections also illustrate a research agenda to revisit current versioning solutions based on the separation between linguistic and ontological aspects, discussing foreseeable benefits and needs.

5 5 At this point, it is worth noting that this proposal is not excluding the current available techniques, whereas it provides additional means to better exploit those solutions. By embracing the MDE principles, versioning artefacts are models conforming to corresponding metamodels and are manipulated by means of model transformations [2]. In this respect, this work relies on a model-based representation of differences as the ones proposed in [12, 13]. In particular, we exploit the difference representation proposal in [12] because of its generative approach that allows to adapt the already existing solutions to our separation in a smooth way. The general approach we pursue is composed by two main constituents, a generic mechanism tackling the structural part and its evolution, and a domain-specific specialization that is bound to the ontology taken into account. As a consequence, general evolution patterns are described in linguistic terms, while ontological information is exploited to refine their management. 3.1 Model Differencing Model differencing has been firstly addressed by means of language-specific solutions and then generalized to language-agnostic cases. Typically, difference detection, representation, and visualisation are performed at model level of abstraction for being able to grasp user s intentions [14, 15]. State-based techniques deduce modification operations based on the old and new state of a model [16]. The element matching can result very complex and hard to make arbitrarily precise, since it is reduced to the graph homomorphism problem [17]. A way to reduce such an inherent intricacy is to adopt operation-based approaches which keep track of the operations performed by the users to modify the model [18]. The drawback of such approaches is that the differences detection is tightly coupled to the tool, since anything happening outside the tool cannot be tracked in terms of evolution information. Regardless being state- or operation-based, differencing approaches rely on structural similarities to determine evolution operations, thus requiring user intervention whenever the semantics involved in the changes is misinterpreted or cannot be grasped at all. Notably, if we consider the example shown in Fig. 1, a differencing engine would detect a rename of the FlyingAnimal class towards Bird since their subgraphs are matching from a structural perspective. However, this information does not provide any additional detail about the domain-specific consequences of such a modification. In our vision, we propose to exploit ontological information as part of the differencing detection and result. By adopting a model-based mechanism like the one proposed in [12], each metaclass of the structural part involved in the modelling activity can be extended with corresponding evolution means as shown in part Figure 2.A. In this way, we are able to express the generic concepts for model evolution without coupling this information with domain-specific details. In relation to the scenario depicted in Fig. 1, the structural differencing would detect the addition of a class named Bat together with its operation givebirth (see Figure 2.B). Analogously, the renaming of FlyingAnimal to Bird would be detected as shown in the upper part of Figure 2.C. On the contrary, the moving of the layeggs operation would be represented as a simple deletion in Pigeon and Eagle classes and as an addition in the Bird class (central and bottom parts of Fig-

6 6 Fig. 2. Difference Metamodel for an Ecore-like Formalism (A) and Structural Differences from MM a to MM a V 1 (B) and MM a to MM a V 2 (C) ure 2.C). It is worth noting that, in this difference detection step no semantics matters are involved and the evolution is observed from a pure linguistic point of view. Domain-specific (or ontological) information instead is bound later on to provide additional support to the detection mechanism. Notably, by taking into account the information coming from a selected ontology (like the one depicted in Figure 3) in the situation mentioned above, it would be possible to obtain a customized difference algorithm in which layeggs is correctly detected as moved from the two Pigeon and Eagle subclasses to Bird. Consequently, differences would not only consider modifications from a structural point of view, but also the information related to the ontological evolution. Those details can be useful for detection and visualization purposes: the ontological relationships among elements could help in distinguishing between a rename and a delete/add evolution and to show changes from a domain-specific perspective, respectively. Moreover, they become very relevant when dealing with version merging and/or co-evolution management, as discussed in the remainder of the paper. 3.2 Conflict Management Conflict management followed the same development differencing techniques did, that is detection and resolution have been addressed firstly at atomic operation level [19],

7 7 Fig. 3. Ontological Metamodel then by considering refactoring modifications [20], and eventually by supporting arbitrary semantics divergences [21, 22]. Also in this case, and possibly even more important than for differencing, when domain aspects get involved in the management of concurrent modifications the precision of structure-based solutions degrades remarkably and user intervention is unavoidable. By referring to the example illustrated in Fig. 1, a linguistic merging operation would not reveal any problem, since the involved subgraphs structures are perfectly compatible. However, by taking into account also ontological information it is possible to discover deeper issues. In particular, Bat becomes a specialization of Bird and layeggs() is inherited in the Bat class, thus arising an ontological conflict. It is very important to notice that, while the latter conflict could be solved by structural constraints (e.g., only one operation per class is admitted), the former has to be explicitly defined by the user. Even more important, in both cases the ontological aspects disclose the possibility to grasp the rationale behind the problems: Bat is not a Bird since, being a mammal, it does not layeggs() (see the ontology definition in Figure 3). Additionally, ontology information provides an hint on how to solve the problem: in fact, by preserving the FlyingAnimal class as parent of both Bird and Bat the conflict would be reconciled (as depicted in Fig. 4). From a conflict management perspective, the separation between linguistic and ontological aspects discloses very interesting research directions. Generic conflict detection and resolution strategies can be provided as based on linguistic aspects, and later on specialized taking into account ontological information. In this respect, while linguistic conflicts have to be solved since they affect the well-formedness of the merge result itself, ontological divergences can be tolerated. Therefore the separation proposed in this paper could be very useful, especially in the early stages of development, to allow collaborative development without forcing the users in taking domain-specific design decisions when their side effects are not completely clear [23].

8 8 Fig. 4. Conflict Reconciliation 3.3 Metamodel Evolution and Model Co-Evolution In MDE, metamodels are subject to the same evolutionary pressure models do. Metamodel evolutions trigger model co-evolutions, i.e. model instances have to be migrated to the newer version of the metamodel in order to recover their conformance [24]. In this scenario a correct interpretation of metamodel manipulations is of critical importance to adopt appropriate migration countermeasures. Moreover, model co-evolution may require user information to resolve particular migration cases [25]. As a consequence, a number of approaches have been introduced, supporting from (semi-)automated to manual model co-evolution approaches [26]. In the case of metamodel evolution domain-specific issues can heavily affect the migration process, especially when the whole metamodel ecosystem is involved in the evolution [27]. Therefore, recent investigations have been devoted to relax the metamodelmodel conformance relationship, even by separating linguistic and ontological aspects involved in the language definition [8]. Our idea is based on the same principle of this latter work, but instead of relaxing the conformance relationship we propose to separate linguistic and ontological aspects and address their co-evolution separately. Analogously to the model merging problem, also in this case structural co-evolution has to be performed in order to re-establish the linguistic well-formedness. Whereas, ontological issues can be solved in a separate way and by means of domain-specific solutions. It is not expectable that the separation between linguistic and ontological aspects will guarantee full automation of co-evolution operations. However, by knowing the metamodel evolution in ontological terms can help in managing it in a better way. In particular, detecting layeggs() as a moving operation rather than a delete/add manipulation would avoid loss of information in the migration stage. Moreover, by noticing that Bat can not specialise Bird for the before-mentioned reasons defined in the ontology, a migration operation would add a new metaclass Bird instead or renaming FlyingAnimal (see Figure 4). In turn, Bat would be kept as it is after the migration being still a valid instance of FlyingAnimal. Interestingly, since Bat is still a FlyingAnimal a tool co-evolution countermeasure could also decide to re-use the

9 9 same icon, or ask for a new one specific for bats. In the same way, it could be possible to notice that using the Bird icon would be erroneous from a domain semantics perspective. 4 Outlook This paper proposed the guidelines for a novel model versioning methodology based on the separation between linguistic and ontological aspects of (meta-)modelling. The idea is not ignoring what already existing and developed in the latest years for model evolution investigations; rather, it aims at enriching current solutions by adding ontological details to the manipulation information. In this respect, we remark once again that current semantics aware versioning solutions do not aim at the clear separation between structural and ontological aspects, which typically get intertwined in the metamodel definition. Moreover, we consider the ontological part as domain information to be plugged-in in the generic version management mechanism. Such approach allows to build-up generic differencing, merging, and co-evolution techniques, taking into account ontological information as a refinement step. Up to now, it has been possible to conduct small experiments by means of already available techniques (notably [12] and the Melanie tool [11]) and the results are encouraging. However, the methodology has to be validated against real-life systems to prove its efficacy. Moreover, it is not possible to exclude future needs for addressing ontological-specific evolutions, both for the detection, representation, and management, beyond the general additions, deletions, and changes. References 1. Kühne, T.: Matters of (meta-)modeling. SoSym 5 (2006) Bezivin, J.: On the Unification Power of Models. SoSym 4 (2005) Kappel, G., Kapsammer, E., Kargl, H., Kramler, G., Reiter, T., Retschitzegger, W., Schwinger, W., Wimmer, M.: Lifting metamodels to ontologies: A step to the semantic integration of modeling languages. In: Procs. of MoDELS, Genova (Italy). LNCS, Springer (2006) de Lara, J., Guerra, E.: Deep Meta-modelling with MetaDepth. In: Proc. of TOOLS, Málaga (Spain). LNCS (2010) Atkinson, C., Gutheil, M., Kennel, B.: A Flexible Infrastructure for Multilevel Language Engineering. IEEE TSE 35 (2009) de Lara, J., Guerra, E., Cuadrado, J.S.: Abstracting Modelling Languages: A Reutilization Approach. In: Proc. of CAiSE, Gdansk (Poland). LNCS, Springer (2012) Cuadrado, J.S., Guerra, E., de Lara, J.: Generic Model Transformations: Write Once, Reuse Everywhere. In: Procs. ICMT, Zurich (Switzerland), LNCS, Springer (2011) Gómez, P., Sánchez, M., Florez, H., Villalobos, J.: Co-creation of models and metamodels for enterprise architecture projects. In: Procs. of XM, ACM (2012) Rose, L.M., Guerra, E., de Lara, J., Etien, A., Kolovos, D.S., Paige, R.F.: Genericity for model management operations. SoSym 12 (2013) : Epsilon. (2013) 11. : Melanie - multi-level modeling and ontology engineering environment. (2013)

10 Cicchetti, A., Di Ruscio, D., Pierantonio, A.: A Metamodel Independent Approach to Difference Representation. JOT 6 (2007) Rivera, J., Vallecillo, A.: Representing and Operating with Model Differences. In: Procs. TOOLS EUROPE. (2008) 14. Kolovos, D., Paige, R., Polack, F.: Model comparison: a foundation for model composition and model transformation testing. In: Procs. GaMMa, Shanghai (China). (2006) Brun, C., Pierantonio, A.: Model Differences in the Eclipse Modeling Framework. UP- GRADE, The European Journal for the Informatics Professional (2008) 16. Conradi, R., Westfechtel, B.: Version Models for Software Configuration Management. ACM Computing Surveys 30 (1998) Kolovos, D.S., Di Ruscio, D., Paige, R.F., Pierantonio, A.: Different models for model matching: An analysis of approaches to support model differencing. In: Proc. 2nd CVSM 09, ICSE09 Workshop, Vancouver, Canada (2009) 18. Mens, T.: A State-of-the-Art Survey on Software Merging. IEEE Trans. Softw. Eng. 28 (2002) Alanen, M., Porres, I.: Difference and Union of Models. In: UML The Unified Modeling Language. Volume 2863 of LNCS., Springer-Verlag (2003) Mens, T., Taentzer, G., Runge, O.: Detecting Structural Refactoring Conflicts Using Critical Pair Analysis. Electr. Notes Theor. Comput. Sci 127 (2005) Altmanninger, K., Seidl, M., Wimmer, M.: A survey on model versioning approaches. International Journal of Web Information Systems (IJWIS) 5 (2009) Cicchetti, A., Di Ruscio, D., Pierantonio, A.: Managing Model Conflicts in Distributed Development. In: Procs. MoDELS. (2008) Wieland, K., Langer, P., Seidl, M., Wimmer, M., Kappel, G.: Turning conflicts into collaboration. Computer Supported Cooperative Work 22 (2013) Sendall, S., Kozaczynski, W.: Model Transformation: The Heart and Soul of Model-Driven Software Development. IEEE Software 20 (2003) Gruschko, B., Kolovos, D., Paige., R.: Towards Synchronizing Models with Evolving Metamodels. In: Procs of the Work. MODSE. (2007) 26. Rose, L.M., Herrmannsdoerfer, M., Williams, J.R., Kolovos, D.S., Garcés, K., Paige, R.F., Polack, F.A.C.: A Comparison of Model Migration Tools. In: Procs. MoDELS. LNCS, Springer (2010) Iovino, L., Pierantonio, A., Malavolta, I.: On the impact significance of metamodel evolution in mde. Journal of Object Technology 11 (2012) 3: 1 33

Towards Transformation Migration After Metamodel Evolution

Towards Transformation Migration After Metamodel Evolution Towards Transformation Migration After Metamodel Evolution David Méndez 1,2, Anne Etien 2, Alexis Muller 2, and Rubby Casallas 1 TICSw Research Group, Universidad de los Andes, Colombia {df.mendez73,rcasalla}@uniandes.edu.co

More information

A Generic Framework for Realizing Semantic Model Differencing Operators

A Generic Framework for Realizing Semantic Model Differencing Operators A Generic Framework for Realizing Semantic Model Differencing Operators Philip Langer, Tanja Mayerhofer, and Gerti Kappel Business Informatics Group, Vienna University of Technology, Vienna, Austria {langer,mayerhofer,gerti}@big.tuwien.ac.at

More information

Emergent Model-Driven Engineering Ecosystems by means of Patterns

Emergent Model-Driven Engineering Ecosystems by means of Patterns Emergent Model-Driven Engineering Ecosystems by means of Patterns Antonio Cicchetti 1 Mälardalen University, IDT, Västerås, Sweden, antonio.cicchetti@mdh.se Abstract. In Model-Driven Engineering (MDE)

More information

Models in Conflict Towards a Semantically Enhanced Version Control System for Models

Models in Conflict Towards a Semantically Enhanced Version Control System for Models Models in Conflict Towards a Semantically Enhanced ersion Control System for Models Kerstin Altmanninger Department of Telecooperation, Johannes Kepler University Linz, Austria kerstin.altmanninger@jku.at

More information

Model-Independent Differences

Model-Independent Differences Model-Independent Differences Patrick Könemann Technical University of Denmark, Informatics and Mathematical Modelling Richard Petersens Plads, DK-2800 Kgs. Lyngby, Denmark pk@imm.dtu.dk Abstract Computing

More information

Experimenting with Multi-Level Models in a Two-Level Modeling Tool

Experimenting with Multi-Level Models in a Two-Level Modeling Tool Experimenting with Multi-Level Models in a Two-Level Modeling Tool Martin Gogolla Database Systems Group, University of Bremen, Germany gogolla@informatik.uni-bremen.de Abstract. This paper discusses two

More information

Model Migration Case for TTC 2010

Model Migration Case for TTC 2010 Model Migration Case for TTC 2010 Louis M. Rose, Dimitrios S. Kolovos, Richard F. Paige, and Fiona A.C. Polack Department of Computer Science, University of York, UK. [louis,dkolovos,paige,fiona]@cs.york.ac.uk

More information

Software Language Engineering of Architectural Viewpoints

Software Language Engineering of Architectural Viewpoints Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr

More information

Model Migration Case for TTC 2010

Model Migration Case for TTC 2010 Model Migration Case for TTC 2010 Louis M. Rose, Dimitrios S. Kolovos, Richard F. Paige, and Fiona A.C. Polack Department of Computer Science, University of York, UK. [louis,dkolovos,paige,fiona]@cs.york.ac.uk

More information

AMOR Towards Adaptable Model Versioning

AMOR Towards Adaptable Model Versioning AMOR Towards Adaptable Model Versioning Kerstin Altmanninger 1, Gerti Kappel 2, Angelika Kusel 1, Werner Retschitzegger 1, Wieland Schwinger 1, Martina Seidl 2, Manuel Wimmer 2 1 Johannes Kepler University

More information

Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder

Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder Petra Brosch, Philip Langer, Martina Seidl, and Manuel Wimmer Institute of Software Technology and Interactive Systems Vienna

More information

Automating Instance Migration in Response to Ontology Evolution

Automating Instance Migration in Response to Ontology Evolution Automating Instance Migration in Response to Ontology Evolution Mark Fischer 1, Juergen Dingel 1, Maged Elaasar 2, Steven Shaw 3 1 Queen s University, {fischer,dingel}@cs.queensu.ca 2 Carleton University,

More information

State of the Art and Future Directions in Model Management Research

State of the Art and Future Directions in Model Management Research State of the Art and Future Directions in Model Management Research Japan-Austria Joint Workshop on ICT, October 18-19, 2010 Gerti Kappel Business Informatics Group Institute of Software Technology and

More information

A Traceability-Driven Approach to Model Transformation Testing

A Traceability-Driven Approach to Model Transformation Testing A Traceability-Driven Approach to Transformation Testing Nicholas D. Matragkas, Dimitrios S. Kolovos, Richard F. Paige, and Athanasios Zolotas Department of Computer Science, University of York, Deramore

More information

Multi-Level Modelling in the Modelverse

Multi-Level Modelling in the Modelverse Multi-Level Modelling in the Modelverse Simon Van Mierlo 1, Bruno Barroca 2, Hans Vangheluwe 1,2, Eugene Syriani 3, Thomas Kühne 4 1 University of Antwerp, Belgium {simon.vanmierlo,hans.vangheluwe}@uantwerpen.be

More information

Detecting Structural Refactoring Conflicts Using Critical Pair Analysis

Detecting Structural Refactoring Conflicts Using Critical Pair Analysis SETra 2004 Preliminary Version Detecting Structural Refactoring Conflicts Using Critical Pair Analysis Tom Mens 1 Software Engineering Lab Université de Mons-Hainaut B-7000 Mons, Belgium Gabriele Taentzer

More information

Towards Generating Domain-Specific Model Editors with Complex Editing Commands

Towards Generating Domain-Specific Model Editors with Complex Editing Commands Towards Generating Domain-Specific Model Editors with Complex Editing Commands Gabriele Taentzer Technical University of Berlin Germany gabi@cs.tu-berlin.de May 10, 2006 Abstract Domain specific modeling

More information

A Formal Resolution Strategy for Operation-Based Conflicts in Model Versioning Using Graph Modifications

A Formal Resolution Strategy for Operation-Based Conflicts in Model Versioning Using Graph Modifications A Formal Resolution Strategy for Operation-Based Conflicts in Model Versioning Using Graph Modifications Hartmut Ehrig 1, Claudia Ermel 1 and Gabriele Taentzer 2 1 Technische Universität Berlin, Germany

More information

Chapter 2 Overview of the Design Methodology

Chapter 2 Overview of the Design Methodology Chapter 2 Overview of the Design Methodology This chapter presents an overview of the design methodology which is developed in this thesis, by identifying global abstraction levels at which a distributed

More information

User-Driven Adaptation of Model Differencing Results

User-Driven Adaptation of Model Differencing Results User-Driven Adaptation of Model Differencing Results Klaus Müller, Bernhard Rumpe Software Engineering RWTH Aachen University Aachen, Germany http://www.se-rwth.de/ Abstract In model-based software development,

More information

Ontology-based Model Transformation

Ontology-based Model Transformation Ontology-based Model Transformation Stephan Roser Advisor: Bernhard Bauer Progamming of Distributed Systems Institute of Computer Science, University of Augsburg, Germany [roser,bauer]@informatik.uni-augsburg.de

More information

Building Model-Driven Engineering Traceability Classifications

Building Model-Driven Engineering Traceability Classifications Building Model-Driven Engineering Traceability Classifications Richard F. Paige, Gøran K. Olsen, Dimitrios S. Kolovos, Steffen Zschaler and Christopher Power Department of Computer Science, University

More information

Difference and Union of Models, 10 years later

Difference and Union of Models, 10 years later Difference and Union of Models, 10 years later Ivan Porres Åbo Akademi University ivan.porres@abo.fi MODELS 2013 Conference Miami October 3, 2013 Åbo Akademi University Domkyrkotorget 3 20500 Åbo Finland

More information

Towards using OWL DL as a metamodelling framework for ATL

Towards using OWL DL as a metamodelling framework for ATL Towards using OWL DL as a metamodelling framework for ATL Dennis Wagelaar Vrije Universiteit Brussel, Pleinlaan 2, 1050 Brussels, Belgium dennis.wagelaar@vub.ac.be Abstract. Ontologies have become increasingly

More information

Introducing MESSIA: A Methodology of Developing Software Architectures Supporting Implementation Independence

Introducing MESSIA: A Methodology of Developing Software Architectures Supporting Implementation Independence Introducing MESSIA: A Methodology of Developing Software Architectures Supporting Implementation Independence Ratko Orlandic Department of Computer Science and Applied Math Illinois Institute of Technology

More information

An Introduction to MDE

An Introduction to MDE An Introduction to MDE Alfonso Pierantonio Dipartimento di Informatica Università degli Studi dell Aquila alfonso@di.univaq.it. Outline 2 2» Introduction» What is a Model?» Model Driven Engineering Metamodeling

More information

On Using UML Profiles in ATL Transformations

On Using UML Profiles in ATL Transformations On Using UML Profiles in ATL Transformations Manuel Wimmer and Martina Seidl Business Informatics Group, Vienna University of Technology, Austria {wimmer seidl}@big.tuwien.ac.at Abstract. For defining

More information

Towards a deep metamodelling based formalization of component models

Towards a deep metamodelling based formalization of component models Towards a deep metamodelling based formalization of component models Antonio Cicchetti School of Innovation, Design and Engineering (IDT) Mälardalen University, Västerås, Sweden email: antonio.cicchetti@mdh.se

More information

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING Juan de Lara Computer Science Department Universidad Autónoma de Madrid (Spain) NWPT 12 Bergen, Norway MOTIVATION Model-Driven Engineering (MDE) is about

More information

An Evaluation of Multi-Level Modeling Frameworks for Extensible Graphical Editing Tools

An Evaluation of Multi-Level Modeling Frameworks for Extensible Graphical Editing Tools An Evaluation of Multi-Level Modeling Frameworks for Extensible Graphical Editing Tools Kosaku Kimura 1 and Kazunori Sakamoto 2 1 Fujitsu Laboratories, Japan 2 National Institute of Informatics, Japan

More information

Models versus Ontologies - What's the Difference and where does it Matter?

Models versus Ontologies - What's the Difference and where does it Matter? Models versus Ontologies - What's the Difference and where does it Matter? Colin Atkinson University of Mannheim Presentation for University of Birmingham April 19th 2007 1 Brief History Ontologies originated

More information

Primitive Operators for the Concurrent Execution of Model Transformations Based on LinTra

Primitive Operators for the Concurrent Execution of Model Transformations Based on LinTra Primitive Operators for the Concurrent Execution of Model Transformations Based on LinTra Loli Burgueño 1, Eugene Syriani 2, Manuel Wimmer 3, Jeff Gray 2, and Antonio Vallecillo 1 1 Universidad de Málaga,

More information

Executing Evaluations over Semantic Technologies using the SEALS Platform

Executing Evaluations over Semantic Technologies using the SEALS Platform Executing Evaluations over Semantic Technologies using the SEALS Platform Miguel Esteban-Gutiérrez, Raúl García-Castro, Asunción Gómez-Pérez Ontology Engineering Group, Departamento de Inteligencia Artificial.

More information

Model-Based Social Networking Over Femtocell Environments

Model-Based Social Networking Over Femtocell Environments Proc. of World Cong. on Multimedia and Computer Science Model-Based Social Networking Over Femtocell Environments 1 Hajer Berhouma, 2 Kaouthar Sethom Ben Reguiga 1 ESPRIT, Institute of Engineering, Tunis,

More information

Object-Oriented Theories for Model Driven Architecture

Object-Oriented Theories for Model Driven Architecture Object-Oriented Theories for Model Driven Architecture Tony Clark 1, Andy Evans 2, Robert France 3 1 King s College London, UK, anclark@dcs.kcl.ac.uk, 2 University of York, UK, andye@cs.york.ac.uk, 3 University

More information

Model Matching Challenge: Benchmarks for Ecore and BPMN Diagrams

Model Matching Challenge: Benchmarks for Ecore and BPMN Diagrams Model Matching Challenge: Benchmarks for Ecore and BPMN Diagrams Pit Pietsch Software Engineering Group University of Siegen pietsch@informatik.uni-siegen.de Bernhard Rumpe Software Engineering RWTH Aachen

More information

Digital Archives: Extending the 5S model through NESTOR

Digital Archives: Extending the 5S model through NESTOR Digital Archives: Extending the 5S model through NESTOR Nicola Ferro and Gianmaria Silvello Department of Information Engineering, University of Padua, Italy {ferro, silvello}@dei.unipd.it Abstract. Archives

More information

Model Driven Development of Context Aware Software Systems

Model Driven Development of Context Aware Software Systems Model Driven Development of Context Aware Software Systems Andrea Sindico University of Rome Tor Vergata Elettronica S.p.A. andrea.sindico@gmail.com Vincenzo Grassi University of Rome Tor Vergata vgrassi@info.uniroma2.it

More information

Versioning of Ordered Model Element Sets

Versioning of Ordered Model Element Sets Versioning of Ordered Model Element Sets Timo Kehrer, Udo Kelter Software Engineering Group, University of Siegen, Germany Email: {kehrer,kelter}@informatik.uni-siegen.de Abstract UML models contain various

More information

1.1 Jadex - Engineering Goal-Oriented Agents

1.1 Jadex - Engineering Goal-Oriented Agents 1.1 Jadex - Engineering Goal-Oriented Agents In previous sections of the book agents have been considered as software artifacts that differ from objects mainly in their capability to autonomously execute

More information

OCL Support in MOF Repositories

OCL Support in MOF Repositories OCL Support in MOF Repositories Joachim Hoessler, Michael Soden Department of Computer Science Technical University Berlin hoessler@cs.tu-berlin.de, soden@cs.tu-berlin.de Abstract From metamodels that

More information

Software Engineering RWTH Aachen University, Germany

Software Engineering RWTH Aachen University, Germany A Manifesto for Semantic Model Differencing Shahar Maoz, Jan Oliver Ringert, and Bernhard Rumpe Software Engineering RWTH Aachen University, Germany http://www.se-rwth.de/ Abstract. Models are heavily

More information

A UML 2 Profile for Variability Models and their Dependency to Business Processes

A UML 2 Profile for Variability Models and their Dependency to Business Processes A UML 2 Profile for Variability Models and their Dependency to Business Processes Birgit Korherr and Beate List Women s Postgraduate College for Internet Technologies Institute of Software Technology and

More information

Current trends and frameworks for modeldriven approaches to software development

Current trends and frameworks for modeldriven approaches to software development 1 Current trends and frameworks for modeldriven approaches to software development Trial Lecture Odd Petter Nord Slyngstad Trondheim, 1 st April 2011 Anita Gupta 28/05/2009 2 Overview What is a model-driven

More information

Model-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript

Model-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript Freiberg University of Mining and Technology The University of Resources. Since 1765. WEB3D 2012-17th International Conference on 3D Web Technology Model-Driven Iterative Development of 3D Web-Applications

More information

Domain Models for Laboratory Integration

Domain Models for Laboratory Integration Models for Laboratory Integration ANCA DANIELA IONITA Computers and Industrial Informatics Department University Politehnica of Bucharest Spl. Independentei 313, 060042, Bucharest ROMANIA Abstract: - Laboratory

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

Evolving Models in Model-Driven Engineering: State-of-the-Art and Future Challenges

Evolving Models in Model-Driven Engineering: State-of-the-Art and Future Challenges Evolving Models in Model-Driven Engineering: State-of-the-Art and Future Challenges Richard F. Paige, Nicholas Matragkas and Louis M. Rose Department of Computer Science, University of York, Deramore Lane,

More information

Unit Testing of Model to Text Transformations

Unit Testing of Model to Text Transformations Unit Testing of Model to Text Transformations Alessandro Tiso, Gianna Reggio, Maurizio Leotta DIBRIS Università di Genova, Italy alessandro.tiso gianna.reggio maurizio.leotta@unige.it Abstract. Assuring

More information

Two Basic Correctness Properties for ATL Transformations: Executability and Coverage

Two Basic Correctness Properties for ATL Transformations: Executability and Coverage Two Basic Correctness Properties for ATL Transformations: Executability and Coverage Elena Planas 1, Jordi Cabot 2, and Cristina Gómez 3 1 Universitat Oberta de Catalunya (Spain), eplanash@uoc.edu 2 École

More information

A Lightweight Language for Software Product Lines Architecture Description

A Lightweight Language for Software Product Lines Architecture Description A Lightweight Language for Software Product Lines Architecture Description Eduardo Silva, Ana Luisa Medeiros, Everton Cavalcante, Thais Batista DIMAp Department of Informatics and Applied Mathematics UFRN

More information

EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework

EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework Thorsten Arendt a, Florian Mantz b, Gabriele Taentzer a a Philipps-Universität Marburg, FB12 - Mathematics

More information

Definition of Visual Language Editors Using Declarative Languages

Definition of Visual Language Editors Using Declarative Languages Definition of Visual Language Editors Using Declarative Languages Torbjörn Lundkvist TUCS Turku Centre for Computer Science SoSE Graduate School on Software Systems and Engineering Department of Information

More information

Transforming Transaction Models into ArchiMate

Transforming Transaction Models into ArchiMate Transforming Transaction Models into ArchiMate Sybren de Kinderen 1, Khaled Gaaloul 1, and H.A. (Erik) Proper 1,2 1 CRP Henri Tudor L-1855 Luxembourg-Kirchberg, Luxembourg sybren.dekinderen, khaled.gaaloul,

More information

Sequence Diagram Generation with Model Transformation Technology

Sequence Diagram Generation with Model Transformation Technology , March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,

More information

Coral: A Metamodel Kernel for Transformation Engines

Coral: A Metamodel Kernel for Transformation Engines Coral: A Metamodel Kernel for Transformation Engines Marcus Alanen and Ivan Porres TUCS Turku Centre for Computer Science Department of Computer Science, Åbo Akademi University Lemminkäisenkatu 14, FIN-20520

More information

The Implications of Optimality Results for Incremental Model Synchronization for TGGs Holger Giese, Stephan Hildebrandt

The Implications of Optimality Results for Incremental Model Synchronization for TGGs Holger Giese, Stephan Hildebrandt The Implications of Optimality Results for Incremental Model Synchronization for TGGs Bi-directional transformations (BX) Theory and Applications Across Disciplines (13w5115) December 1-6, 2013 Holger

More information

BPAL: A Platform for Managing Business Process Knowledge Bases via Logic Programming

BPAL: A Platform for Managing Business Process Knowledge Bases via Logic Programming BPAL: A Platform for Managing Business Process Knowledge Bases via Logic Programming Fabrizio Smith, Dario De Sanctis, Maurizio Proietti National Research Council, IASI Antonio Ruberti - Viale Manzoni

More information

QoS-aware model-driven SOA using SoaML

QoS-aware model-driven SOA using SoaML QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira

More information

Open Reuse of Component Designs in OPM/Web

Open Reuse of Component Designs in OPM/Web Open Reuse of Component Designs in OPM/Web Iris Reinhartz-Berger Technion - Israel Institute of Technology ieiris@tx.technion.ac.il Dov Dori Technion - Israel Institute of Technology dori@ie.technion.ac.il

More information

Designing a System Engineering Environment in a structured way

Designing a System Engineering Environment in a structured way Designing a System Engineering Environment in a structured way Anna Todino Ivo Viglietti Bruno Tranchero Leonardo-Finmeccanica Aircraft Division Torino, Italy Copyright held by the authors. Rubén de Juan

More information

The goal of the Pangaea project, as we stated it in the introduction, was to show that

The goal of the Pangaea project, as we stated it in the introduction, was to show that Chapter 5 Conclusions This chapter serves two purposes. We will summarize and critically evaluate the achievements of the Pangaea project in section 5.1. Based on this, we will then open up our perspective

More information

Formalizing Software Refactoring in the Distributed Environment by aednlc Graph Grammar

Formalizing Software Refactoring in the Distributed Environment by aednlc Graph Grammar Formalizing Software Refactoring in the Distributed Environment by aednlc Graph Grammar Leszek Kotulski, Adrian Nowak Institute of Computer Science, Jagiellonian University Nawojki 11, 30-072 Kraków, Poland

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages

More information

Chapter 7. Modular Refactoring. 7.1 Introduction to Modular Refactoring

Chapter 7. Modular Refactoring. 7.1 Introduction to Modular Refactoring Chapter 7 Modular Refactoring I n this chapter, the role of Unified Modeling Language (UML) diagrams and Object Constraint Language (OCL) expressions in modular refactoring have been explained. It has

More information

Topics in Object-Oriented Design Patterns

Topics in Object-Oriented Design Patterns Software design Topics in Object-Oriented Design Patterns Material mainly from the book Design Patterns by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides; slides originally by Spiros Mancoridis;

More information

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain

More information

Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study

Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Jadson Santos Department of Informatics and Applied Mathematics Federal University of Rio Grande do Norte, UFRN Natal,

More information

Locally unique labeling of model elements for state-based model differences

Locally unique labeling of model elements for state-based model differences Locally unique labeling of model elements for state-based model differences Citation for published version (APA): Protic, Z. (2010). Locally unique labeling of model elements for state-based model differences.

More information

Panel: Pattern management challenges

Panel: Pattern management challenges Panel: Pattern management challenges Panos Vassiliadis Univ. of Ioannina, Dept. of Computer Science, 45110, Ioannina, Hellas E-mail: pvassil@cs.uoi.gr 1 Introduction The increasing opportunity of quickly

More information

Configuration management for Lyee software

Configuration management for Lyee software Knowledge-Based Systems 16 (2003) 441 447 www.elsevier.com/locate/knosys Configuration management for Lyee software V. Gruhn*, R. Ijioui, D. Peters, C. Schäfer Faculty of Mathematics and Computer Science,

More information

Domain-Specific Textual Meta-Modelling Languages for Model Driven Engineering

Domain-Specific Textual Meta-Modelling Languages for Model Driven Engineering Domain-Specific Textual Meta-Modelling Languages for Model Driven Engineering Juan de Lara and Esther Guerra Universidad Autónoma de Madrid (Spain) Abstract. Domain-specific modelling languages are normally

More information

Software Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista

Software Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista Software Architecture in Action Flavio Oquendo, Jair C Leite, Thais Batista Motivation 2 n In this book you can learn the main software architecture concepts and practices. n We use an architecture description

More information

UC Irvine UC Irvine Previously Published Works

UC Irvine UC Irvine Previously Published Works UC Irvine UC Irvine Previously Published Works Title Differencing and merging within an evolving product line architecture Permalink https://escholarship.org/uc/item/0k73r951 Authors Chen, Ping H Critchlow,

More information

A Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines

A Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines A Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines Jakob Axelsson School of Innovation, Design and Engineering, Mälardalen University, SE-721 23 Västerås, Sweden

More information

MERGING BUSINESS VOCABULARIES AND RULES

MERGING BUSINESS VOCABULARIES AND RULES MERGING BUSINESS VOCABULARIES AND RULES Edvinas Sinkevicius Departament of Information Systems Centre of Information System Design Technologies, Kaunas University of Lina Nemuraite Departament of Information

More information

Ontology Matching with CIDER: Evaluation Report for the OAEI 2008

Ontology Matching with CIDER: Evaluation Report for the OAEI 2008 Ontology Matching with CIDER: Evaluation Report for the OAEI 2008 Jorge Gracia, Eduardo Mena IIS Department, University of Zaragoza, Spain {jogracia,emena}@unizar.es Abstract. Ontology matching, the task

More information

Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes

Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes Chiara Di Francescomarino supervised by Paolo Tonella dfmchiara@fbk.eu - Fondazione Bruno Kessler, Trento, Italy Abstract.

More information

Automatically bridging UML profiles to MOF metamodels

Automatically bridging UML profiles to MOF metamodels Automatically bridging UML profiles to MOF metamodels Ivano Malavolta Gran Sasso Science Institute L Aquila (Italy) ivano.malavolta@gssi.infn.it Henry Muccini University of L Aquila Department of Information

More information

Christian Doppler Laboratory

Christian Doppler Laboratory Christian Doppler Laboratory Software Engineering Integration For Flexible Automation Systems AutomationML Models (in EMF and EA) for Modelers and Software Developers Emanuel Mätzler Institute of Software

More information

Concurrent and Distributed Model Transformations based on Linda

Concurrent and Distributed Model Transformations based on Linda Concurrent and Distributed Model Transformations based on Linda Loli Burgueño GISUM/Atenea Research Group, Universidad de Málaga Bulevar Louis Pasteur, 35 (29071), Málaga, Spain loli@lcc.uma.es http://www.lcc.uma.es/~loli

More information

A Design Rationale Representation for Model-Based Designs in Software Engineering

A Design Rationale Representation for Model-Based Designs in Software Engineering A Design Rationale Representation for Model-Based Designs in Software Engineering Adriana Pereira de Medeiros, Daniel Schwabe, and Bruno Feijó Dept. of Informatics, PUC-Rio, Rua Marquês de São Vicente

More information

Guidelines for the application of Data Envelopment Analysis to assess evolving software

Guidelines for the application of Data Envelopment Analysis to assess evolving software Short Paper Guidelines for the application of Data Envelopment Analysis to assess evolving software Alexander Chatzigeorgiou Department of Applied Informatics, University of Macedonia 546 Thessaloniki,

More information

Embracing Imperfection in Enterprise Architecture Models

Embracing Imperfection in Enterprise Architecture Models Embracing Imperfection in Enterprise Architecture Models Hector Florez, Mario Sánchez, and Jorge Villalobos Department of Systems and Computing Engineering, Universidad de los Andes, Bogotá, Colombia {ha.florez39,mar-san1,jvillalo}@uniandes.edu.co

More information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM): viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information

More information

A Graphical Specification of Model Composition With Triple Graph Grammars

A Graphical Specification of Model Composition With Triple Graph Grammars A Graphical Specification of Model Composition With Triple Graph Grammars Adil Anwar 1, Amine Benelallam 2, Akram Idani 3, Bernard Coulette 4, and Mahmoud Nassar 2 1 Siweb, Computer Science Department,

More information

Forschungsberichte der Fakultät IV Elektrotechnik und Informatik

Forschungsberichte der Fakultät IV Elektrotechnik und Informatik Forschungsberichte der Fakultät IV Elektrotechnik und Informatik A Formal Resolution Strategy for Operation-Based Conicts in Model Versioning Using Graph Modications Hartmut Ehrig 1 Claudia Ermel 1 Gabriele

More information

DSM model-to-text generation: from MetaDepth to Android with EGL

DSM model-to-text generation: from MetaDepth to Android with EGL DSM model-to-text generation: from MetaDepth to Android with EGL Rafael Ugaz Antwerp University (Belgium), rafaelugaz@gmail.com Abstract This article describes the process of a specific model-to-text transformation

More information

RIGOROUSLY AUTOMATING TRANSFORMATIONS OF UML BEHAVIOR MODELS

RIGOROUSLY AUTOMATING TRANSFORMATIONS OF UML BEHAVIOR MODELS RIGOROUSLY AUTOMATING TRANSFORMATIONS OF UML BEHAVIOR MODELS Jon Whittle 1, João Araújo 2, Ambrosio Toval 3, and Jose Luis Fernández Alemán 3 1 QSS / NASA Ames Research Center, M/S 269-2, Moffett Field,

More information

Towards xmof: Executable DSMLs based on fuml

Towards xmof: Executable DSMLs based on fuml Towards xmof: Executable DSMLs based on fuml Tanja Mayerhofer Vienna University of Technology, Austria mayerhofer@big.tuwien.ac.at Philip Langer Vienna University of Technology, Austria langer@big.tuwien.ac.at

More information

Fine-grained Software Version Control Based on a Program s Abstract Syntax Tree

Fine-grained Software Version Control Based on a Program s Abstract Syntax Tree Master Thesis Description and Schedule Fine-grained Software Version Control Based on a Program s Abstract Syntax Tree Martin Otth Supervisors: Prof. Dr. Peter Müller Dimitar Asenov Chair of Programming

More information

An Architecture for Semantic Enterprise Application Integration Standards

An Architecture for Semantic Enterprise Application Integration Standards An Architecture for Semantic Enterprise Application Integration Standards Nenad Anicic 1, 2, Nenad Ivezic 1, Albert Jones 1 1 National Institute of Standards and Technology, 100 Bureau Drive Gaithersburg,

More information

Science of Computer Programming

Science of Computer Programming Science of Computer Programming ( ) Contents lists available at ScienceDirect Science of Computer Programming journal homepage: www.elsevier.com/locate/scico A framework for evolution of modelling languages

More information

Cover Page. The handle holds various files of this Leiden University dissertation

Cover Page. The handle   holds various files of this Leiden University dissertation Cover Page The handle http://hdl.handle.net/1887/22891 holds various files of this Leiden University dissertation Author: Gouw, Stijn de Title: Combining monitoring with run-time assertion checking Issue

More information

Why Consider Implementation-Level Decisions in Software Architectures?

Why Consider Implementation-Level Decisions in Software Architectures? 1. Abstract Why Consider Implementation-Level Decisions in Software Architectures? Nikunj Mehta Nenad Medvidović Marija Rakić {mehta, neno, marija}@sunset.usc.edu Department of Computer Science University

More information

POLITECNICO DI TORINO Repository ISTITUZIONALE

POLITECNICO DI TORINO Repository ISTITUZIONALE POLITECNICO DI TORINO Repository ISTITUZIONALE Tool-automation for supporting the DSL learning process Original Tool-automation for supporting the DSL learning process / Tomassetti F.; Figueroa C.; Ratiu

More information

Whole Platform Foundation. The Long Way Toward Language Oriented Programming

Whole Platform Foundation. The Long Way Toward Language Oriented Programming Whole Platform Foundation The Long Way Toward Language Oriented Programming 2008 by Riccardo Solmi made available under the Creative Commons License last updated 22 October 2008 Outline Aim: Engineering

More information

A Formal V&V Framework for UML Models Based on Model Transformation Techniques

A Formal V&V Framework for UML Models Based on Model Transformation Techniques A Formal V&V Framework for UML Models Based on Model Transformation Techniques Soon-Kyeong Kim and David Carrington Information Technology and Electrical Engineering The University of Queensland, St. Lucia,

More information

Towards Code Generation from Design Models for Embedded Systems on Heterogeneous CPU-GPU Platforms

Towards Code Generation from Design Models for Embedded Systems on Heterogeneous CPU-GPU Platforms Towards Code Generation from Design Models for Embedded Systems on Heterogeneous CPU-GPU Platforms Federico Ciccozzi Mälardalen University, MRTC Västerås, Sweden federico.ciccozzi@mdh.se Abstract The complexity

More information

Knowledge representation Semantic networks and frames

Knowledge representation Semantic networks and frames Knowledge representation Semantic networks and frames CmSc310 Artificial Intelligence 1. Introduction: What is knowledge? The science that studies various issues about knowledge is called epistemology.

More information