9 research outputs found

    Supporting Model-to-Model Transformations: The VMT Approach

    Get PDF
    The model-driven architecture approach (MDA) promotes software development as driven by a thorough modeling phase where application code is automatically generated from a platform specific UML model (PSM). The idea is that the PSM is itself derived from a platform independent UML model (PIM). Such code generation and model derivation are examples of model-to-model transformations. This paper presents the Visual Model Transformation (VMT) approach, which includes a transformation language and a tool to support UML model transformations. The transformation language is a visual declarative language that supports the specification, composition and reuse of model transformation rules. These rules make use of the OCL language and a visual notation to indicate the selection, creation, modification and removal of model elements. An abstract denotational semantics based on graph transformation is sketched for the VMT language. We also present the MEDAL tool, which is a prototype build on top of IBM/Rational XDE development environment, and is a first step towards tool support for the VMT approach

    A Model Driven Approach to Model Transformations

    Get PDF
    The OMG's Model Driven Architecture (MDA) initiative has been the focus of much attention in both academia and industry, due to its promise of more rapid and consistent software development through the increased use of models. In order for MDA to reach its full potential, the ability to manipulate and transform models { most obviously from the Platform Independent Model (PIM) to the Platform Specific Models (PSM) { is vital. Recognizing this need, the OMG issued a Request For Proposals (RFP) largely concerned with finding a suitable mechanism for trans- forming models. This paper outlines the relevant background material, summarizes the approach taken by the QVT-Partners (to whom the authors belong), presents a non-trivial example using the QVT-Partners approach, and finally sketches out what the future holds for model transformations

    Concrete syntax definition for modeling languages

    Get PDF
    Model Driven Engineering (MDE) promotes the use of models as primary artefacts of a software development process, as an attempt to handle complexity through abstraction, e.g. to cope with the evolution of execution platforms. MDE follows a stepwise approach, by prescribing to develop abstract models further improved to integrate little by little details relative to the final deployment platforms. Thus, the application of an MDE process results in various models residing at various levels of abstraction. Each one of these models is expressed in a modeling language, in which one may find appropriate concepts for the abstraction level considered. Many advocate to use the right (modeling) language for the right purpose. This means that it is sometimes better approach to use small languages specific to the considered domain and abstraction level, than to use general purpose languages (e.g. UML) when they do not perfectly fit the (modeling) needs. As a matter of fact, an MDE development process, which involves many different domains and abstraction levels, should also involve a large variety of modeling languages. Project managers who want to apply an MDE process need to deal with this language proliferation to such an extent that, in the long run, one may infer that language engineers can become major actors of software development teams. We believe that comprehensive modeling language management facilities may considerably alleviate that MDE drawback. Such facilities may include modeling language definition, extension, adaptation, or composition. To define a (modeling) language, one needs to define its abstract syntax, its semantics, and one or more concrete syntaxes. This thesis focuses on concrete syntax definition for modeling languages, when the abstract syntax is given in the form of a metamodel. We will provide solutions both for textual and graphical concrete syntaxes. Some of our experiences in building textual languages (as MTL, a model transformation language), and graphical languages (as Netsilon, a web-application modeler) has shown that a lot of work was spent in implementing interface using traditional techniques, be it a text processor generated from a compiler compiler specification, or a modeler making use of modern 2D graphical libraries. Indeed, abstract and concrete syntax were implemented in a disconnected way, and it was then necessary to assemble them, which became rapidly clumsy while abstract syntax evolved. We built our solution to concrete syntax definition as companions of the abstract syntax. The definition of concrete syntax we propose here made it possible to build automatic tools able to analyze or synthesize models from/to text, and to create graphical modelers. We will present a metamodel for textual concrete syntax definition to construct constructive reversible grammars. We will also propose a technique for graphical concrete syntax definition following a two-step process: specification and realization. Specification is a restrictive approach in which a metamodel defines a graphical concrete syntax. Both relations with abstract syntax and spatial relationships are expressed by means of constraints. The realization step proposes a way to provide the concrete syntax tree a meaning, by attributing it a graphical appearance, and by expressing possible user interactions. The structure of the document is the following. After introducing in deeper details the problem and the general structure of the solution we propose, we will take a tour of MDE, text and graph grammars. Then, we will present Netsilon as an example of an MDE tool to MDE development, which required both the definition of a graphical and a textual modeling language. The two following sections will present the solutions we propose for textual and graphical concrete syntax definition, respectively. Final remarks and possible improvements, especially regarding reusability in general of MDE meta-artifacts (like metamodels or model transformations), and of concrete syntax in particular, will conclude the document

    Efficient development of complex statecharts

    Get PDF
    Modeling systems based on graphical formalisms, such as Statecharts, has become standard practice in the design of embedded devices. Using paradigms established so far often results in complex models that are difficult to comprehend and maintain. To overcome this, we present a methodology to support the easy development and understanding of complex Statecharts. Central to our approach is the use of secondary notations to aid readability. We employ an automated layout mechanism to transform any given Statechart to a Statechart Normal Form. The Kiel Integrated Environment for Layout is a prototypical modeling tool to explore our editing, browsing and simulation paradigms in the design of complex reactive systems. An empirical study on the usability and practicability of our Statechart editing techniques, including a Statechart layout comparison, indicates significant performance improvements in terms of editing speed and model comprehension compared to traditional modeling approaches

    On the Use of Alloy in Engineering Domain Specific Modeling Languages

    Get PDF
    Domain Specific Modeling Languages (DSMLs) tend to play a central role in modern design processes as they enable the effective involvement of domain experts by focusing on a particular problem domain while abstracting away technical details. In this thesis, we investigate the specification of DSMLs with a particular focus on domain expert driven validation. Mainly, we are interested in developing Alloy-based approaches, allowing the definition of specifications from which instances can be generated and given to the domain experts for the sake of validation. The work we present in this thesis can be divided into three parts: The first part concerns the definition and execution of model transformations defined in Alloy. While Alloy analysis can be used as an execution engine for model transformations, the analysis process is time consuming. Model transformations playing a central role in DSML definitions, the development of a new model transformation language, named F-Alloy, retaining the benefits of Alloy with the added property of being efficiently computable was necessary. The second part focuses on validation. In that domain, our first contribution is a novel approach to the validation of model transformations called Visualization-Based Validation (VBV). VBV relies on the review by domain experts of intuitive depictions of model transformation traces to validate model transformation specifications. The whole process is made efficient by the usage of hybrid analysis, a combination of Alloy analysis and F-Alloy interpretation, allowing to reduce the time needed to analyze model transformations to the time needed to analyze its source. Our second contribution in the validation area is the definition of an Alloy-based approach to the specification and validation of DSMLs and of a design process defining how DSMLs can be validated using Alloy analysis at each iteration of the process. More precisely, we present how the abstract syntax, concrete syntax and operational semantics of a DSML can be defined using Alloy and F-Alloy, and show that the validation of a DSML' s abstract syntax and semantics benefits from the application of its concrete syntax. The third and last part aims at bringing those contributions to the practical world. To achieve this we developed a tool named Lightning implementing the aforementioned contributions. This tool, which belongs to the category of language workbenches, has been successfully used in an inter-disciplinary collaboration to define the Robot Perception System Language (RPSL). Based on this definition of RPSL, a framework has been developed to allow the execution of so called design space explorations. This framework represents a successful application of our approach to the real world problem of having RPSL specifications validated by experts in robotics

    Knowledge-based inspection

    Get PDF
    Increased level of complexity in almost every discipline and operation today raises the demand for knowledge in order to successfully run an organization whether to generate profit or to attain a non-profit mission. Traditional way of transferring knowledge to information systems rich in data structures and complex algorithms continue to hinder the ability to swiftly turnover concepts into operations. Diagrammatic modelling commonly applied in engineering in order to represent concepts or reality remains to be an excellent way of converging knowledge from domain experts. The nuclear verification domain represents ever more a matter which has great importance to the World safety and security. Demand for knowledge about nuclear processes and verification activities used to offset potential misuse of nuclear technology will intensify with the growth of the subject technology. This Doctoral thesis contributes with a model-based approach for representing complex process such as nuclear inspections. The work presented contributes to other domains characterized with knowledge intensive and complex processes. Based on characteristics of a complex process a conceptual framework was established as the theoretical basis for creating a number of modelling languages to represent the domain. The integrated Safeguards Modelling Method (iSMM) is formalized through an integrated meta-model. The diagrammatic modelling languages represent the verification domain and relevant nuclear verification aspects. Such a meta-model conceptualizes the relation between practices of process management, knowledge management and domain specific verification principles. This fusion is considered as necessary in order to create quality processes. The study also extends the formalization achieved through a meta-model by contributing with a formalization language based on Pattern Theory. Through the use of graphical and mathematical constructs of the theory, process structures are formalized enhancing the ability to analyse, compare and transform models. In the example domain all possible connections between critical nuclear processes were formalized providing also for probability-based analysis of weapons acquisition paths that will help design objective-based inspection processes.Increased level of complexity in almost every discipline and operation today raises the demand for knowledge in order to successfully run an organization whether to generate profit or to attain a non-profit mission. Traditional way of transferring knowledge to information systems rich in data structures and complex algorithms continue to hinder the ability to swiftly turnover concepts into operations. Diagrammatic modelling commonly applied in engineering in order to represent concepts or reality remains to be an excellent way of converging knowledge from domain experts. The nuclear verification domain represents ever more a matter which has great importance to the World safety and security. Demand for knowledge about nuclear processes and verification activities used to offset potential misuse of nuclear technology will intensify with the growth of the subject technology. This Doctoral thesis contributes with a model-based approach for representing complex process such as nuclear inspections. The work presented contributes to other domains characterized with knowledge intensive and complex processes. Based on characteristics of a complex process a conceptual framework was established as the theoretical basis for creating a number of modelling languages to represent the domain. The integrated Safeguards Modelling Method (iSMM) is formalized through an integrated meta-model. The diagrammatic modelling languages represent the verification domain and relevant nuclear verification aspects. Such a meta-model conceptualizes the relation between practices of process management, knowledge management and domain specific verification principles. This fusion is considered as necessary in order to create quality processes. The study also extends the formalization achieved through a meta-model by contributing with a formalization language based on Pattern Theory. Through the use of graphical and mathematical constructs of the theory, process structures are formalized enhancing the ability to analyse, compare and transform models. In the example domain all possible connections between critical nuclear processes were formalized providing also for probability-based analysis of weapons acquisition paths that will help design objective-based inspection processes

    Über die Pragmatik der Graphischen Modellierung

    Get PDF
    Graphical models help to understand complex systems. However, with the user interaction paradigms established today, activities such as creating, maintaining or browsing graphical models can be very tedious. This thesis presents an approach to enhance productivity by focusing on the pragmatics of model-based design. The contribution includes an interpretation of the notion of pragmatics, orthogonal to syntax and semantics in Model-Driven Engineering (MDE). A proposal on pragmatics-aware modeling is given, employing sophisticated automated layout algorithms to close the gap between MDE and graph drawing theory. Thus, a view management logic presents customized views on models. These concepts get illustrated with the open source Kiel Integrated Environment for Layout Eclipse Rich Client (KIELER) with multiple applications including editing and simulation and shows how view management helps to tame complexity

    Quality assurance with dynamic meta modeling

    Get PDF
    Dynamic Meta Modeling (DMM) ist eine Semantikbeschreibungstechnik, die sich auf MOF-basierte Sprachen fokussiert und deren Verhalten durch graphische, operationale Regeln beschreibt. Der DMM-Ansatz wurde im Jahr 2000 von Engels et al. erstmals beschrieben und von Hausmann in 2006 in seiner Dissertation ausgearbeitet. Der nĂ€chste Schritt war nun, an verschiedenen Modellierungssprachen zu erproben, um die gemachten Erfahrungen in die Verbesserung von DMM und seinen Werkzeugen einfließen zu lassen. Das Ergebnis ist die DMM++-Methode, die in dieser Arbeit vorgestellt wird. Wir haben vorwiegend an drei Stellen Verbesserungen vorgenommen: Erstens haben wir basierend auf unseren Erfahrungen mit DMM neue Sprachkonzepte wie die Verfeinerung von Regeln entwickelt, und wir haben bestehende Konzepte wie die Behandlung von universell quantifizierten Strukturen oder Attributen verbessert. Zweitens haben wir einen testgetriebenen Semantikspezifizierungsprozess entwickelt: ZunĂ€chst wird eine Menge von Beispielmodellen erzeugt und deren erwartetes Verhalten formalisiert. Die DMM-Regeln werden dann inkrementell entwickelt, wobei geprĂŒft wird, ob die Beispielmodelle tatsĂ€chlich das erwartete Verhalten erzeugen. Zudem haben wir Abdeckungskriterien fĂŒr Tests von DMM-Spezifikationen entwickelt, die die Beurteilung der QualitĂ€t der Tests erlauben. Drittens haben wir gezeigt, wie funktionale und nichtfunktionale Anforderungen an Modelle und ihre DMM-Spezifikation formuliert und geprĂŒft werden können. FĂŒr ersteres haben wir eine graphische Sprache zur Formulierung temporallogischer Eigenschaften zur VerfĂŒgung gestellt, die dann mit Model Checking geprĂŒft werden. FĂŒr zweiteres ermöglichen wir dem Modellierer das HinzufĂŒgen von Performanceinformationen zu den Modellen, aufgrund dessen dann z.B. der average throughput eines Modells berechnet werden kann.Dynamic Meta Modeling (DMM) is a semantics specification technique targeted at MOF-based modeling languages, where a language's behavior is defined by means of graphical operational rules which change runtime models. The DMM approach has first been suggested by Engels et al. in 2000; Hausmann has then defined the DMM language on a conceptual level within his PhD thesis in 2006. Consequently, the next step was to bring the existing DMM concepts alive, and then to apply them to different modeling languages, making use of the lessons learned to improve the DMM concepts as well as the DMM tooling. The result of this process is the DMM++ method, which is presented within this thesis. Our contributions are three-fold: First, and according to our experiences with the DMM language, we have introduced new concepts such as refinement by means of rule overriding, and we have strengthened existing concepts such as the dealing with universal quantified structures or attributes. Second, we have developed a test-driven process for semantics specification: A set of test models is created, and their expected behavior is fixed. Then, the DMM rules are created incrementally, finally resulting in a DMM ruleset realizing at least the expected behavior of the test models. Additionally, we have defined a set of coverage criteria for DMM rulesets which allow to measure the quality of a set of test models. Third, we have shown how functional as well as non-functional requirements can be formulated against models and their DMM specifications. The former is achieved by providing a visual language for formulating temporal logic properties, which are then verified with model checking techniques, and by allowing for visual debugging of models failing a requirement. For the latter, the modeler can add performance information to models and analyze their performance properties, e.g. average throughput.Tag der Verteidigung: 04.07.2013Paderborn, Univ., Diss., 201

    Transforming Specification Architectures by GenGED

    No full text
    corecore