Usecase Meta Model Comparison and Model Migration. Dawid Kostrzycki Entwicklung verteilter eingebetteter Systeme

Ähnliche Dokumente
Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit

Das Metamodell der UML und in FUJABA. Vortrag von Alexander Geburzi

Themen. Software Design and Quality Group Institute for Program Structures and Data Organization

Übersicht. Eclipse Foundation. Eclipse Plugins & Projects. Eclipse Ganymede Simultaneous Release. Web Tools Platform Projekt. WSDL Editor.

Jochen Bauer

Best Practices für RM/RE in einem Prozess Framework Thomas Schröder

Semantic Web Services

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon

Systemdenken und Gestaltungsmethodik System-Modellierung

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4.

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava

Current Workflow. formatted. Rules. Extensions. Rules. DOM processing with Meta API-calls. Code Generation (Smarty) XMLfile. Source code.

Seminar: Software Engineering verteilter Systeme

Konzeption und Realisierung eines logikbasierten Anfragewerkzeugs für UML-Modelle

Vortrag von: Ilias Agorakis & Robert Roginer

Sof o t f waretechn h o n l o og o i g en n f ü f r ü v e v rteilte S yst s eme Übung

Ontologien und Ontologiesprachen

Entwicklung einer formalen Sprache zur Modelltransformation auf Basis von UML & XMI

Language Workbench. Aktuelle Themen der Softwaretechnologie. Vortrag von: Arthur Rehm Steven Cardoso. Betreut von: Prof. Dr.

Generative Prozessmodelle Patrick Otto MDD Konferenz

Model Driven Development im Überblick

Model Driven Architecture (MDA)

Model-Driven Development in Scrum-Projekten

Software Engineering II

Modellgetriebene Softwareentwicklung und deren Auswirkung auf die Entwicklungsmethodologie von Standardsoftware

Werkzeuge einer MDSD Entwicklungsumgebung für große Softwareproduktlinien Teil 2: Realisierung. itemis AG 2010 All rights reserved

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht

Transparente SOA Governance mit Modellierung. OOP 2010 München, 28. Januar 2010, 12:30 Uhr Modeling Day

Forschungsprojekt SS 2009

Faktor-IPS. Modellgetriebene Softwareentwicklung mit Faktor-IPS. Faktor Zehn AG. Seite 1

IVS Arbeitsgruppe Softwaretechnik Abschnitt Management komplexer Integrationslösungen

Die Entwicklung des Open-Source. Source-Tools. zum Datenbankabgleich von Karsten Panier. Inhalt

Von Windows-Forms zu WPF mit Expression Blend? Thomas Müller conplement AG Nürnberg

Generischer Modellvergleich mit EMF Compare

Model Driven Architecture Praxisbeispiel

Vorstellung. Wie entsteht Architektur in Scrum

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup Conrad Kobsch

Programmieren ohne Programmierer Das GeneSEZ Generator Framework. Gerrit Beine

A Domain Specific Language for Project Execution Models

Grundlagen Software Engineering

SEA. Modellgetriebene Softwareentwicklung in der BA

DSLs mit Xtext entwerfen , A. Arnold

Application Requirements Engineering

Ansätze der Entwicklung von Multiplattform-Anwendungen. M.Eng. Rafael Pisarczyk (FH Aachen)

Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme

Seminar: Software Engineering verteilter Systeme

Jürgen Schwab, debis Systemhaus

Andreas Lux Verknüpfung unterschiedlicher Modellsprachen (BPMN, UML, DSL) zur Anforderungsanalyse

Alexander Delater, Barbara Paech RUPRECHT-KARLS-UNIVERSITÄT HEIDELBERG

Michael Piechotta - CASE Tools. openarchitecture Ware

So#ware Engineering verteilter Systeme. Hauptseminar im SS 2013

Definition von domänenspezifischen Sprachen mit Xtext: Einführung. 19. November 2014

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick

Model Driven Software Development

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Modellgetriebene Softwareentwicklung. 31. Januar 2013

Was sind Ontologie-Editoren?

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

FACHHOCHSCHULE MANNHEIM

Software-Architektur. Spektrum k_/takademischht VERLAG

Sprachübergreifendes, abstraktes Metamodell zur Qualitätsanalyse und Qualitätsverbesserung von OO Systemen

Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer

SimPDM Datenmodell im Kontext zu Teamcenter und PLMXML

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo)

Qualitätssicherung bei der mobilen Datenerfassung

Model Driven Software Development

GI-Technologien zur Umsetzung der EU-Wasserrahmenrichtlinie (WRRL): Wissensbasen. Teil 1: Einführung: Wissensbasis und Ontologie.

Kurzfassung der Studienarbeit

Die MID ModellierungsMethodik M³ ein Baukasten für Produktlinien. Andreas Ditze, MDD & PL 2009, Leipzig,

Ergebnisse zur Umfrage GC MARKT-BLITZLICHT No. 6 Mitarbeiter gewinnen. 08. August 2014

Semantic Web Technologies II SS Semantic Web Übung

VIELE SAGEN... hohe Qualität große Erfahrung besondere Spezialisierung. nur für Sie!

BPEL. Business Process Execution Language. Andre Rein. 21. August Serviceorientierte Architekturen

Thema. Intelligente Agenten im Web

> Barriere freies SharePoint

Software-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon

Wo sind meine Anforderungen?

Eignet sich Eclipse RCP als Enterprise Plattform? 2. Mai 2006 Lars Stucki & Edwin Steiner

Wiki-Lösungen Wer die Wahl hat, hat die Qual

TOGAF The Open Group Architecture Framework

DSL Entwicklung und Modellierung

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung?

Agile Softwareentwicklung

Model Driven Architecture

C09: Einsatz SAP BW im Vergleich zur Best-of-Breed-Produktauswahl

IT-Governance und COBIT. DI Eberhard Binder

Variabilität in Produktlinien und das orthogonale Variabilitätsmodell

SALSAH eine virtuelle Forschungsumgebung für die Geisteswissenschaften

RUP Analyse und Design: Überblick

Prof. Dr. Gabriele Taentzer, Dr. Thorsten Arendt

Einführung in das Eclipse Modeling Framework (EMF)

Methoden und Werkzeuge des Requirements Engineering DOORS Fabian Lücke, Miroslav Kolev

Modellierung & Domänen Spezifische Sprachen (DSL)

Innovation in der Raubtierdressur Neue Wege in der Risikominierung Wolfgang Platz, Founder & CPO

Postfuse Eclipse Plugin zum Visualisieren von Graphen

Bundesverband Flachglas Großhandel Isolierglasherstellung Veredlung e.v. U g -Werte-Tabellen nach DIN EN 673. Flachglasbranche.

Herausforderungen des Enterprise Endpoint Managements

CASE. in der Anwendung. Erfahrungen bei der Einführung von CASE. Herausgegeben von Peter Hruschka. Carl Hanser Verlag München Wien

How to Survive an Audit with Real-Time Traceability and Gap Analysis. Martin Kochloefl, Software Solutions Consultant Seapine Software

Transkript:

Usecase Meta Model Comparison and Model Migration Dawid Kostrzycki Entwicklung verteilter eingebetteter Systeme

Einführung in den Atlas Model Weaver (AMW) theoretisch und praktisch Anwendungsgebiete Wo kann man Atlas Model Weaver (AMW) verwenden? Erfahrungsvermittlung Probleme, Eigenheiten, Fehlerquellen, Einschätzung 2

1. Einleitung 2. Anwendungsgebiete 3. AMW Architektur 4. Heuristiken (Matching Transformation Library) 5. Vorstellung der Fallstudie 6. Demonstration 7. Zusammenfassung 3

Ein Weaving Modell ist ein Modell, das Beziehungen zwischen Modellen ausdrücken soll. Modell A Weaving Modell Modell B 4

Ein Weaving Modell definiert sich durch das Weaving Metamodell. Meta- Meta- Modell M3 konform zu MOF Meta- Modell M2 UML MM AMW MM Modell M1 UML model AWM Model 5

Eine Umgebung für die Anfertigung von Weaving Modellen Entwickelt durch The French National Institute for Research in Computer Science and Control Teil des Generative Modeling Technologies (GMT) Projektes Stellt Tools für die modellgetriebene SW-Entwicklung bereit Plug-In, integriert in die Entwicklungsumgebung Basiert auf Eclipse Modeling Framework (EMF) und nutzt Atlas Transformation Language (ATL) 6

(Meta)model Comparison Vergleich von großen (Meta)modellen Tool Interoperability Migration von Modellen Model Composition Vereinigung von Modellen Model Traceability (Meta)model Annotation Verfolgung von Anforderung Model Refactoring Ontologie Design, Semantic Web 7

Meta Model Comparison and Model Migration Metamodel Comparison Tool Interoperability 8

ElementEqual-Link LinkEnd attribute Equal- Link inkend ElementEqual-Link Metamodel A Weaving Comparison Model Metamodel B 9

Muss man denn alle Links von Hand setzen? Nein. Es existieren Heuristiken, die Gleichheit von Elementen halbautomatisch bestimmen. 10

Tool A Tool B basiert auf basiert auf Metamodel A konform zu verschieden konform zu Metamodel B Modelle A Migration Modell B 11

modelliert Beziehungen Wurzel Referenzen auf Modelle, die in Relation stehen Referenzen auf Elemente in den Modellen n-äre Links 12

Core Metamodell ist eine abstraktes Metamodell. Je nach Bedeutung/Benutzung muss das WM erweitert werden. AMW ZOO M2 <<extends>> <<extends>> AMW Core MM <<extends>> <<extends>> MM Comparison Traceability Extension Annotation Extension Match Extension 13

Cartesian Product Kartesisches Produkt Name Equality Gleichheit von Bezeichnern mit Gewichtung Threshold Selektion der Elemente mit hoher similarity Link Rewriting AxB = {(a,b) a A b B )} Strukturiert das Weaving Modell gemäß contaiment -Beziehung 14

Cartesian Product Kartesisches Produkt Name Equality Gleichheit von Bezeichnern mit Gewichtung Similarity++ Similarity =1 Threshold Selektion der Elemente mit hoher similarity Similarity =0 Link Rewriting Strukturiert das Weaving Modell gemäß contaiment -Beziehung 15

Cartesian Product Kartesisches Produkt Name Equality Gleichheit von Bezeichnern mit Gewichtung Similarity =1 Threshold Selektion der Elemente mit hoher similarity Similarity =0 Link Rewriting Strukturiert das Weaving Modell gemäß contaiment -Beziehung 16

Cartesian Product Kartesisches Produkt Name Equality Gleichheit von Bezeichnern mit Gewichtung Threshold Selektion der Elemente mit hoher similarity Link Rewriting Strukturiert das Weaving Modell gemäß contaiment -Beziehung WModel WModel AttributeEqual- Link ReferenceEqual- Link ElementEqual- Link Link Rewriting ElementEqual- Link AttributeEqual- Link ReferenceEqual- Link 17

Adressbuch Editor A Adressbuch Editor B basiert auf Metamodell Adressbuch A konform zu verschieden basiert auf konform zu Metamodell Adressbuch B Adressen A Migration Adressen B 18

konform zu MM Adressbuch A Adressen A MM Adressbuch B konform zu Adressen B 1 Weaving Comparison Model Migration 3 2 Modelle A B transformieren Model Transformation 19

1 Heuristiken: Match Extension 1. Kartesisches Produkt 2. Name Equality 3. Threshold 4. Link Rewriting MM Adressbuch A konform zu Weaving Comparison M MM Adressbuch B 20

2 AMW MM <<extends>> Match Extension konform zu Weaving Comparison Model Übersetzung Model Transformation ATL Transformation 21

3 konform zu MM Adressbuch A Model Transformation MM Adressbuch B konform zu Adressen A Transformation Adrssen B 22

23

Weaving Modelle im Einsatz in verschiedenen Domänen Erweiterbar durch Metamodell-Erweiterungen Lösung von Problemen auf höheren Abstraktionsebenen Entkopplung von Technologien Skaliert nicht für größere Modelle 24

www.eclipse.org/gmt/amw www.eclipse.org/gmt/amw/usecases/compare/ www.eclipse.org/gmt/amw/examples/scade/scade_doc.php www.eclipse.org/gmt/amw/examples/ www.eclipse.org/gmt/amw/zoo/ www.eclipse.org/m2m/atl/ Weaving Models with the Eclipse AMW plugin Marcos Didonet Del Fabro, Jean Bézivin, Patrick Valduriez Model-driven Tool Interoperability:an Application in Bug Tracking Marcos Didonet Del Fabro, Jean Bézivin, Patrick Valduriez UML 2.0 Infrastructure Specification Object Management Group 25