83 research outputs found

    A meta-model for automatic modeling dynamic web applications

    Get PDF
    This paper proposes an approach to automatically transform source code of a web application into an abstraction model. A Web Application Program Dependency (WAPD) meta-model is being proposed to store dependency information based on a multi-tiered architecture, corresponding to web application’s behavior. A WebParseTree is used as an intermediate model for the transformation from the source code to the WAPD model. The WebParseTree is a DOM-like tree that consists of statements and dependencies stored information and behavior in the tree. To ensure that the resulting model is valid, it must conform to the defined web application rules. This validation step can be done automatically by a constraint validator using Object Constraint Language (OCL). The WAPD model will be represented as a generic model for web applications which can be used for many purposes such as automatic test case generation and automatic code transformation

    20 years of triple graph grammars: A roadmap for future research

    Get PDF
    Triple graph grammars (TGGs) provide a declarative, rule-based means of specifying binary consistency relationships between different types of graphs. Over the last 20 years, TGGs have been applied successfully in a range of application scenarios including: model generation, conformance testing, bidirectional model transformation, and incremental model synchronisation. In this paper, we review the progress made in TGG research up until now by exploring multiple research dimensions, including both the current frontiers of TGG research as well as important future challenges. Our aim is to provide a roadmap for the coming years of TGG research by stating clearly what we regard as adequately researched, and what we view as still unexplored potential

    Inter-Modelling with Graphical Constraints: Foundations and Applications

    Get PDF
    Model-Driven Engineering (MDE) promotes an active use of models in the different phases of the development, so that the construction of systems usually involves a number of models expressed in different languages and levels of abstraction; therefore, there is the constant need to compare, generate and update models and their relations. We call inter-modelling to the activity of building models that describe how modelling languages should be related. This includes many MDE activities like the specification of model-to-model transformations, the definition of model matching and traceability constraints, and the development of inter-model consistency mantainers. While most approaches build different operational programs to handle each activity separately, we propose using a high-level specification language called PaMoMo to specify inter-models in a declarative, graphical, bidirectional way. This specification can be compiled into operational mechanisms to solve different inter-modelling activities like transformation, model comparison and traceability support. Other usage scenarios for PaMoMo are the specification of transformation contracts and the automated testing of transformations

    Integrating models and simulations of continuous dynamic system behavior into SysML

    Get PDF
    Contemporary systems engineering problems are becoming increasingly complex as they are handled by geographically distributed design teams, constrained by the objectives of multiple stakeholders, and inundated by large quantities of design information. According to the principles of model-based systems engineering (MBSE), engineers can effectively manage increasing complexity by replacing document-centric design methods with computerized, model-based approaches. In this thesis, modeling constructs from SysML and Modelica are integrated to improve support for MBSE. The Object Management Group has recently developed the Systems Modeling Language (OMG SysML ) to provide a comprehensive set constructs for modeling many common aspects of systems engineering problems (e.g. system requirements, structures, functions). Complementing these SysML constructs, the Modelica language has emerged as a standard for modeling the continuous dynamics (CD) of systems in terms of hybrid discrete- event and differential algebraic equation systems. The integration of SysML and Modelica is explored from three different perspectives: the definition of CD models in SysML; the use of graph transformations to automate the transformation of SysML CD models into Modelica models; and the integration of CD models and other SysML models (e.g. structural, requirements) through the depiction of simulation experiments and engineering analyses. Throughout the thesis, example models of a car suspension and a hydraulically-powered excavator are used for demonstration. The core result of this work is the provision of modeling abilities that do not exist independently in SysML or Modelica. These abilities allow systems engineers to prescribe necessary system analyses and relate them to stakeholder concerns and other system aspects. Moreover, this work provides a basis for model integration which can be generalized and re-specialized for integrating other modeling formalisms into SysML.M.S.Committee Chair: Chris Paredis; Committee Member: Dirk Schaefer; Committee Member: Russell Pea

    A Systematic Approach and Guidelines to Developing a Triple Graph Grammar

    Get PDF
    Engineering processes are often inherently concurrent, involving multiple stakeholders working in parallel, each with their own tools and artefacts. Ensuring and restoring the consistency of such artefacts is a crucial task, which can be appropriately addressed with a bidirectional transformation (bx ) language. Although there exist numerous bx languages, often with corresponding tool support, it is still a substantial challenge to learn how to actually use such bx languages. Triple Graph Grammars (TGGs) are a fairly established bx language for which multiple and actively developed tools exist. Learning how to master TGGs is, however, currently a frustrating undertaking: a typical paper on TGGs dutifully explains the basic "rules of the game" in a few lines, then goes on to present the latest groundbreaking and advanced results. There do exist tutorials and handbooks for TGG tools but these are mainly focussed on how to use a particular tool (screenshots, tool workflow), often presenting exemplary TGGs but certainly not how to derive them systematically. Based on 20 years of experience working with and, more importantly, explaining how to work with TGGs, we present in this paper a systematic approach and guidelines to developing a TGG from a clear, but unformalised understanding of a bx

    Fully Verifying Transformation Contracts for Declarative ATL

    Get PDF
    The Atlas Transformation Language (ATL) is today a de-facto standard in model-driven development. It is understood by the community that methods for exhaustively verifying such transformations provide an important pillar for achieving a stronger adoption of model-driven development in industry. In this paper we propose a method for verifying ATL model transformations by translating them into DSLTrans, a transformation language with limited expressiveness. Pre-/postcondition contracts are then verified on the resulting DSLTrans specification using a symbolic-execution property prover. The technique we present in this paper is exhaustive for the declarative ATL subset, meaning that if a contract holds, it will hold when any input model is passed to the ATL transformation being checked. We explore the scalability of our technique using a set of examples, including a model transformation developed in collaboration with our industrial partner.European Commission ICT Policy Support Programme 31785

    Conformance Analysis of Organizational Models in a new Enterprise Modeling Framework using Algebraic Graph Transformation - Extended Version

    Get PDF
    Organizational models play a key role in today's enterprise modeling. These models often show up as partial models produced by people with different conceptual understandings in a usually decentralized organization, where they are modeled in a distributed and non-synchronized fashion. For this reason, there is a first major need to organize partial organizational models within a suitable modeling framework, and there is a second major need to check their mutual conformance. This builds the basis to integrate the partial organizational models later on into one holistic model of the organization. Moreover, the partial models can be used for model checking certain security, risk, and compliance constraints. In order to satisfy the two major needs, this paper presents two mutually aligned contributions. The first one is a new enterprise modeling framework the EM-Cube. The second contribution is a new approach for checking conformance of models that are developed based on the suggested formal modeling technique associated with the proposed framework. In addition to that, we evaluate our potential solution against concrete requirements derived from a real-world scenario coming out of the finance industry

    Fundamental Approaches to Software Engineering

    Get PDF
    This open access book constitutes the proceedings of the 23rd International Conference on Fundamental Approaches to Software Engineering, FASE 2020, which took place in Dublin, Ireland, in April 2020, and was held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2020. The 23 full papers, 1 tool paper and 6 testing competition papers presented in this volume were carefully reviewed and selected from 81 submissions. The papers cover topics such as requirements engineering, software architectures, specification, software quality, validation, verification of functional and non-functional properties, model-driven development and model transformation, software processes, security and software evolution

    Full Semantics Preservation in Model Transformation – A Comparison of Proof Techniques

    Get PDF
    Model transformation is a prime technique in modern, model-driven software design. One of the most challenging issues is to show that the semantics of the models is not affected by the transformation. So far, there is hardly any research into this issue, in particular in those cases where the source and target languages are different.\ud \ud In this paper, we are using two different state-of-the-art proof techniques (explicit bisimulation construction versus borrowed contexts) to show bisimilarity preservation of a given model transformation between two simple (self-defined) languages, both of which are equipped with a graph transformation-based operational semantics. The contrast between these proof techniques is interesting because they are based on different model transformation strategies: triple graph grammars versus in situ transformation. We proceed to compare the proofs and discuss scalability to a more realistic setting.\u
    corecore