Einführung in das Eclipse Modeling Framework (EMF)

Ähnliche Dokumente
Einführung in das Eclipse Modeling Framework (EMF)

Eclipse Modeling Framework

Einführung in das Eclipse Modeling Framework (EMF)

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

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen

Software Engineering in der Projektpraxis

Eclipse Modeling Framework Modellgetriebene Softwareentwicklung Prof. Andreas Schmidt

Generischer Modellvergleich mit EMF Compare

Definition von visuellen Alphabeten basierend auf Meta Object Facilities (MOF) 23. Oktober 2012

Prof. Dr. Jan Jürjens

Thema 5 Domain Specific Languages

Prof. Dr. Jan Jürjens

Model Driven Architecture Praxisbeispiel

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools

Metamodellierung mit MOF und Ecore

Model Driven Development im Überblick

Einführung in das Eclipse Modeling Framework. Dr. Thorsten Arendt Marburg, 22. Oktober 2015

Definition von domänenspezifischen Sprachen mit Xtext: Einführung

Michael Piechotta - CASE Tools. openarchitecture Ware

UML (Unified Modelling Language) von Christian Bartl

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo)

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

Model Driven Software Development

Die Unified Modeling Language UML

Problemseminar ModelDrivenSoftwareDevelopment

Oracle JDeveloper 10 g

MDA-Praktikum, Einführung

Datenhaltung für Android. Model First

XMI & Java. von Stefan Ocke so3@inf.tu-dresden.de 5.Juli 2001

Grundlagen von MOF. Alexander Gepting 1

Objektorientierte Systementwicklung

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

"Modellieren geht über Codieren": Willkommen zu SE-Vertiefung! (c) schmiedecke 14 SE3-1-Einführung 1

MDSD in der Praxis. Dr. Shota Okujava.

Vorlesung Programmieren

Von UML 1.x nach UML 2.0

NACHRICHTENTECHNISCHER SYSTEME

Übersicht Eclipse Modeling Project EMP. Zoltan Horvath

Analyse und Design mituml2.1

Henshin: Modelltransformationen in EMF. Dr. Thorsten Arendt Marburg, 29. Oktober 2015

Requirements Engineering I

25. Meta-CASE-Werkzeuge

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

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava

Das Eclipse Modeling Framework (EMF)

Unified Modeling Language 2

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

Werkzeugunabhängigkeit bei der Modellierung Schwierigkeiten und mögliche Lösungsansätze

Datenhaltung für Android Model First Christian Ingenhaag, Frederik Götz, Carl Steeg

Requirements Engineering I

EMF vs. MDA. Klaus Mairon Klaus Häuptle

Software Factories SS Prof. Dr. Dirk Müller. 3 Modellgetriebene Softwareentwicklung

Common Warehouse Metamodel und Imperfektion

Analyse und Design mit U ML 2.3

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

Vortrag von: Ilias Agorakis & Robert Roginer

Metamodellierung mit MOF und Ecore

Java Metadata Interface. Thorsten Pivl

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Poseidon for UML. Einführung. Andreas Blunk

UML Modellierung und Model Driven Architecture (MDA) für Java mittels Rational Software Architect (RSA)

Eclipse Modeling Framework (EMF) und das Graphical Editing Framework (GEF)

Model Driven Architecture

WIRTSCHAFTSINFORMATIK

Guido de Melo Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis

Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

Vorlesung Programmieren

Sommersemester Implementierung I: Struktur

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

Modell-Editoren für Eclipse entwickeln mit GMF

Modellgetriebene Softwareentwicklung bei der IBYKUS AG

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

Visual Studio 2010 Neues für Architekten

Integration von Model-Driven Development und formaler Verfikation in den Softwareentwicklungsprozess

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

Rückblick: Entity-Relationship-Modell

10. Modellgetriebene Entwicklung Softwaretechnik (CNAM) Wintersemester 2009 / 2010 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik

Softwaretechnik. Prof. Dr. Rainer Koschke. Fachbereich Mathematik und Informatik Arbeitsgruppe Softwaretechnik Universität Bremen

Eclipse und EclipseLink

Software Engineering II

Graphischer Editor für die technologieunabhängige User Interface Modellierung

Klausur. Softwareentwurf. 14. Februar 2011 Bearbeitungszeit: 120 Minuten

Studienarbeit. Mohammad Athar Januar Verantw. Betreuer : Prof. Dr. Walter F. Tichy Betr. Mitarbeiter : Dipl.-Inform. Marc Schanne

Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H)

EMF - Eclipse Modeling Framework Seminararbeit im Seminar Information Systems Engineering

Transkript:

1 / 14 Einführung in das Eclipse Modeling Framework (EMF) Maik Schmidt Fachgruppe Praktische Informatik FB 12, Elektrotechnik und Informatik Universität Siegen 21. April 2009

Was ist EMF? Eclipse Modeling Framework 2 / 14 EMF ist ein eigenständiges Eclipse-Projekt (Eclipse Modeling Framework Project) Umfasst: - Modellierungssprache (ecore) zur Modellbildung - Laufzeitumgebung, Schnittstellen u. Infrastruktur (Instanzierung, Persistenz etc.) - Quelltextgenerierungs-Framework zur Erzeugung diverser Quellcode Artefakte (plug-ins für Eclipse) z.b. Modellklassen, oder um Eclipse Editoren zu erzeugen

Wie wird EMF eingesetzt? 3 / 14 [Bacvanski, Graff. 2005]

EMF in der Übersicht 4 / 14

Was ist ecore? Eclipse Modeling Framework 5 / 14 ecore ist eine Sprache zur Definition objektorientierter Modelle - d.h. eine Metasprache ecore wird genutzt um Platform Independent Models zu definieren - Grundlage für die Quelltexterzeugung Standards - Inspiriert durch MOF 1.4 (Meta Object Facility) der OMG (Object Management Group) - Überarbeitet und entspricht jetzt OMGs Essential Meta Object Facility (MOF 2.0 EMOF)

Was ist ein ecore Modell? 6 / 14 Erlaubt die Definition struktureller Modelle Diese sind häufig zu finden in Form von - UML Klassendiagrammen - XML Schemadefinitionen - Entity Relationship Diagrammen -... Konkret: Spezifikation der Daten einer Anwendung ( Nutzdaten ) - Objekte mit Attributen - Relationen (Assoziationen) zwischen Objekten - Operationen auf Objekten - Einfache Bedingungen (z.b. Multiplizität) von Objekten und Relationen

Erzeugen eines Platform Independent Model (PIM) Erzeugung des PIM (ecore-modells) auf vielfältige Art möglich 7 / 14 [Bacvanski, Graff. 2005]

Demo Eclipse Modeling Framework 8 / 14 Modellierung eines einfachen Modells mit EMF

Demo Eclipse Modeling Framework 9 / 14 Erstellung der Anwendungsdaten ( Nutzdaten ) mit Hilfe des EMF-eigenen Editors zur Bearbeitung von Modell-Instanzen

EMF in der Übersicht 10 / 14 [Bacvanski, Graff. 2005]

Das Generatormodell (genmodel) 11 / 14 Zusätzlich zum ecore-modell wird ein Generatormodell, das genmodel benötigt Das genmodel stellt platformspezifische Informationen zu Verfügung - Im Gegensatz zum ecore-modell enthält es nur platformspezifische Informationen Ohne das genmodel ist Quelltexterzeugung nicht möglich Mittels des genmodels kann konfiguriert werden, wie der Quelltext generiert werden soll - Welche Pakete sollen genutzt werden - Welche Infrastrukturteile sollen generiert werden - Wie soll die Modellstruktur dargestellt werden -...

Quelltexterzeugung EMF.editor - Umfasst von Benutzerschnittstelle (Eclipse) abhängigen Teile - Modell Editor - Modell Erzeugungs-Wizard - Registrierung der Dateiendung -... 12 / 14 EMF.edit - Allgemeine Editieroperationen für Modell(-instanz) - EMF-Adapter (item provider) [Bacvanski, Graff. 2005] EMF.model - Umfasst Java Modell Quelltext - Schnittstellenklassen für alle Modellelemente - Realisierung für alle Schnittstellen - Eine Fabrikklasse zur Erzeugung von Exemplaren der Modellobjekte - Eine Paketklasse die Zugriff auf die Metadaten des Modells gewährt

13 / 14 Demo Generierung der Java-Klassenstruktur und Verarbeitung der erstellten Anwendungsdaten über das EMF API

Weiterführende Literatur 14 / 14 EMF homepage http://www.eclipse.org/modeling/emf/ B. Moore et al.: Eclipse Development using the Graphical Editing Framework and the Eclipse Modeling Framework (Buch) http://www.redbooks.ibm.com/redpieces/pdfs/sg246302.pdf V. Bacvanski, P. Graff: Mastering Eclipse Modeling Framework (Konferenzbeitrag) http://www.eclipsecon.org/2005/presentations/ EclipseCon2005_Tutorial28.pdf E. Merks, D. Steinberg: From Models to Code with the Eclipse Modeling Framework (Konferenzbeitrag) http://www.eclipsecon.org/2005/presentations/ EclipseCon2005_Tutorial11final.pdf