88,935 research outputs found

    Automated Verification by Declarative Description of Graph Rewriting-Based Model Transformations

    Get PDF
    Usually, verification of graph rewriting-based model transformations is performed manually, however, the industrial applications require automated methods. In several cases, transformation developers are interested in the offline analysis, when only the definition of the transformation and the specification of the modeling languages are taken into account. Hence, the analysis must be performed only once, and the results are independent from the concrete input models. For this purpose, transformations should be specified in a formalism that can be automatically analyzed. Based on our previous work that presented the mathematical background, this paper provides a platform-independent, declarative formalism for the specification of graph rewriting-based model transformations, and demonstrates its applicability on a case study of refactoring mobile-based social network models. Our results prove that several functional properties of the model transformations can be automatically verified, moreover, the capabilities of our methods can be extended in the future

    Model Driven Software Engineering for Web Applications

    Get PDF
    Model driven software engineering (MDSE) is becoming a widely accepted approach for developing complex applications and it is on its way to be one of the most promising paradigms in software engineering. MDSE advocates the use of models as the key artifacts in all phases of the development process, from analysis to design, implementation and testing. The most promising approach to model driven engineering is the Model Driven Architecture (MDA) defined by the Object Management Group (OMG). Applications are modeled at a platform independent level and are transformed to (possibly several) platform specific implementations. Model driven Web engineering (MDWE) is the application of model driven engineering to the domain of Web application development where it might be particularly helpful because of the continuous evolution of Web technologies and platforms. However, most current approaches for MDWE provide only a partial application of the MDA pattern. Further, metamodels and transformations are not always made explicit and metamodels are often too general or do not contain sufficient information for the automatic code generation. Thus, the main goal of this work is the complete application of the MDA pattern to the Web application domain from analysis to the generated implementation, with transformations playing an important role at every stage of the development process. Explicit metamodels are defined for the platform independent analysis and design and for the platform specific implementation of dynamic Web applications. Explicit transformations allow the automatic generation of executable code for a broad range of technologies. For pursuing this goal, the following approach was chosen. A metamodel is defined for the platform independent analysis and for the design of the content, navigation, process and presentation concerns of Web applications as a conservative extension of the UML (Unified Modeling Language) metamodel, together with a cor-responding UML profile as notation. OCL constraints ensure the well-formedness of models and are checked by transformations. Transformations implement the systematic evolution of analysis and design models. A generic platform for Web applications built on an open-source Web platform and a generic runtime environment is proposed that represents a family of platforms supporting the combination of a broad range of technologies. The transformation to the platform specific models for this generic platform is decomposed along the concerns of Web applications to cope in a fine-grained way with technology changes. For each of the concerns a metamodel for the corresponding technology is defined together with the corresponding transformations from the platform independent design models. The resulting models are serialized to code by means of serialization transformations

    System-Level Modeling, Analysis and Code Generation: Object Recognition Case Study

    Get PDF
    International audienceOne of the most important challenges in complex embedded systems design is developing methods and tools for modeling and analyzing the behavior of application software running on multi-processor platforms. We propose a tool-supported flow for systematic and compositional construction of mixed software/hardware system models. These models are intended to represent, in an operational way, the set of timed executions of parallel application software statically mapped on a multi-processor platform. As such, system models will be used for performance analysis using simulation-based techniques as well as for code generation on specific platforms. The construction of the system model proceeds in two steps. In the first step, an abstract system model is obtained by composition and specific transformations of (1) the (untimed) model of the application software, (2) the model of the platform and (3) the mapping between them. In the second step, the abstract system model is refined into concrete system model, by including specific timing constraints for execution of the application software, according to chosen mapping on the platform. We illustrate the system model construction method and its use for performance analysis and code generation on an object recognition application provided by Hellenic Airspace Industry. This case study is build upon the HMAX models algorithm [RP99] and is looking at significant speedup factors. This paper reports results obtained on different system model configurations and used to determine the optimal implementation strategy in accordance to hardware resources

    V3CMM: a 3-view component meta-model for model-driven robotic software development

    Get PDF
    There are many voices in the robotics community demanding a qualitative improvement in the robotics software development process and tools, in order to increase product flexibility, adaptability, and overall quality, while reducing its cost and time-to-market. This article describes a first step towards a model-driven approach to robotics software development, based on the definition of highly reusable and platform-independent component-based design models. The proposed approach revolves around the V3CMM modeling language and the definition of different model transformations for deriving both special purpose models (e.g., models suited for analysis or simulation purposes) and lower-level design models, in which platform-specific and application-dependent details can be progressively included. The article describes the tool-chain implemented to support the different stages of the proposed MDE process, including (1) the definition of component-based architectural models, defined using the V3CMM platform-independent modeling language, (2) the automatic transformation of the V3CMM component-based models into equivalent object-oriented designs, described in terms of the UML standard, and (3) the transformation of the UML models into an the Ada 2005 object-oriented programming language. In order to show the feasibility and the benefits of the proposal, a simple (yet complete) case study regarding the design of a Cartesian robot is presented.This research has been funded by the Spanish CICYT Project EXPLORE (ref. TIN2009-08572), the Fundación Séneca Regional Project COMPAS-R (ref. 11994/PI/09), and the Spanish Research Network on Model-Driven Software Development (ref. TIN2008-00889-E)

    Domain-Specific Modeling and Code Generation for Cross-Platform Multi-Device Mobile Apps

    Get PDF
    Nowadays, mobile devices constitute the most common computing device. This new computing model has brought intense competition among hardware and software providers who are continuously introducing increasingly powerful mobile devices and innovative OSs into the market. In consequence, cross-platform and multi-device development has become a priority for software companies that want to reach the widest possible audience. However, developing an application for several platforms implies high costs and technical complexity. Currently, there are several frameworks that allow cross-platform application development. However, these approaches still require manual programming. My research proposes to face the challenge of the mobile revolution by exploiting abstraction, modeling and code generation, in the spirit of the modern paradigm of Model Driven Engineering

    Feasibility of EPC to BPEL Model Transformations Based on Ontology and Patterns

    Get PDF
    Model-Driven Engineering holds the promise of transforming\ud business models into code automatically. This requires the concept of\ud model transformation. In this paper, we assess the feasibility of model\ud transformations from Event-driven Process Chain models to Business\ud Process Execution Language specifications. To this purpose, we use a\ud framework based on ontological analysis and workflow patterns in order\ud to predict the possibilities/limitations of such a model transformation.\ud The framework is validated by evaluating the transformation of several\ud models, including a real-life case.\ud The framework indicates several limitations for transformation. Eleven\ud guidelines and an approach to apply them provide methodological support\ud to improve the feasibility of model transformation from EPC to\ud BPEL

    A Modeling Approach based on UML/MARTE for GPU Architecture

    Get PDF
    Nowadays, the High Performance Computing is part of the context of embedded systems. Graphics Processing Units (GPUs) are more and more used in acceleration of the most part of algorithms and applications. Over the past years, not many efforts have been done to describe abstractions of applications in relation to their target architectures. Thus, when developers need to associate applications and GPUs, for example, they find difficulty and prefer using API for these architectures. This paper presents a metamodel extension for MARTE profile and a model for GPU architectures. The main goal is to specify the task and data allocation in the memory hierarchy of these architectures. The results show that this approach will help to generate code for GPUs based on model transformations using Model Driven Engineering (MDE).Comment: Symposium en Architectures nouvelles de machines (SympA'14) (2011
    corecore