Model Transformation

14,000,000 Leading Edge Experts on the ideXlab platform

Scan Science and Technology

Contact Leading Edge Experts & Companies

Scan Science and Technology

Contact Leading Edge Experts & Companies

The Experts below are selected from a list of 334941 Experts worldwide ranked by ideXlab platform

Daniel Strüber - One of the best experts on this subject based on the ideXlab platform.

  • Model clone detection for rule-based Model Transformation languages
    Software & Systems Modeling, 2019
    Co-Authors: Daniel Strüber, Vlad Acreţoaie, J. Plöger
    Abstract:

    Cloning is a convenient mechanism to enable reuse across and within software artifacts. On the downside, it is also a practice related to severe long-term maintainability impediments, thus generating a need to identify clones in affected artifacts. A large variety of clone detection techniques have been proposed for programming and Modeling languages; yet no specific ones have emerged for Model Transformation languages. In this paper, we explore clone detection for rule-based Model Transformation languages, including graph-based ones, such as Henshin, and hybrid ones, such as ATL. We introduce use cases for such techniques in the context of constructive and analytical quality assurance, and a set of key requirements we derived from these use cases. To address these requirements, we describe our customization of existing Model clone detection techniques: We consider eScan, an a-priori-based technique, ConQAT, a heuristic technique, and a hybrid technique based on a combination of eScan and ConQAT. We compare these techniques in a comprehensive experimental evaluation, based on three realistic Henshin rule sets, and a comprehensive body of examples from the ATL Transformation zoo. Our results indicate that our customization of ConQAT enables the efficient detection of the considered clones, without sacrificing accuracy. With our contributions, we present the first evidence on the usefulness of Model clone detection for the quality assurance of Model Transformations and pave the way for future research efforts at the intersection of Model clone detection and Model Transformation.

  • VMTL: a language for end-user Model Transformation
    Software & Systems Modeling, 2018
    Co-Authors: Vlad Acreţoaie, Harald Storrle, Daniel Strüber
    Abstract:

    Model Transformation is a key enabling technology of Model-Driven Engineering (MDE). Existing Model Transformation languages are shaped by and for MDE practitioners—a user group with needs and capabilities which are not necessarily characteristic of Modelers in general. Consequently, these languages are largely ill-equipped for adoption by end-user Modelers in areas such as requirements engineering, business process management, or enterprise architecture. We aim to introduce a Model Transformation language addressing the skills and requirements of end-user Modelers. With this contribution, we hope to broaden the application scope of Model Transformation and MDE technology in general. We discuss the profile of end-user Modelers and propose a set of design guidelines for Model Transformation languages addressing them. We then introduce Visual Model Transformation Language (VMTL) following these guidelines. VMTL draws on our previous work on the usability-oriented Visual Model Query Language. We implement VMTL using the Henshin Model Transformation engine, and empirically investigate its learnability via two user experiments and a think-aloud protocol analysis. Our experiments, although conducted on computer science students exhibiting only some of the characteristics of end-user Modelers, show that VMTL compares favorably in terms of learnability with two state-of the-art Model Transformation languages: Epsilon and Henshin. Our think-aloud protocol analysis confirms many of the design decisions adopted for VMTL, while also indicating possible improvements.

  • ModelS - Model Transformation for end-user Modelers with VMTL
    Proceedings of the ACM IEEE 19th International Conference on Model Driven Engineering Languages and Systems - MODELS '16, 2016
    Co-Authors: Vlad Acretoaie, Harald Storrle, Daniel Strüber
    Abstract:

    Models facilitate communication between software development project stakeholders by providing abstraction and precision. The Model-Driven Engineering (MDE) paradigm goes one step further, placing Model Transformation at the heart of software development [3]. Consequently, many Model Transformation languages (MTLs) and tools have been developed in the context of MDE. Their origin has shaped them profoundly: the application scenarios, Modeling languages and Model types considered, intended audience and their required capabilities, available tools, and the topics attracting scientific interest all bear the marks of MDE.

  • rulemerger automatic construction of variability based Model Transformation rules
    Fundamental Approaches to Software Engineering, 2016
    Co-Authors: Daniel Strüber, Gabriele Taentzer, M. Chechik, Julia Rubin, Thorsten Arendt, J. Plöger
    Abstract:

    Unifying similar Model Transformation rules into variability-based ones can improve both the maintainability and the performance of a Model Transformation system. Yet, manual identification and unification of such similar rules is a tedious and error-prone task. In this paper, we propose a novel merge-refactoring approach for automating this task. The approach employs clone detection for identifying overlapping rule portions and clustering for selecting groups of rules to be unified. Our instantiation of the approach harnesses state-of-the-art clone detection and clustering techniques and includes a specialized merge construction algorithm. We formally prove correctness of the approach and demonstrate its ability to produce high-quality outcomes in twoi¾źreal-lifei¾źcase-studies.

  • transparent Model Transformation turning your favourite Model editor into a Transformation tool
    International Conference on Model Transformation, 2015
    Co-Authors: Vlad Acretoaie, Harald Storrle, Daniel Strüber
    Abstract:

    Current Model Transformation languages are supported by dedicated editors, often closely coupled to a single execution engine. We introduce Transparent Model Transformation, a paradigm enabling Modelers to specify Transformations using a familiar tool: their Model editor. We also present VMTL, the first Transformation language implementing the principles of Transparent Model Transformation: syntax, environment, and execution transparency. VMTL works by weaving a Transformation aspect into its host Modeling language. We show how our implementation of VMTL turns any Model editor into a flexible Model Transformation tool sharing the Model editor's benefits, transparently.

Daniel Varro - One of the best experts on this subject based on the ideXlab platform.

  • Survey and classification of Model Transformation tools
    Software & Systems Modeling, 2019
    Co-Authors: Nafiseh Kahani, Juergen Dingel, Mojtaba Bagherzadeh, James R. Cordy, Daniel Varro
    Abstract:

    Model Transformation lies at the very core of Model-driven engineering, and a large number of Model Transformation languages and tools have been proposed over the last few years. These tools can be used to develop, transform, merge, exchange, compare, and verify Models and metaModels. In this paper, we present a comprehensive catalog of existing metaModel-based Transformation tools and compare them using a qualitative framework. We begin by organizing the 60 tools we identified into a general classification based on the Transformation approach used. We then compare these tools using a number of particular facets, where each facet belongs to one of six different categories and may contain several attributes. The results of the study are discussed in detail and made publicly available in a companion website with a capability to search for tools using the specified facets as search criteria. Our study provides a thorough picture of the state-of-the-art in Model Transformation techniques and tools. Our results are potentially beneficial to many stakeholders in the Modeling community, including practitioners, researchers, and Transformation tool developers.

  • Model Transformation by example using inductive logic programming
    Software & Systems Modeling, 2009
    Co-Authors: Zoltán Balogh, Daniel Varro
    Abstract:

    Model Transformation by example is a novel approach in Model-driven software engineering to derive Model Transformation rules from an initial prototypical set of interrelated source and target Models, which describe critical cases of the Model Transformation problem in a purely declarative way. In the current paper, we automate this approach using inductive logic programming (Muggleton and Raedt in J Logic Program 19-20:629–679, 1994) which aims at the inductive construction of first-order clausal theories from examples and background knowledge.

  • the Model Transformation language of the viatra2 framework
    Science of Computer Programming, 2007
    Co-Authors: Daniel Varro, Andras Balogh
    Abstract:

    We present the Model Transformation language of the VIATRA2 framework, which provides a rule- and pattern-based Transformation language for manipulating graph Models by combining graph Transformation and abstract state machines into a single specification paradigm. This language offers advanced constructs for querying (e.g. recursive graph patterns) and manipulating Models (e.g. generic Transformation and meta-Transformation rules) in unidirectional Model Transformations frequently used in formal Model analysis to carry out powerful abstractions.

  • advanced Model Transformation language constructs in the viatra2 framework
    ACM Symposium on Applied Computing, 2006
    Co-Authors: Andras Balogh, Daniel Varro
    Abstract:

    We present the Model Transformation language of the VIATRA2 framework, which provides a rule and pattern-based Transformation language for manipulating graph Models by combining graph Transformation and abstract state machines into a single specification paradigm. This language offers advanced constructs for querying (e.g. recursive graph patterns) and manipulating Models (e.g. generic and meta Transformation rules) in unidirectional Model Transformations frequently used in formal Model analysis to carry out powerful abstractions. In addition, powerful language constructs are provided for multi-level metaModeling to design Modeling languages and template-based code generation.

  • applying a Model Transformation taxonomy to graph Transformation technology
    Generative Programming and Component Engineering, 2006
    Co-Authors: Tom Mens, Daniel Varro, Pieter Van Gorp, Gabor Karsai
    Abstract:

    A taxonomy of Model Transformations was introduced in [T. Mens, P.V. Gorp, A taxonomy of Model Transformation, in: Proc. Int'l Workshop on Graph and Model Transformation (GraMoT 2005), Electronic Notes in Computer Science (2005)]. Among others, such a taxonomy can help developers in deciding which language, forma lism, tool or mechanism is best suited to carry out a particular Model Transformation activity. In this paper we apply the taxonomy to the technique of graph Transformation, and we exemplify it by referring to four representative graph Transformation tools. As a byproduct of our analysis, we discuss how well each of the considered tools carry out the activity of Model Transformation.

Zhibin Yang - One of the best experts on this subject based on the ideXlab platform.

  • From AADL to timed abstract state machine: a certified Model Transformation
    Journal of Systems and Software, 2014
    Co-Authors: Zhibin Yang, Jean-paul Bodeveix, Jean-pierre Talpin
    Abstract:

    Architecture Analysis and Design Language (AADL) is an architecture description language standard forembedded realtimesystems widely used in the avionics and aerospace industry to Model safetycriticalapplications. To verify and analyze the AADL Models, Model Transformation technologies are often usedto automatically extract a formal specification suitable for analysis and verification. In this process, itremains a challenge to prove that the Model Transformation preserves the semantics of the initial AADLModel or, at least, some of the specific properties or requirements it needs to satisfy. This paper presents amachine checked semanticspreservingTransformation of a subset of AADL (including periodic threads,data port communications, mode changes, and the AADL behavior annex) into Timed Abstract StateMachines (TASM). The AADL standard itself lacks at present a formal semantics to make this translationvalidation possible. Our contribution is to bridge this gap by providing two formal semantics for the subsetof AADL. The execution semantics provided by the AADL standard is formalized as Timed TransitionSystems (TTS). This formalization gives a reference expression of AADL semantics which can be comparedwith the TASMbasedtranslation (for verification purpose). Finally, the verified Transformation ismechanized in the theorem prover Coq.

  • from aadl to timed abstract state machines a verified Model Transformation
    Journal of Systems and Software, 2014
    Co-Authors: Zhibin Yang, Jean-paul Bodeveix, Kai Hu, Lei Pi, Jean-pierre Talpin
    Abstract:

    Architecture Analysis and Design Language (AADL) is an architecture description language standard for embedded real-time systems widely used in the avionics and aerospace industry to Model safety-critical applications. To verify and analyze the AADL Models, Model Transformation technologies are often used to automatically extract a formal specification suitable for analysis and verification. In this process, it remains a challenge to prove that the Model Transformation preserves the semantics of the initial AADL Model or, at least, some of the specific properties or requirements it needs to satisfy. This paper presents a machine checked semantics-preserving Transformation of a subset of AADL (including periodic threads, data port communications, mode changes, and the AADL behavior annex) into Timed Abstract State Machines (TASM). The AADL standard itself lacks at present a formal semantics to make this translation validation possible. Our contribution is to bridge this gap by providing two formal semantics for the subset of AADL. The execution semantics provided by the AADL standard is formalized as Timed Transition Systems (TTS). This formalization gives a reference expression of AADL semantics which can be compared with the TASM-based translation (for verification purpose). Finally, the verified Transformation is mechanized in the theorem prover Coq.

Jean-pierre Talpin - One of the best experts on this subject based on the ideXlab platform.

  • From AADL to timed abstract state machine: a certified Model Transformation
    Journal of Systems and Software, 2014
    Co-Authors: Zhibin Yang, Jean-paul Bodeveix, Jean-pierre Talpin
    Abstract:

    Architecture Analysis and Design Language (AADL) is an architecture description language standard forembedded realtimesystems widely used in the avionics and aerospace industry to Model safetycriticalapplications. To verify and analyze the AADL Models, Model Transformation technologies are often usedto automatically extract a formal specification suitable for analysis and verification. In this process, itremains a challenge to prove that the Model Transformation preserves the semantics of the initial AADLModel or, at least, some of the specific properties or requirements it needs to satisfy. This paper presents amachine checked semanticspreservingTransformation of a subset of AADL (including periodic threads,data port communications, mode changes, and the AADL behavior annex) into Timed Abstract StateMachines (TASM). The AADL standard itself lacks at present a formal semantics to make this translationvalidation possible. Our contribution is to bridge this gap by providing two formal semantics for the subsetof AADL. The execution semantics provided by the AADL standard is formalized as Timed TransitionSystems (TTS). This formalization gives a reference expression of AADL semantics which can be comparedwith the TASMbasedtranslation (for verification purpose). Finally, the verified Transformation ismechanized in the theorem prover Coq.

  • from aadl to timed abstract state machines a verified Model Transformation
    Journal of Systems and Software, 2014
    Co-Authors: Zhibin Yang, Jean-paul Bodeveix, Kai Hu, Lei Pi, Jean-pierre Talpin
    Abstract:

    Architecture Analysis and Design Language (AADL) is an architecture description language standard for embedded real-time systems widely used in the avionics and aerospace industry to Model safety-critical applications. To verify and analyze the AADL Models, Model Transformation technologies are often used to automatically extract a formal specification suitable for analysis and verification. In this process, it remains a challenge to prove that the Model Transformation preserves the semantics of the initial AADL Model or, at least, some of the specific properties or requirements it needs to satisfy. This paper presents a machine checked semantics-preserving Transformation of a subset of AADL (including periodic threads, data port communications, mode changes, and the AADL behavior annex) into Timed Abstract State Machines (TASM). The AADL standard itself lacks at present a formal semantics to make this translation validation possible. Our contribution is to bridge this gap by providing two formal semantics for the subset of AADL. The execution semantics provided by the AADL standard is formalized as Timed Transition Systems (TTS). This formalization gives a reference expression of AADL semantics which can be compared with the TASM-based translation (for verification purpose). Finally, the verified Transformation is mechanized in the theorem prover Coq.

J. Plöger - One of the best experts on this subject based on the ideXlab platform.

  • Model clone detection for rule-based Model Transformation languages
    Software & Systems Modeling, 2019
    Co-Authors: Daniel Strüber, Vlad Acreţoaie, J. Plöger
    Abstract:

    Cloning is a convenient mechanism to enable reuse across and within software artifacts. On the downside, it is also a practice related to severe long-term maintainability impediments, thus generating a need to identify clones in affected artifacts. A large variety of clone detection techniques have been proposed for programming and Modeling languages; yet no specific ones have emerged for Model Transformation languages. In this paper, we explore clone detection for rule-based Model Transformation languages, including graph-based ones, such as Henshin, and hybrid ones, such as ATL. We introduce use cases for such techniques in the context of constructive and analytical quality assurance, and a set of key requirements we derived from these use cases. To address these requirements, we describe our customization of existing Model clone detection techniques: We consider eScan, an a-priori-based technique, ConQAT, a heuristic technique, and a hybrid technique based on a combination of eScan and ConQAT. We compare these techniques in a comprehensive experimental evaluation, based on three realistic Henshin rule sets, and a comprehensive body of examples from the ATL Transformation zoo. Our results indicate that our customization of ConQAT enables the efficient detection of the considered clones, without sacrificing accuracy. With our contributions, we present the first evidence on the usefulness of Model clone detection for the quality assurance of Model Transformations and pave the way for future research efforts at the intersection of Model clone detection and Model Transformation.

  • Variability-based Model Transformation: formal foundation and application
    Formal Aspects of Computing, 2018
    Co-Authors: D. Strüber, J. Rubin, T. Arendt, M. Chechik, G. Taentzer, J. Plöger
    Abstract:

    Model Transformation systems often contain Transformation rules that are substantially similar to each other, causing maintenance issues and performance bottlenecks. To address these issues, we introduce variability-based Model Transformation . The key idea is to encode a set of similar rules into a compact representation, called variability-based rule . We provide an algorithm for applying such rules in an efficient manner. In addition, we introduce rule merging, a three-component mechanism for enabling the automatic creation of variability-based rules. Our rule application and merging mechanisms are supported by a novel formal framework, using category theory to provide precise definitions and to prove correctness. In two realistic application scenarios, the created variability-based rules enabled considerable speedups, while also allowing the overall specifications to become more compact.

  • rulemerger automatic construction of variability based Model Transformation rules
    Fundamental Approaches to Software Engineering, 2016
    Co-Authors: Daniel Strüber, Gabriele Taentzer, M. Chechik, Julia Rubin, Thorsten Arendt, J. Plöger
    Abstract:

    Unifying similar Model Transformation rules into variability-based ones can improve both the maintainability and the performance of a Model Transformation system. Yet, manual identification and unification of such similar rules is a tedious and error-prone task. In this paper, we propose a novel merge-refactoring approach for automating this task. The approach employs clone detection for identifying overlapping rule portions and clustering for selecting groups of rules to be unified. Our instantiation of the approach harnesses state-of-the-art clone detection and clustering techniques and includes a specialized merge construction algorithm. We formally prove correctness of the approach and demonstrate its ability to produce high-quality outcomes in twoi¾źreal-lifei¾źcase-studies.