112,614 research outputs found

    Kevoree Modeling Framework (KMF): Efficient modeling techniques for runtime use

    Get PDF
    The creation of Domain Specific Languages(DSL) counts as one of the main goals in the field of Model-Driven Software Engineering (MDSE). The main purpose of these DSLs is to facilitate the manipulation of domain specific concepts, by providing developers with specific tools for their domain of expertise. A natural approach to create DSLs is to reuse existing modeling standards and tools. In this area, the Eclipse Modeling Framework (EMF) has rapidly become the defacto standard in the MDSE for building Domain Specific Languages (DSL) and tools based on generative techniques. However, the use of EMF generated tools in domains like Internet of Things (IoT), Cloud Computing or Models@Runtime reaches several limitations. In this paper, we identify several properties the generated tools must comply with to be usable in other domains than desktop-based software systems. We then challenge EMF on these properties and describe our approach to overcome the limitations. Our approach, implemented in the Kevoree Modeling Framework (KMF), is finally evaluated according to the identified properties and compared to EMF.Comment: ISBN 978-2-87971-131-7; N° TR-SnT-2014-11 (2014

    Code Generator Composition for Model-Driven Engineering of Robotics Component & Connector Systems

    Full text link
    Engineering software for robotics applications requires multidomain and application-specific solutions. Model-driven engineering and modeling language integration provide means for developing specialized, yet reusable models of robotics software architectures. Code generators transform these platform independent models into executable code specific to robotic platforms. Generative software engineering for multidomain applications requires not only the integration of modeling languages but also the integration of validation mechanisms and code generators. In this paper we sketch a conceptual model for code generator composition and show an instantiation of this model in the MontiArc- Automaton framework. MontiArcAutomaton allows modeling software architectures as component and connector models with different component behavior modeling languages. Effective means for code generator integration are a necessity for the post hoc integration of applicationspecific languages in model-based robotics software engineering.Comment: 12 pages, 4 figures, In: Proceedings of the 1st International Workshop on Model-Driven Robot Software Engineering (MORSE 2014), York, Great Britain, Volume 1319 of CEUR Workshop Proceedings, 201

    Manipulating Models Using Internal Domain-Specific Languages

    Get PDF
    International audienceIn Model-Driven Engineering, a number of external Domain-Specific Languages (DSL) for model manipulation have been proposed. However, they require users to learn new languages that, together with their execution performance, usability and tool support limitations, can significantly contribute to accidental complexities. In this paper, we present an alternative approach based on internal DSLs in Scala for model consistency checking and model transformations for the Eclipse Modeling Framework

    UML-SOA-Sec and Saleem's MDS Services Composition Framework for Secure Business Process Modelling of Services Oriented Applications

    Get PDF
    In Service Oriented Architecture (SOA) environment, a software application is a composition of services, which are scattered across enterprises and architectures. Security plays a vital role during the design, development and operation of SOA applications. However, analysis of today's software development approaches reveals that the engineering of security into the system design is often neglected. Security is incorporated in an ad-hoc manner or integrated during the applications development phase or administration phase or out sourced. SOA security is cross-domain and all of the required information is not available at downstream phases. The post-hoc, low-level integration of security has a negative impact on the resulting SOA applications. General purpose modeling languages like Unified Modeling Language (UML) are used for designing the software system; however, these languages lack the knowledge of the specific domain and "security" is one of the essential domains. A Domain Specific Language (DSL), named the "UML-SOA-Sec" is proposed to facilitate the modeling of security objectives along the business process modeling of SOA applications. Furthermore, Saleem's MDS (Model Driven Security) services composition framework is proposed for the development of a secure web service composition

    An Active Pattern Infrastructure for Domain-Specific Languages

    Get PDF
    Tool support for design patterns is a critically important area of computer-aided software engineering. With the proliferation of Domain-Specific Modeling Languages (DSMLs), the adaptation of the notion of design patterns appears to be a promising direction of research. This paper introduces a new approach to DSML patterns, namely, the Active Model Pattern infrastructure. In this framework, not only the traditional insertion of predefined partial models is supported, but interactive, localized design-time manipulation of models. Optionally, the infrastructure can be adapted to handling transactional tracing information as well as transactional undo and redo operations. Possible realizations of the framework are also discussed and compare

    Model-guided Code Assistance for Framework Application Development

    Get PDF
    Object-oriented frameworks are currently widely used in software application development. Unfortunately, they are known to be generally difficult to use because of the difficulty in understanding the concepts and constraints in different frameworks. With the formalization of framework concepts and constraints in domain-specific modeling languages called framework-specific modeling languages (FSMLs), previous works have shown that round-trip engineering between models of applications using frameworks and the application code is possible to aid framework application development. Framework-specific modeling languages only capture, however, framework concepts and constraints and hence, lack the expressiveness of general-purpose modeling languages. For this reason, the complete code for an entire framework application cannot be generated from the model in the model editor using round-trip engineering, and the user would need to switch to the code editor to program the application logic code. Also, since models are only abstractions of code, implementation details in code may be missing in models. Although default implementation details can be used when generating code from a model, the generated code might require further customization by the user, which would also require switching to the code editor. To reduce the need for the user to switch between the model editor and the code editor and to reduce the need to customize the generated code, this thesis presents a model-guided approach to providing code assistance for framework application development directly in the code editor, where additional implementation details can also be obtained. An approach to building a context-sensitive code assistant that aids the user in the implementation of framework concepts with the consideration of framework constraints is described. A prototype has further been implemented and applied on two widely popular frameworks. The evaluation in this thesis analyzes and characterizes framework concepts and shows that the framework-based code assistant can reduce the need to customize the generated code in the code editor when compared to code generation from the model editor.</p

    Tool Paper: A Lightweight Formal Encoding of a Constraint Language for DSMLs

    Get PDF
    International audienceDomain Specific Modeling Languages (dsmls) plays a key role in the development of Safety Critical Systems to model system requirements and implementation. They often need to integrate property and query sub-languages. As a standardized modeling language, ocl can play a key role in their definition as they can rely both on its concepts and textual syntax which are well known in the Model Driven Engineering community. For example, most dsmls are defined using mof for their abstract syntax and ocl for their static semantics as a metamodeling dsml. OCLinEcore in the Eclipse platform is an example of such a metamodeling dsml integrating ocl as a language component in order to benefit from its property and query facilities. dsmls for Safety Critical Systems usually provide formal model verification activities for checking models completeness or consistency, and implementation correctness with respect to requirements. This contribution describes a framework to ease the definition of such formal verification tools by relying on a common translation from a subset of ocl to the Why3 verification toolset. This subset was selected to ease efficient automated verification. This framework is illustrated using a block specification language for data flow languages where a subset of ocl is used as a component language

    Coupled Transformations of Graph Structures applied to Model Migration

    Get PDF
    Model-Driven Engineering (MDE) is a relatively new paradigm in software engineering that pursues the goal to master the increased complexity of modern software products. While software applications have been developed for a specific platform in the past, today they are targeting various platforms and devices from classical desktop PCs to smart phones. In addition, they interact with other applications. To easier cope with these new requirements, software applications are specified in MDE at a high abstraction level in so called models prior to their implementation. Afterward, model transformations are used to automate recurring development tasks as well as to generate software artifacts for different runtime environments. Thereby, software artifacts are not necessarily files containing program code, they can also cover configuration files as well as machine readable input for model checking tools. However, MDE does not only address software engineering problems, it also raises new challenges. One of these new challenges is connected to the specification of modeling languages, which are used to create models. The creation of a modeling language is a creative process that requires several iterations similar to the creation of models. New requirements as well as a better understanding of the application domain result in an evolution of modeling languages over time. Models developed in an earlier version of a modeling language often needs to be co-adopted (migrated) to language changes. This migration should be automated, as migrating models manually is time consuming and error-prone. While application modelers use ad-hoc solutions to migrate their models, there is still a lack of theory to ensure well-defined migration results. This work contributes to a formalization of modeling language evolution with corresponding model migration on the basis of algebraic graph transformations that have successfully been used earlier as theoretical foundations of model transformation. The goal of this research is to develop a theory that considers the problem of modeling language evolution with corresponding model migration on a conceptual level, independent of a specific modeling framework
    • …
    corecore