![]() Gottmann, Susann ![]() Doctoral thesis (2016) The development, maintenance and documentation of complex systems is commonly supported by model-driven approaches where system properties are captured by visual models at different layers of abstraction ... [more ▼] The development, maintenance and documentation of complex systems is commonly supported by model-driven approaches where system properties are captured by visual models at different layers of abstraction and from different perspectives as proposed by the Object Management Group (OMG) and its model-driven architecture. Generally, a model is a concrete view on the system from a specific perspective in a particular domain. We focus on visual models in the form of diagrams and whose syntax is defined by domain-specific modelling languages (DSLs). Different models may represent different views on a system, i.e., they may be linked to each other by sharing a common set of information. Therefore, models that are expressed in one DSL may be transformed to interlinked models in other DSLs and furthermore, model updates may be synchronised between different domains. Concretely, this thesis presents the transformation and synchronisation of source code (abstract syntax trees, ASTs) written in the Satellite-Procedure & Execution Language (SPELL) to flow charts (code visualisation) and vice versa (code generation) as the result of an industrial case study. The transformation and synchronisation are performed based on existing approaches for model transformations and synchronisations between two domains in the theoretic framework of graph transformation where models are represented by graphs. Furthermore, extensions to existing approaches are presented for treating non-determinism in concurrent model synchronisations. Finally, the existing results for model transformations and synchronisations between two domains are lifted to the more general case of an arbitrary number of domains or models containing views, i.e., a model in one domain may be transformed to models in several domains or to all other views, respectively, and model updates in one domain may be synchronised to several other domains or to all other views, respectively. [less ▲] Detailed reference viewed: 118 (10 UL)![]() Gottmann, Susann ![]() ![]() in Proceedings of the 5th International Workshop on Bidirectional Transformations (2016), 1571 Models are the keystones in model-driven systems development. They describe systems at different layers of abstraction and with a focus to different domains. For each domain, dedicated domain specific ... [more ▼] Models are the keystones in model-driven systems development. They describe systems at different layers of abstraction and with a focus to different domains. For each domain, dedicated domain specific visual modelling languages are used for model definitions with the idea to separate concerns to different domain experts. This enables precise problem and requirement definitions and should decrease efforts in developing and validating systems. We focus on multi-view models that are in relationship with source models by triple graph grammars. A multi-view model provides different views of the source model at different layers of abstraction but within the same DSL which is typically different from the DSL of the source model. In practice, elements in different views may overlap. We present an informal methodology for consistently propagating updates from one view to the other views and also to the source domain. We motivate our approach by multi-view models in a hospital scenario. [less ▲] Detailed reference viewed: 153 (19 UL)![]() Hermann, Frank ![]() ![]() ![]() Report (2014) Software translation is a challenging task. Several requirements are important - including automation of the execution, maintainability of the translation patterns, and, most importantly, reliability ... [more ▼] Software translation is a challenging task. Several requirements are important - including automation of the execution, maintainability of the translation patterns, and, most importantly, reliability concerning the correctness of the translation. Triple graph grammars (TGGs) have shown to be an intuitive, wellde ned technique for model translation. In this paper, we leverage TGGs for industry scale software translations. The approach is implemented using the Eclipse-based graph transformation tool Henshin and has been successfully applied in a large industrial project with the satellite operator SES on the translation of satellite control procedures. We evaluate the approach regarding requirements from the project and performance on a complete set of procedures of one satellite. [less ▲] Detailed reference viewed: 303 (49 UL)![]() Hermann, Frank ![]() ![]() ![]() in Theory and Practice of Model Transformations (2014, July) Software translation is a challenging task. Several requirements are important – including automation of the execution, maintainability of the translation patterns, and, most importantly, reliability ... [more ▼] Software translation is a challenging task. Several requirements are important – including automation of the execution, maintainability of the translation patterns, and, most importantly, reliability concerning the correctness of the translation. Triple graph grammars (TGGs) have shown to be an intuitive, well-defined technique for model translation. In this paper, we leverage TGGs for industry scale software translations. The approach is implemented using the Eclipse-based graph transformation tool Henshin and has been successfully applied in a large industrial project with the satellite operator SES on the translation of satellite control procedures. We evaluate the approach regarding requirements from the project and performance on a complete set of procedures of one satellite. [less ▲] Detailed reference viewed: 358 (39 UL)![]() Hermann, Frank ![]() ![]() ![]() in Rose, Louis M.; Krause, Christian; Horn, Tassilo (Eds.) Proceedings of the 7th Transformation Tool Contest - part of the Software Technologies: Applications and Foundations (STAF 2014) federation of conferences (2014) Triple graph grammars (TGGs) provide a formal framework for bidirectional model transformations. As in practice, TGGs are primarily used in pure model-to-model transformation scenarios, tools for text-to ... [more ▼] Triple graph grammars (TGGs) provide a formal framework for bidirectional model transformations. As in practice, TGGs are primarily used in pure model-to-model transformation scenarios, tools for text-to-model and model-to-text transformations make them also applicable in text-to-text transformation contexts. This paper presents a solution for the text-to-text transformation case study of the Transformation Tool Contest 2014 on translating FIXML (an XML notation for financial transactions) to source code written in Java, C# or C++. The solution uses the HenshinTGG tool for specifying and executing model-to-model transformations based on the formal concept of TGGs as well as the Xtext tool for parsing XML content to yield its abstract syntax tree (text-to-model transformation) and serialising abstract syntax trees to source code (model-to-text transformation). The approach is evaluated concerning a given set of criteria. [less ▲] Detailed reference viewed: 173 (16 UL)![]() Hermann, Frank ![]() in Software and Systems Modeling (2013) Triple graph grammars (TGGs) have been used successfully to analyze correctness and completeness of bidirectional model transformations, but a corresponding formal approach to model synchronization has ... [more ▼] Triple graph grammars (TGGs) have been used successfully to analyze correctness and completeness of bidirectional model transformations, but a corresponding formal approach to model synchronization has been missing. This paper closes this gap by providing a formal synchronization framework with bidirectional update propagation operations. They are generated from a given TGG, which specifies the language of all consistently integrated source and target models. As our main result, we show that the generated synchronization framework is correct and complete, provided that forward and backward propagation operations are deterministic. Correctness essentially means that the propagation operations preserve and establish consistency while completeness ensures that the operations are defined for all possible inputs. Moreover, we analyze the conditions under which the operations are inverse to each other. All constructions and results are motivated and explained by a running example, which leads to a case study, using concrete visual syntax and abstract syntax notation based on typed attributed graphs. [less ▲] Detailed reference viewed: 180 (24 UL)![]() Gottmann, Susann ![]() ![]() in Jacquet, Christophe; Balasubramanian, Daniel; Jones, Edward (Eds.) et al Proc. Int. Workshop on Multi-Paradigm Modeling 2013 (MPM'13) (2013) The development and maintenance of satellite control software are very complex, mission-critical and cost-intensive tasks that require expertise from different domains. In order to adequately address ... [more ▼] The development and maintenance of satellite control software are very complex, mission-critical and cost-intensive tasks that require expertise from different domains. In order to adequately address these challenges, we propose to use visual views of the software to provide concise abstractions of the system from different perspectives. This paper introduces a visual language for process flow models of satellite control procedures that we developed in cooperation with the industrial partner SES for the satellite control language SPELL. Furthermore, we present a general and formal bidirectional engineering approach for automatically translating satellite control procedures into corresponding process flow visualisations. The bidirectional engineering framework is supported by a visual editor based on Eclipse GMF, the transformation tool HenshinTGG, and additional extensions to meet requirements set up by the specific application area of satellite control languages. [less ▲] Detailed reference viewed: 110 (21 UL)![]() Gottmann, Susann ![]() ![]() ![]() in Baudry, Benoit; Dingel, Juergen; Lucio, Levi (Eds.) et al Proc. Int. Workshop on Analysis of Model Transformations 2013 (AMT'13) (2013) Detailed reference viewed: 136 (19 UL)![]() ; ; Hermann, Frank ![]() in Recent Trends in Algebraic Development Techniques (2013) In several application areas, Graph Transformation Systems (GTSs) are equipped with Negative Application Conditions (NACs) that specify “forbidden contexts”, in which the rules shall not be applied. The ... [more ▼] In several application areas, Graph Transformation Systems (GTSs) are equipped with Negative Application Conditions (NACs) that specify “forbidden contexts”, in which the rules shall not be applied. The extension to NACs, however, introduces inhibiting effects among transformation steps that are not local in general, causing a severe problem for a concurrent semantics. In fact, the relation of sequential independence among derivation steps is not invariant under switching, as we illustrate with an example. We first show that this problem disappears if the NACs are restricted to beincremental. Next we present an algorithm that transforms a GTS with arbitrary NACs into one with incremental NACs only, able to simulate the original GTS. We also show that the two systems are actually equivalent, under certain assumptions on NACs. [less ▲] Detailed reference viewed: 142 (18 UL)![]() Hermann, Frank ![]() ![]() ![]() in Duddy, Keith; Kappel, Gerti (Eds.) Theory and Practice of Model Transformations (2013) Model transformation based on triple graph grammars (TGGs) is a general, intuitive and formally well defined technique for the translation of models [5,6,2]. While previous concepts and case studies were ... [more ▼] Model transformation based on triple graph grammars (TGGs) is a general, intuitive and formally well defined technique for the translation of models [5,6,2]. While previous concepts and case studies were focused mainly on visual models of software and systems, this article describes an industrial application of model transformations based on TGGs as a powerful technique for software translation using the tool Henshin [1]. The general problem in this scenario is to translate source code that is currently in use into corresponding source code that shall run on a new system. Up to now, this problem was addressed based on manually written converters, parser generators, compiler-compilers or meta-programming environments using term rewriting or similar techniques (see e. g. [4]). [less ▲] Detailed reference viewed: 208 (22 UL)![]() Gottmann, Susann ![]() ![]() in Electronic Communications of the EASST (2012) Ubiquitous computing systems (UCSs) are designed to participate almost imperceptibly in everyday life. To ensure a solid operation, a UCS heavily depends on a reliable and efficient communication between ... [more ▼] Ubiquitous computing systems (UCSs) are designed to participate almost imperceptibly in everyday life. To ensure a solid operation, a UCS heavily depends on a reliable and efficient communication between its distributed computing components. Moreover components can join and leave the system at any time. In order to guarantee high quality systems, the use of models is inevitable especially at an early stage of the development process where models are the only possibility to address a system which does not yet exist in reality. Petri nets and graph transformation systems are established, theoretically well-founded concepts for modelling and analysing complex systems. This paper presents a formal approach for modelling core aspects of the communication in UCSs by using Algebraic Higher Order Nets with Individual Tokens and graph transformation. The approach is suitable to cover the different aspects of communication and enables the analysis of specific properties. The approach and its suitability are illustrated based on a running example. The easibility of embedding the approach in a broader context of modelling is demonstrated in applying it to a real world system: the Living Place Hamburg. [less ▲] Detailed reference viewed: 94 (8 UL)![]() ; ; Hermann, Frank ![]() Report (2012) Graph Transformation Systems (GTSs) are an integrated formal speci cation framework for modelling and analysing structural and behavioural aspects of systems. The evolution of a system is modelled by the ... [more ▼] Graph Transformation Systems (GTSs) are an integrated formal speci cation framework for modelling and analysing structural and behavioural aspects of systems. The evolution of a system is modelled by the application of rules to the graphs representing its states and, since typically such rules have local e ects, GTSs are particularly suitable for modelling concurrent and distributed systems where several rules can be applied in parallel. Thus, it is no surprise that a large body of literature is dedicated to the study of the concurrent semantics of graph transformation systems. [less ▲] Detailed reference viewed: 104 (16 UL) |
||