10 research outputs found

    Towards Transformation Rule Composition

    Get PDF
    Many model transformation problems require different intermediate transformation steps. For example, platform-specific models (PSM) are often generated from platform-independent models (PIM) by chains of model transformations. This requires the presence of several intermediate meta-models between those of the PIM and the PSM. Thus, most of the effort is needed to define a transformation mechanism for each intermediate step. The solution proposed in this paper is to investigate whether it is possible to generate a single transformation from a chain of transformations, solely involving the initial PIM and final PSM meta-models. The presented work focuses on the composition of transformations at the rule level. We apply the automatic procedure for composing rules in the context of the evolution of the Enterprise Java Beans (EJB) language, transforming UML models into EJB 2.0 models and then to EJB 3.0 models

    Model-Driven Process Enactment for NFV Systems with MAPLE

    Full text link
    The Network Functions Virtualization (NFV) advent is making way for the rapid deployment of network services (NS) for telecoms. Automation of network service management is one of the main challenges currently faced by the NFV community. Explicitly defining a process for the design, deployment, and management of network services and automating it is therefore highly desirable and beneficial for NFV systems. The use of model-driven orchestration means has been advocated in this context. As part of this effort to support automated process execution, we propose a process enactment approach with NFV systems as the target application domain. Our process enactment approach is megamodel-based. An integrated process modelling and enactment environment, MAPLE, has been built into Papyrus for this purpose. Process modelling is carried out with UML activity diagrams. The enactment environment transforms the process model to a model transformation chain, and then orchestrates it with the use of megamodels. In this paper we present our approach and environment MAPLE, its recent extension with new features as well as application to an enriched case study consisting of NS design and onboarding process.Comment: 27 pages, 14 figures, 1 tabl

    First European Workshop on Composition of Model Transformations - CMT 2006

    Get PDF

    ADAPTING MODELS IN METAMODELS COMPOSITION PROCESSES

    Get PDF
    In Model Driven Engineering (MDE) approaches, metamodels can change after the creation of conformant models. Moreover, changes applied on one metamodel can be result of a composition process. When metamodels change, model conformity can be broken. Once the conformity is broken, the model is unuseful and it is not possible to regain the conformity with the composite metamodel.This paper presents a proposal to solve models adaptation through a Domain Speci c Language (DSL). This DSL is used by metamodelers who are the people that know the domains abstracted by several metamodels, and know how to combine those meta-models in order to generate the composite metamodel. In addition, the DSL allows metamodelers to include the solu-tion for conformant models adaptation.

    Using Feature Model to Build Model Transformation Chains

    Get PDF
    International audienceModel transformations are intrinsically related to model-driven engineering. According to the increasing size of standardised meta-model, large transformations need to be developed to cover them. Several approaches promote separation of concerns in this context, that is, the definition of small transformations in order to master the overall complexity. Unfortunately, the decomposition of transformations into smaller ones raises new issues: organising the increasing number of transformations and ensuring their composition (i.e. the chaining). In this paper, we propose to use feature models to classify model transformations dedicated to a given business domain. Based on this feature models, automated techniques are used to support the designer, according to two axis: (i) the definition of a valid set of model transformations and (ii) the generation of an executable chain of model transformation that accurately implement designer's intention. This approach is validated on Gaspard2, a tool dedicated to the design of embedded system

    Configurable Software Performance Completions through Higher-Order Model Transformations

    Get PDF
    Chillies is a novel approach for variable model transformations closing the gap between abstract architecture models, used for performance prediction, and required low-level details. We enable variability of transformations using chain of generators based on the Higher-Order Transformation (HOT). HOTs target different goals, such as template instantiation or transformation composition. In addition, we discuss state-dependent behavior in prediction models and quality of model transformations

    Building Transformation Networks for Consistent Evolution of Interrelated Models

    Get PDF
    In dieser Dissertation formalisieren und analysieren wir die Konsistenzerhaltung verschiedener Artefakte zur Beschreibung eines Softwaresystems durch die Kopplung von Transformationen zwischen diesen und unterstützen sie mit geeigneten Methoden. Für die Entwicklung eines Softwaresystems nutzen Entwickler:innen und weitere Beteiligte verschiedene Sprachen, oder allgemein Werkzeuge, zur Beschreibung unterschiedlicher Belange. Meist stellt Programmcode das zentrale Artefakt dar, welches jedoch, implizit oder explizit, durch Spezifikationen von Architektur, Deployment, Anforderungen und anderen ergänzt wird. Neben der Programmiersprache verwenden die Beteiligten weitere Sprachen zur Spezifikation dieser Artefakte, beispielsweise die UML für Modelle des objektorientierten Entwurfs oder der Architektur, den OpenAPI-Standard für Schnittstellen-Definitionen, oder Docker für Deployment-Spezifikationen. Zur Erstellung eines funktionsfähigen Softwaresystems müssen diese Artefakte das System einheitlich und widerspruchsfrei darstellen. Beispielsweise müssen Dienst-Schnittstellen in allen Artefakten einheitlich repräsentiert sein. Wir sagen, die Artefakte müssen konsistent sein. In der modellgetriebenen Entwicklung werden solche verschiedenen Artefakte allgemein Modelle genannt und bereits als wesentliche zentrale Entwicklungsbestandteile genutzt, um auch Teile des Programmcodes aus ihnen abzuleiten. Dies betrifft beispielsweise die Softwareentwicklung für Fahrzeuge. Zur Konsistenzerhaltung der Modelle werden oftmals Transformationen eingesetzt, die nach Änderungen eines Modells die anderen Modelle anpassen. Die bisherige Forschung beschränkt sich auf Transformationen zur Konsistenzerhaltung zweier Modelle und die projektspezifische Kombination von Transformationen zur Konsistenzerhaltung mehrerer Modelle. Ein systematischer Entwicklungsprozess, in dem einzelne Transformationen unabhängig entwickelt und in verschiedenen Kontexten modular wiederverwendet werden können, wird hierdurch jedoch nicht unterstützt. In dieser Dissertation erforschen wir, wie Entwickler:innen mehrere Transformationen zu einem Netzwerk kombinieren können, welches die Transformationen in einer geeigneten Reihenfolge ausführen kann, sodass abschließend alle Modelle konsistent zueinander sind. Dies geschieht unter der Annahme, dass einzelne Transformationen zwischen zwei Sprachen unabhängig voneinander entwickelt werden und daher nicht aufeinander abgestimmt werden können. Unsere Beiträge unterteilen sich in die Untersuchung der Korrektheit einer solchen Kombination von Transformationen zu einem Netzwerk und die Optimierung von Qualitätseigenschaften solcher Netzwerke. Wir diskutieren und definieren zunächst einen adäquaten Korrektheitsbegriff, welcher drei Anforderungen impliziert. Diese umfassen eine Synchronisations-Eigenschaft für die einzelnen Transformationen, eine Kompatibilitäts-Eigenschaft für das Transformationsnetzwerk, sowie das Finden einer geeigneten Ausführungsreihenfolge der Transformationen, einer Orchestrierung. Wir stellen ein Konstruktionsverfahren für Transformationen vor, mit welchem die Synchronisations-Eigenschaft basierend auf einer formal bewiesenen Eigenschaft erfüllt wird. Für dieses zeigen wir Vollständigkeit und Angemessenheit mit einer fallstudienbasierten empirischen Evaluation in der Domäne der komponentenbasierten Softwareentwicklung. Wir definieren die Eigenschaft der Kompatibilität von Transformationen, für welche wir ein formales und bewiesen korrektes Analyseverfahren vorschlagen und eine praktische Realisierung ableiten, deren Anwendbarkeit wir in Fallstudien nachweisen. Schlussendlich definieren wir das Orchestrierungsproblem zum Finden einer Orchestrierung, die zu konsistenten Modelle führt wann immer solch eine Orchestrierung existiert. Wir beweisen die Unentscheidbarkeit dieses Problems und diskutieren, dass eine Einschränkung des Problems, um Entscheidbarkeit zu erreichen, die Anwendbarkeit unpraktikabel beschränken würde. Daher schlagen wir einen Algorithmus vor, der das Problem konservativ behandelt. Er findet eine Orchestrierung unter bestimmten, wohldefinierten Bedingungen und terminiert andernfalls mit einem Fehler. Wir beweisen die Korrektheit des Algorithmus und eine Eigenschaft, die das Finden der Ursache im Fehlerfall unterstützt. Zusätzlich kategorisieren wir Fehler, die auftreten können falls ein Netzwerk den definierten Korrektheitsbegriff nicht erfüllt. Daraus leiten wir mittels den bereits genannten Fallstudien ab, dass die meisten potentiellen Fehler per Konstruktion mit den in dieser Arbeit vorgeschlagenen Ansätzen vermieden werden können. Zur Untersuchung von Qualitätseigenschaften eines Netzwerkes von Transformationen klassifizieren wir zunächst relevante Eigenschaften, sowie den Effekt verschiedener Typen von Netzwerktopologien auf diese. Hierbei zeigt sich, dass insbesondere Korrektheit und Wiederverwendbarkeit im Widerspruch stehen, sodass die Wahl der Netzwerktopologie ein Abwägen bei der Optimierung dieser Eigenschaften erfordert. Wir leiten hieraus ein Konstruktionsverfahren für Transformationsnetzwerke ab, welches die Notwendigkeit einer Abwägung zwischen den Qualitätseigenschaften abmildert und, unter gewissen Voraussetzungen, Korrektheit per Konstruktion gewährleistet. Wir unterstützen den Entwicklungsprozess für diesen Ansatz mithilfe einer spezialisierten Spezifikationssprache. Während die Verminderung der Notwendigkeit einer Abwägung zwischen Qualitätseigenschaften durch den Ansatz per Konstruktion erreicht wird, zeigen wir die Erreichbarkeit der Voraussetzungen und die Vorteile der vorgeschlagenen Sprache in einer empirischen Evaluation mithilfe der Fallstudie aus der komponentenbasierten Softwareentwicklung. Die Beiträge dieser Dissertation unterstützen sowohl Forscher:innen als auch Transformationsentwickler:innen und Transformationsanwender:innen bei der Analyse und Konstruktion von Netzwerken von Transformationen. Sie stellen für Forscher:innen und Transformationsentwickler:innen systematisches Wissen über die Korrektheit und weitere Qualitätseigenschaften solcher Netzwerke bereit. Sie zeigen insbesondere welche Teile dieser Eigenschaften per Konstruktion erreicht werden können, welche per Analyse validiert werden können, und welche Fehler unvermeidbar bei der Ausführung erwartet werden müssen. Zusätzlich zu diesen Einsichten stellen wir konkrete, praktisch nutzbare Verfahren bereit, mit denen Transformationsentwickler:innen und Transformationsanwender:innen korrekte, modular wiederverwendbare Netzwerke konstruieren, analysieren und ausführen können

    Actes des Cinquièmes journées nationales du Groupement De Recherche CNRS du Génie de la Programmation et du Logiciel

    Get PDF
    National audienceCe document contient les actes des Cinquièmes journées nationales du Groupement De Recherche CNRS du Gé}nie de la Programmation et du Logiciel (GDR GPL) s'étant déroulées à Nancy du 3 au 5 avril 2013. Les contributions présentées dans ce document ont été sélectionnées par les différents groupes de travail du GDR. Il s'agit de résumés, de nouvelles versions, de posters et de démonstrations qui correspondent à des travaux qui ont déjà été validés par les comités de programmes d'autres conférences et revues et dont les droits appartiennent exclusivement à leurs auteurs

    Facilités de typage pour l'ingénierie des langages

    Get PDF
    Le nombre et la complexité toujours croissants des préoccupations prises en compte dans les systèmes logiciels complexes (e.g., sécurité, IHM, scalabilité, préoccupations du domaine d'application) poussent les concepteurs de tels systèmes à séparer ces préoccupations afin de les traiter de manière indépendante. L'ingénierie dirigée par les modèles (IDM) prône la séparation des préoccupations au sein de langages de modélisation dédiés. Les langages de modélisation dédiés permettent de capitaliser le savoir et le savoir-faire associés à une préoccupation au travers des constructions du langage et des outils associés. Cependant la définition et l'outillage d'un langage dédié demande un effort de développement important pour un public par définition réduit. Nous proposons dans cette thèse une relation liant les modèles et une interface de modèle permettant de faciliter la mise en place de facilités de typage pour la définition et l'outillage d'un langage dédié. Cette interface expose les éléments de modèle et les transformations de modèles associés à un langage de modélisation dédié. Nous représentons une telle interface par un type de modèles supportant des relations de sous-typage et d'héritage. Dans ce but nous définissons : une relation de typage entre les modèles et les langages de modélisation dédiés permettant de considérer les modèles comme des entités de première classe ; des relations de sous-typage entre langages de modélisation dédiés permettant la réutilisation de la syntaxe abstraite et des transformations de modèles.The ever growing number and complexity of concerns in software intensive systems (e.g., safety, HMI, scalability, business domain concerns, etc.) leads designers of such systems to separate these concerns to deal with them independently. Model-Driven Engineering (MDE) advocates the separation of concerns in Domain-Specific Modeling Languages (DSMLs). DSMLs are used to capitalize the knowledge and know-how associated with a concern through the language constructs and its associated tools. However, both definition and tooling of a DSML require a significant development effort for a limited audience. In this thesis, we propose a relationship between models and model interfaces in order to ease the design of typing facilities for the definition and tooling of a DSML. This interface exposes the model elements and model transformations associated with a DSML. We represent such an interface by a model type supporting subtyping and inheritance relationships. For this purpose we define : a typing relationship between models and DSMLs allowing to consider models as first-class entities; subtyping relationships between DSMLs enabling the reuse of abstract syntax and model transformations.RENNES1-Bibl. électronique (352382106) / SudocSudocFranceF

    Configurable Software Performance Completions through Higher-Order Model Transformations

    Get PDF
    Chillies is a novel approach for variable model transformations closing the gap between abstract architecture models, used for performance prediction, and required low-level details. We enable variability of transformations using chain of generators based on the Higher-Order Transformation (HOT). HOTs target different goals, such as template instantiation or transformation composition. In addition, we discuss state-dependent behavior in prediction models and quality of model transformations
    corecore