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

Größe: px
Ab Seite anzeigen:

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

Transkript

1 Language Workbench Vortrag von:! Aktuelle Themen der Softwaretechnologie Arthur Rehm Steven Cardoso Betreut von: Prof. Dr. Reichenbach [1]

2 !2 Index Kontext Domain Specific Language (DSL) Language Workbench (LW) MPS Spoofax Xtext Auswertung und Vergleich Fazit und Ausblick

3 !3 Intro Wie es beschrieben wird Wie es entworfen wird [5] Was eigentlich gebraucht! wird! Wie es programmiert wird Wie es dokumentiert wird

4 !4 Kontext Spezifikation Synthese Implementierung Was Wie Verifizierung sehr teuer (Komplexitätstheorie)

5 !5 Kontext Spezifikation Synthese Implementierung Was DSL Wie Verifizierung

6 !6 Einleitung GPLs: Allzweckwerkzeuge [3]

7 !7 Einleitung DSLs: Ein Werkzeug für einen Task [4]

8 !8 DSL Domain Specific Language Auf eine Domäne zugeschnitten Hohe Abstraktion Wunsch: Soll von Domänenexperten (nicht- Programmierern) verwendet werden z.b. mittels einfacher Syntax

9 !9 DSL konkreter Syntax! - Repräsentation des abstrakten Syntax abstrakter Syntax! - interne Darstellung der Syntax für weitere Prozesse - z.b. Anwendung von Generatoren auf den AST

10 !10 DSL Interne DSL! - Vollwertige IDE bereits vorhanden - An Syntax des Hosts gebunden - Laien können durch Funktionsumfang erschlagen werden Externe DSL! - Syntax frei wählbar, an Laien anpassbar - Jedoch: - keine IDE - keine Interpreter usw.

11 !11 DSL Vorteile! - Effizient - wenn gut umgesetzt - Steile Lernkurve - Reduktion von Kommunikationsaufwänden Nachteile! - Entwicklungsaufwand: Konzeption (Schema) Parser, Interpreter, etc. (Generator) Komfortable Entwicklungsumgebung (Editor) Language Workbench

12 !12 Language Workbench Martin Fowler Tool Sammlung zum Definieren und Erweitern von Sprachen IDE für externe DSLs

13 !13 Language Workbench Syntax Semantik Editor

14 !14 Language Workbench Syntax Semantik Editor Text Grafik Tabular Grammatik Diagramme Tabellen / Zellen

15 !15 Language Workbench Syntax Semantik Editor Translation Model zu Text Model zu Model

16 !16 Language Workbench Syntax Semantik Editor Editor Mode Syntax Service Semantik Service Frei-Text Projektional Highlighting Folding Completion Diff Referenzen auflösen Semantic completion Refactoring Error Marking Legende obligatorisch optional

17 !17 Language Workbench Challenge Wettbewerb, um aktuelle Language Workbenches (LW) untereinander zu vergleichen Seit 2011 wird jedes Jahr eine Aufgabe gestellt, die mit einem LW zu lösen ist.

18 !18 Language Workbench Challenge LWC : DSL für Formulare

19 !19 LW Vergleich Ziel: Simple DSL zum definieren von Formularen Eingabefelder Radiobuttons Checkboxes Transformation zu HTML

20 !20 MPS Meta Programming System Projektionale Editoren MPS arbeitet direkt am Abstrakten Syntaxbaum

21 MPS Idee hinter projektionalen Editoren!21! [2] Jeder Node im AST ist eine Projektion im MPS Editor

22 !22 MPS Workflow: DSLs in MPS 1. Structure Concept (Model) 2. Editor 3. Generator Model-zu-Model (M2M) Model-zu-Text (M2T)

23 !23 MPS structure editor generator

24 !24 MPS structure editor generator

25 !25 MPS structure editor generator

26 !26 MPS structure editor generator

27 !27 MPS Poll DSL in Action

28 !28 MPS Poll DSL Ergebnis M2T

29 !29 MPS: Anwendung mbeddr LW auf Basis MPS für Embedded Systems C Erweiterungen + eigene Erweiterungen

30 !30 Spoofax IDE auf Eclipse Basis Dateien auf Textbasis Stratego als mächtiges Werkzeug (Analyse, Transformation und Generierung von Code) Strategien und dynamische Regeln Konkrete und abstrakte Syntax kombiniert Sprachen können kombiniert werden

31 !31 Spoofax Grammatik in SDF definieren

32 !32 Spoofax Eclipse als Editor

33 !33 Spoofax Transformationen in Stratego definieren

34 !34 Spoofax Implementierbare IDE Features Code folding, Outline view Syntax highlighting Code completion Error checking und Tests Refactoring (rename, extract, usw.)

35 !35 Xtext IDE auf Eclipse Basis EMF Metamodell und konkrete Syntax in einer Grammatik Transformationen mit Kontrollstrukturen Generiert Java-Klassen aus Grammatik

36 !36 Xtext Grammatik in Xtext definieren

37 !37 Xtext Editor starten

38 !38 Xtext Eigenständiges Eclipse

39 !39 Xtext Transformationen in Xtend definieren

40 !40 Xtext Steile Lernkuve für Java-Entwickler Weniger formale schreibweise Viel Java(-ähnlicher) Code > lesbarer Auch hier: viele IDE Features implementiert

41 !41 Vergleich LW MPS Spoofax Xtext

42 !42 Auswertung MPS projektionale LW Spoofax Stratego als Base Language für verschiedene Tasks Wissenschaftlicher Hintergrund Gut durchdachte Konzepte Xtext Eigenständige IDE zum Arbeiten Sehr ausgereift

43 !43 Fazit Language Workbenches sind ein mächtiges Entwicklungswerkzeug Für wiederkehrende und sicherheitskritische Aufgaben Mit LW lassen sich Domain Sprachen effizient entwerfen und erweitern

44 !44 Ausblick Language Workbenches werden in Zukunft häufiger eingesetzt Große Chance - die Kommunikation zwischen Entwicklern und Domain Experten zu verbessern!

45 Bildquellen: [1] [2] [3] [4] Rainer Sturm / pixelio.de [5]

46 !46 Danke! Fragen?

Domainspezifische Sprachen

Domainspezifische Sprachen Domainspezifische Sprachen Eine Einführung und Vertiefung am Beispiel des Eclipse Xtext Framework Mirko Heinold Institut für Informatik Christian-Albrechts-Universität zu Kiel Arbeitsgruppe Kommunikationssysteme

Mehr

Vorgetragen von. Sanaz Mostowfi Anna Polovets Mandy Neumann

Vorgetragen von. Sanaz Mostowfi Anna Polovets Mandy Neumann Vorgetragen von Sanaz Mostowfi Anna Polovets Mandy Neumann Gliederung Was ist DSL? Welche Arten von DSL gibt es? Vor und Nachteile Werkzeuge zur Erstellung von DSLs XText Definition: DSL (Domain Specific

Mehr

DSLs mit Xtext entwerfen. 17.08.2012, A. Arnold

DSLs mit Xtext entwerfen. 17.08.2012, A. Arnold DSLs mit Xtext entwerfen 17.08.2012, A. Arnold Copyright 2012 anderscore GmbH Inhalt 1. Was sind DSLs? 2. Xtext Konzepte 3. Einführung ins Sprachdesign 4. Hands On! 3 4 8 20 2 Was sind DSLs? Domain Specific

Mehr

Modellierung & Domänen Spezifische Sprachen (DSL)

Modellierung & Domänen Spezifische Sprachen (DSL) Modellierung & Domänen Spezifische Sprachen (DSL) Uni Jena, 2013-04-08 Fachgebiet der zu modellierenden Anwendung Aufteilung in Subdomänen möglich, evtl. spezialisierte Modelle/DSLs nötig Neben fachlichen

Mehr

Modellgetriebene Softwareentwicklung bei der IBYKUS AG

Modellgetriebene Softwareentwicklung bei der IBYKUS AG Modellgetriebene Softwareentwicklung bei der IBYKUS AG Theorie Teil 4: Domänenspezifische Sprachen Dr. Steffen Skatulla IBYKUS AG 1 Inhalt Teil 4: Domänenspezifische Sprachen Nutzung vorhandener Sprachen

Mehr

Vergleich ausgewählter Vertreter von Language Workbenches zur Entwicklung domänenspezifischer Sprachen

Vergleich ausgewählter Vertreter von Language Workbenches zur Entwicklung domänenspezifischer Sprachen FernUniversität in Hagen Fakultät für Mathematik und Informatik Lehrgebiet Programmiersysteme Prof. Dr. Friedrich Steimann Abschlussarbeit im Studiengang Master of Computer Science Vergleich ausgewählter

Mehr

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

Andreas Lux 16.03.2010. Verknüpfung unterschiedlicher Modellsprachen (BPMN, UML, DSL) zur Anforderungsanalyse Andreas Lux 16.03.2010 Verknüpfung unterschiedlicher Modellsprachen (BPMN, UML, DSL) zur Anforderungsanalyse Warum unterschiedliche Sprachen? Nicht alle Probleme eignen sich, um mit Standardsprachen beschrieben

Mehr

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

Definition von domänenspezifischen Sprachen mit Xtext: Einführung. 19. November 2014 Definition von domänenspezifischen Sprachen mit Xtext: Einführung 19. November 2014 Überblick Was ist zu tun, wenn wir selbst einen Ansatz für modellgetriebenen Entwicklung definieren wollen? Anforderungserfassung

Mehr

Herausforderung: Entwicklungsmethodik und technisches Umfeld

Herausforderung: Entwicklungsmethodik und technisches Umfeld Model Driven Software Development Herausforderung: Entwicklungsmethodik und technisches Umfeld Referent: Christoph Schmidt-Casdorff Seite 2 / 42 Inhaltsverzeichnis 1. Werkzeuglandschaft 1.1 Language Workbench

Mehr

Erweiterbare Programmiersprachen und DSLs

Erweiterbare Programmiersprachen und DSLs Erweiterbare Programmiersprachen und DSLs Markus Voelter, Freiberufler/itemis Bernhard Merkle, SICK AG Dieser Vortrag (und dieses Paper) beschreiben einen neuartigen Ansatz für die Entwicklung eingebetteter

Mehr

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 1 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell

Mehr

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

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4. SEW Übung EMFText 1 Aufgabe Erstellen Sie eine textuelle Domänenspezifische Sprache Domain-specific Language (DSL) mit dem Werkzeug EMFText. Die Sprache soll dazu dienen Formulare (Fragen, Antworttypen

Mehr

Domänenspezifische Sprachen und Microsoft Oslo

Domänenspezifische Sprachen und Microsoft Oslo Domänenspezifische Sprachen und Microsoft Oslo Markus Voelter, Independent/itemis, voelter@acm.org Lars Corneliussen, itemis, lars.corneliussen@itemis.de Auf der PDC letzten Herbst hat Microsoft eine neue

Mehr

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

Faktor-IPS. Modellgetriebene Softwareentwicklung mit Faktor-IPS. Faktor Zehn AG. Seite 1 Faktor-IPS Modellgetriebene Softwareentwicklung mit Faktor-IPS Seite 1 Faktor-IPS Faktor-IPS ist ein Werkzeug zur modellgetriebenen Entwicklung versicherungsfachlicher Systeme Bestandssysteme Außendienstsysteme

Mehr

Experiences with Model Driven Software Development Creating the Palladio Tool Chain Eclipse Application Developer Day 7.

Experiences with Model Driven Software Development Creating the Palladio Tool Chain Eclipse Application Developer Day 7. Experiences with Model Driven Software Development Creating the Palladio Tool Chain Eclipse Application Developer Day 7. July, 2009 WIR FORSCHEN FÜR SIE Dr.-Ing. Steffen Becker sbecker@fzi.de Abteilungsleiter

Mehr

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012 Einführung in modellgetriebene Softwareentwicklung 24. Oktober 2012 Überblick Was sind die Grundprinzipien der modellgetriebenen Softwareentwicklung? Entwicklung einer MDD-Infrastruktur Modellgetriebene

Mehr

Software Engineering II

Software Engineering II Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters

Mehr

Modellgetriebene Softwareentwicklung bei der IBYKUS AG

Modellgetriebene Softwareentwicklung bei der IBYKUS AG Modellgetriebene Softwareentwicklung bei der IBYKUS AG Theorie Teil 3: Metamodellierung Dr. Steffen Skatulla IBYKUS AG 1 Inhalt Teil 3: Metamodellierung Metamodelldefinition Metamodel, abstrakte und konkrete

Mehr

PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN

PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN Mathias Slawik, WI (M), 3. FS Aktuelle Themen der Wirtschaftsinformatik, HTW Berlin, WS 10/11 Gliederung 2 Methode

Mehr

Einführung in Generatives Programmieren. Bastian Molkenthin

Einführung in Generatives Programmieren. Bastian Molkenthin Einführung in Generatives Programmieren Bastian Molkenthin Motivation Industrielle Entwicklung *!!*,(% % - #$% #!" + '( & )!* Softwareentwicklung Rückblick auf Objektorientierung Objektorientierte Softwareentwicklung

Mehr

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

Software Factories SS 2016. Prof. Dr. Dirk Müller. 3 Modellgetriebene Softwareentwicklung Software Factories 3 Modellgetriebene Softwareentwicklung Prof. Dr. Dirk Müller Übersicht Einordnung im Lebenszyklus Ziele Hebung des Abstraktionsniveaus Model Driven Architecture (MDA) Domänenspezifische

Mehr

Gliederung. Modellbildung in der Entwicklung mit Schwerpunkt Architekturen. Domain Specific Languages. Sprachen. Programmiersprachen

Gliederung. Modellbildung in der Entwicklung mit Schwerpunkt Architekturen. Domain Specific Languages. Sprachen. Programmiersprachen Modellbildung in der Entwicklung mit Schwerpunkt Architekturen Gliederung Modellbildung in der Entwicklung mit Schwerpunkt Architekturen Domain Specific Languages Prof. Dr. Dr. h.c. Manfred Broy Gemeinsam

Mehr

SEA. Modellgetriebene Softwareentwicklung in der BA

SEA. Modellgetriebene Softwareentwicklung in der BA SEA Modellgetriebene Softwareentwicklung in der BA MDA bei der BA Ziele/Vorteile: für die Fachabteilung für die Systementwicklung für den Betrieb Wie wird MDA in der BA umgesetzt? Seite 2 MDA bei der BA

Mehr

Jochen Bauer 08.01.2010

Jochen Bauer 08.01.2010 08.01.2010 Um was geht s und wie läuft s ab? Eclipse-EMP-MDT: Standards unter einem Dach! Gliederung 1. der Model (MDT) 2. Model-Driven- (MDD) und MDT 3. Interne Domain-Specific-Languages (DSL) 4. 5. 6.,

Mehr

Michael Piechotta - CASE Tools. openarchitecture Ware

Michael Piechotta - CASE Tools. openarchitecture Ware Model Driven Development Michael Piechotta - CASE Tools openarchitecture Ware Gliederung 1.Einleitung - Was ist MDD? - Wozu MDD? 2.Model Driven Development - OMG Konzepte: Modelle,Transformationen Meta-Modellierung

Mehr

Problemseminar ModelDrivenSoftwareDevelopment

Problemseminar ModelDrivenSoftwareDevelopment Problemseminar ModelDrivenSoftwareDevelopment Metamodellierungswerkzeuge Björn Dassow Aufbau Definition Beschreibung Metamodellierung Kurzer Überblick über EMF, GME, MetaEdit+ Interoperabilitätsbetrachtung

Mehr

Domain Specific Languages. Elmar Jürgens, Martin Feilkas Perlen 6.12.2006

Domain Specific Languages. Elmar Jürgens, Martin Feilkas Perlen 6.12.2006 Domain Specific Languages Elmar Jürgens, Martin Feilkas Perlen 6.12.2006 1 Gliederung Definitionen Beispiele Vor- und Nachteile Prinzipien Aktueller Aktuelle Ansätze Offene Fragen Literatur 2 Programmiersprachen

Mehr

Comic Generierung - PJ 2

Comic Generierung - PJ 2 Comic Generierung - PJ 2 Fenja Harbke Sommersemester 2015 Ziel der Masterarbeit ist eine Comic-DSL. Deren Input soll Panel für Panel einen Comic nach der in der DSL spezifizierten Beschreibung generieren.

Mehr

Was ist ein Compiler?

Was ist ein Compiler? Was ist ein Compiler? Was ist ein Compiler und worum geht es? Wie ist ein Compiler aufgebaut? Warum beschäftigen wir uns mit Compilerbau? Wie ist die Veranstaltung organisiert? Was interessiert Sie besonders?

Mehr

domänenspezifischenprogrammiersprachen

domänenspezifischenprogrammiersprachen Effiziente Entwicklung vonautosar-komponenten mit domänenspezifischenprogrammiersprachen Dr. Frank Höwing LINEAS Automotive GmbH Theodor-Heuss-Str. 2 D-38122 Braunschweig frank.hoewing@lineas.de Abstract:

Mehr

Abschlussvortrag Masterarbeit: Operationalizing Architecture in an agile Software Projec

Abschlussvortrag Masterarbeit: Operationalizing Architecture in an agile Software Projec Abschlussvortrag Masterarbeit: Operationalizing in an agile Software Projec Freie Universität Berlin, Institut für Informatik February 2, 2015 Übersicht 2 Was ist Softwarearchitektur? Softwarearchitektur

Mehr

Copyright 2014 Delta Software Technology GmbH. All Rights reserved.

Copyright 2014 Delta Software Technology GmbH. All Rights reserved. Karlsruhe, 21. Mai 2014 Softwareentwicklung - Modellgetrieben und trotzdem agil Daniela Schilling Delta Software Technology GmbH The Perfect Way to Better Software Modellgetriebene Entwicklung Garant für

Mehr

Comparing Software Factories and Software Product Lines

Comparing Software Factories and Software Product Lines Comparing Software Factories and Software Product Lines Martin Kleine kleine.martin@gmx.de Betreuer: Andreas Wuebbeke Agenda Motivation Zentrale Konzepte Software Produktlinien Software Factories Vergleich

Mehr

A Domain Specific Language for Project Execution Models

A Domain Specific Language for Project Execution Models A Domain Specific Language for Project Execution Models Eugen Wachtel, Marco Kuhrmann, Georg Kalus Institut für Informatik Software & Systems Engineering Inhalt Einführung und Hintergrund Problembereiche

Mehr

DSL Entwicklung und Modellierung

DSL Entwicklung und Modellierung DSL Entwicklung und Modellierung Dipl. Inform. Rolf Hänisch Übersicht DSL, was bedeutet das für uns? Eine Anwendung aus der Automatisierungstechnik Sprachen und Werkzeuge Ergebnisse und Erfahrungen GI

Mehr

openarchitectureware Was mit dem Open Source MDSDWerkzeug möglich ist

openarchitectureware Was mit dem Open Source MDSDWerkzeug möglich ist openarchitectureware Was mit dem Open Source MDSDWerkzeug möglich ist Dipl.-Inf. (FH) Karsten Thoms Telefon Mobile E-Mail + 49 231 9860 213 + 49 163 4979708 karsten.thoms@itemis.de https://www.xing.com/profile/karsten_thoms

Mehr

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo)

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo) Gert Bikker, Kevin Barwich, Arne Noyer Domänenspezifisch entwickeln mit UML (Vortrag mit Demo) Die Modellierung mit UML bietet auch für eingebettete Systeme viele Vorteile. Um die Vorteile effizient nutzen

Mehr

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

Themen. Software Design and Quality Group Institute for Program Structures and Data Organization Themen 2 28.04.2010 MODELLGETRIEBENE SOFTWARE-ENTWICKLUNG Grundlagen 3 28.04.2010 Meta-Modell: Lego Meta-Modell Bauvorschriften Building Block * connected with Modell Lego Reale Welt Haus Bilder: (c) designritter

Mehr

Generatives Programmieren

Generatives Programmieren Generatives Programmieren Seminar Produktlinien WS03/04 Tammo van Lessen 08.01.2004 Outline Einleitung Generatoren Generatives Programmieren Fazit Einleitung Industrielle Entwicklung 1826 Austauschbare

Mehr

WIRTSCHAFTSINFORMATIK

WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster A platform for professional model-driven software development. Präsentation im Rahmen des Seminars Software Engineering WS 08/09 Jan Schürmeier Jan.Schuermeier@gmx.de

Mehr

Modellbasierte Entwicklung von Testspezifikationen

Modellbasierte Entwicklung von Testspezifikationen Modellbasierte Entwicklung von Testspezifikationen Holger Funke HJP Consulting GmbH, Hauptstraße 35, 33178 Borchen holger.funke@hjp-consulting.com Zusammenfassung Das Schreiben und Implementieren von Testspezifikationen

Mehr

Model Driven Development einige wichtige Grundprinzipien

Model Driven Development einige wichtige Grundprinzipien Model Driven Development einige wichtige Grundprinzipien Johannes Scheier j@scheier software.ch Copyright by Scheier Software Engineering Seite 1 Inhalt Was ist Model Driven Development (MDD)? Was verspricht

Mehr

Programmieren ohne Programmierer Das GeneSEZ Generator Framework. Gerrit Beine gerrit.beine@sapat.de

Programmieren ohne Programmierer Das GeneSEZ Generator Framework. Gerrit Beine gerrit.beine@sapat.de Programmieren ohne Programmierer Das GeneSEZ Generator Framework Gerrit Beine gerrit.beine@sapat.de Vogelperspektive Theorie: Model driven software development Praxis: Konzepte von GeneSEZ Lösungen für

Mehr

Ajax zum Projekteinsatz!

Ajax zum Projekteinsatz! Ajax zum Projekteinsatz! Projektvoraussetzungen Hardware / Software Für Deployment: Gute bis sehr gute Konnektivität Primär: Geringe Latenzzeit Sekundär: Hohe Bandbreite Für Entwicklung: Webserver DB Umgebung

Mehr

openarchitectureware

openarchitectureware openarchitectureware Enrico Schnepel EAS, FHTW-Berlin 07.06.2007 2007 (CC by-nc-sa 2.0 Germany) Enrico Schnepel ( EAS, FHTW-Berlin ) openarchitectureware 07.06.2007 1 / 26 Gliederung 1 Einleitung 2 Begriffsdefinitionen

Mehr

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

Usecase Meta Model Comparison and Model Migration. Dawid Kostrzycki Entwicklung verteilter eingebetteter Systeme 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

Mehr

Modellbasierte Softwareentwicklung mit EMF

Modellbasierte Softwareentwicklung mit EMF Softwaretechnik I, WS 2009/10 Modellbasierte Softwareentwicklung mit EMF Übungsblatt 5 13. November 2009 Organisatorisches Zur Bearbeitung der Übungsaufgabe stehen Ihnen die folgenden 3 Wochen (Kalenderwochen

Mehr

Visuelle DSLs Trends in der Softwaretechnik: Domänenspezifische Sprachen (Seminar WS 2010/11) Thorsten Arendt

Visuelle DSLs Trends in der Softwaretechnik: Domänenspezifische Sprachen (Seminar WS 2010/11) Thorsten Arendt Visuelle DSLs Trends in der Softwaretechnik: Domänenspezifische Sprachen (Seminar WS 2010/11) Thorsten Arendt Problemlösung = Abstrahierung Entwicklung der Programmiersprachen Maschinencode/Binärcode:

Mehr

Universität Paderborn Die Universität der Informationsgesellschaft. Validierung und Verifikation (inkl. Testen, Model-Checking, Theorem Proving)

Universität Paderborn Die Universität der Informationsgesellschaft. Validierung und Verifikation (inkl. Testen, Model-Checking, Theorem Proving) Universität Paderborn Die Universität der Informationsgesellschaft Analyse, Entwurf und Implementierung zuverlässiger Software und (inkl., Model-Checking, Theorem Proving) Torsten Bresser torbre@uni-paderborn.de

Mehr

Vortrag von: Ilias Agorakis & Robert Roginer

Vortrag von: Ilias Agorakis & Robert Roginer MDA Model Driven Architecture Vortrag von: Ilias Agorakis & Robert Roginer Anwendungen der SWT - WS 08/09 Inhalt Was ist MDA? Object Management Group (OMG) Ziele Konzepte der MDA Werkzeuge Vor- und Nachteile

Mehr

ESE Conference 2011, Zürich. Generative Konzepte für den Plattform-Zoo - am Beispiel Mobile-Apps. Rüdiger Schilling Delta Software Technology GmbH

ESE Conference 2011, Zürich. Generative Konzepte für den Plattform-Zoo - am Beispiel Mobile-Apps. Rüdiger Schilling Delta Software Technology GmbH ESE Conference 2011, Zürich Generative Konzepte für den Plattform-Zoo - am Beispiel Mobile-Apps Rüdiger Schilling Delta Software Technology GmbH The Perfect Way to Better Software 1 Der mobile Plattform-Zoo

Mehr

Model Driven Software Development

Model Driven Software Development Model Driven Software Development Key Note DGLR Workshop, TUM Garching, 4. Oktober 2011 Dr. Björn Pötter Leiter SoftwareFactory (FCS & UAV Software), Cassidian (EADS) Trends in der Softwareentwicklung

Mehr

Seminar: Software Engineering verteilter Systeme

Seminar: Software Engineering verteilter Systeme Seminar: Software Engineering verteilter Systeme Hauptseminar im WS 2010/2011 Programmierung verteilter Systeme Institut für Informatik Universität Augsburg 86135 Augsburg Tel.: +49 821 598-2118 Fax: +49

Mehr

Quellen: Towards a Human Computer InteractionPerspective. Übersicht. Warum visuelle Sprachen? Begriffsdefinitionen: Hinderungsgründe bisher:

Quellen: Towards a Human Computer InteractionPerspective. Übersicht. Warum visuelle Sprachen? Begriffsdefinitionen: Hinderungsgründe bisher: Quellen: Towards a Human Computer InteractionPerspective von B.K. & B.K. LV: Visuelle Sprachen (03-763) Universität Bremen WS 2001/02 Visual Language Theory: Towards a Human- Computer Perspective; N. Hari

Mehr

Analyse und Toolevaluierung

Analyse und Toolevaluierung Analyse und Toolevaluierung Evaluierung von Werkzeugen zur Erstellung von IT-Spezifikationen Im Zuge der Standardisierung und Industrialisierung der Softwareerstellung stehen zunächst kleinere Verbesserungen

Mehr

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

Andreas Lux 26.01.2011. Verknüpfung unterschiedlicher Modellsprachen (BPMN, UML, DSL) zur Anforderungsanalyse Andreas Lux 26.01.2011 Verknüpfung unterschiedicher Modesprachen (BPMN, UML, DSL) zur Anforderungsanayse Warum unterschiediche Sprachen? Nicht ae Probeme eignen sich, um mit Standardsprachen beschrieben

Mehr

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon Ringvorlesung Softwareentwicklung in der industriellen Praxis TU Dresden 14. Dezember 2011 Die i.s.x. Software GmbH & Co. KG Junges,

Mehr

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

Graphischer Editor für die technologieunabhängige User Interface Modellierung Universität Augsburg Lehrstuhl für Softwaretechnik und Programmiersprachen Prof. Dr. Bernhard Bauer Praktikum Modellgetriebene Softwareentwicklung SS 2008 Graphischer Editor für die technologieunabhängige

Mehr

Seminar: Software Engineering verteilter Systeme

Seminar: Software Engineering verteilter Systeme Seminar: Software Engineering verteilter Systeme Hauptseminar im Sommersemester 2011 Programmierung verteilter Systeme Institut für Informatik Universität Augsburg 86135 Augsburg Tel.: +49 821 598-2118

Mehr

EMF-GMF-Tutorial: Petrinet

EMF-GMF-Tutorial: Petrinet EMF-GMF-Tutorial: Petrinet Petrinet-Metamodell anlegen 1. File/New/Other: Empty EMF Project Project Name: de.upb.agengels.se.petrinet 2. Rechtsklick auf model-verzeichnis => New/Other: Ecore Diagram Domain

Mehr

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

Datenhaltung für Android Model First. 30.03.2011 Christian Ingenhaag, Frederik Götz, Carl Steeg Datenhaltung für Android Model First 30.03.2011 Christian Ingenhaag, Frederik Götz, Carl Steeg Agenda Datenhaltung in Android Motivation / Projektziele Projekt Umsetzung Stand der Entwicklung Fazit 2 Datenhaltung

Mehr

Individuelle Erweiterung des generierten Codes. 16. Januar 2013

Individuelle Erweiterung des generierten Codes. 16. Januar 2013 Individuelle Erweiterung des generierten Codes 16. Januar 2013 Überblick Welche Möglichkeiten zur individuellen Erweiterung von generiertem Code gibt es? Innerhalb eines Moduls (Klasse) Auf Modulebene

Mehr

Domänenspezifische Sprachen

Domänenspezifische Sprachen Domänenspezifische Sprachen Eine Einführung und Vertiefung am Beispiel des Eclipse Xtext Framework Mirko Heinold MatrikelNr: 890825 mhei@informatik.uni-kiel.de 15. März 2012 Institut für Informatik Christian-Albrechts-Universität

Mehr

Domain Specific Languages

Domain Specific Languages Domain Specific Languages Entwicklungsphasen für Anwendungsbezogene Sprachen (Domain Specific Language, DSL) präsentiert von Achim Schumacher im Seminar Software Language Engeneering 07.01.2010 Achim Schumacher:

Mehr

Product Line Engineering (PLE)

Product Line Engineering (PLE) Product Line Engineering (PLE) Produktlinienentwicklung Von Christoph Kuberczyk Christoph Kuberczyk, SE in der Wissenschaft 2015, Product Line Engineering 1 Gliederung 1. Was ist PLE? 2. Motivation 3.

Mehr

Lina Gundelwein Computational Engineering 21671480

Lina Gundelwein Computational Engineering 21671480 Praktikumsbericht Praktikumsanbieter: National ICT Australia LTD 223 Anzac Parade, Kensington NSW 2052 Praktikumszeitraum: 29.07.2013 05.10.2013 durchschnittliche Wochenarbeitszeit: 35 Stunden Lina Gundelwein

Mehr

eclipse - Entwicklungsumgebung und mehr ETIS SS05

eclipse - Entwicklungsumgebung und mehr ETIS SS05 eclipse - Entwicklungsumgebung und mehr ETIS SS05 Gliederung Motivation Geschichte Architektur Platform Runtime Eclipse Platform Java Development Tools (JDE) Plugin Development Environment (PDE) Zusammenfassung

Mehr

Domänenspezifische Editoren für die Entwicklung von Embedded Systems

Domänenspezifische Editoren für die Entwicklung von Embedded Systems 1 Domänenspezifische Editoren für die Entwicklung von Embedded Systems Axel Terfloth, Svenja Wendler, Marc Habiger itemis GmbH & Co. KG, 44536 Lünen, axel.terfloth@itemis.de svenja.wendler@itemis.de marc.habiger@itemis.de

Mehr

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Kapitel 4 Einführung in den Scannergenerator Flex Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Generatoren für die lexikalische Analyse Scannergeneratoren werden eingesetzt um die

Mehr

Agile Modellierung mit UML Lab

Agile Modellierung mit UML Lab Agile Modellierung mit UML Lab Produktisierung und Vertrieb eines MDSE Tools in der Praxis Dipl.-Inf. Manuel Bork Yatta Solutions GmbH t e +49 (0)561 5743277-21 bork@yatta.de @ManuelBork UNSER GESCHÄFT

Mehr

Entwicklung einer domänenspezifischen Modellierungssprache. 12. November 2014

Entwicklung einer domänenspezifischen Modellierungssprache. 12. November 2014 Entwicklung einer domänenspezifischen Modellierungssprache 12. November 2014 Überblick Analyse einer Infrastruktur für mobile Anwendungen: Welche Anwendungen sollen generiert werden? Welche Architektur?

Mehr

Softwarequalität: Zusammenfassung und Ausblick. 17. Juli 2013

Softwarequalität: Zusammenfassung und Ausblick. 17. Juli 2013 Softwarequalität: Zusammenfassung und Ausblick 17. Juli 2013 Überblick Rückblick: Qualitätskriterien Qualitätsmanagement Qualitätssicherungsmaßnahmen Thesen zur Softwarequalität Ausblick: Lehrveranstaltungen

Mehr

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

Entwicklung einer formalen Sprache zur Modelltransformation auf Basis von UML & XMI Entwicklung einer formalen Sprache zur Modelltransformation auf Basis von UML & XMI Swisstopo-Kolloquium 11.04.2008 TU München, 13. März 2007 Inhalt 1. Anforderungen, Voraussetzungen, Grundlagen 2. Instrumente

Mehr

Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren

Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren Mirko Seifert, DevBoost GmbH 12. November 2013, ASQF Modeling Day 2013, Nürnberg Agenda 1. Der

Mehr

Thema 7 Einstieg in die Semesterarbeit

Thema 7 Einstieg in die Semesterarbeit SE Vertiefung Beuth-Hochschule Berlin Thema 7 Einstieg in die Semesterarbeit Agenda 1. Beschränkung der Aufgabe 2. Vorgehensweise bei der Metamodell-Erstellung 3. Anforderungen und Bewertungsgrundlage

Mehr

Ausarbeitung des Interpreter Referats

Ausarbeitung des Interpreter Referats Ausarbeitung des Interpreter Referats Gliederung 1. Programmiersprache 1.2. Syntax 1.2.1. Konkrete Syntax 1.2.2. Abstrakter Syntax Baum (Abstrakte Syntax) 2. Parser 2.1. Syntaktische Struktur einer Sprache

Mehr

HTML / CSS. Hans Gell Schulungen & Dienstleistungen www.hans-gell.de. Übersicht der Schulungsinhalte

HTML / CSS. Hans Gell Schulungen & Dienstleistungen www.hans-gell.de. Übersicht der Schulungsinhalte HTML / CSS Übersicht der Schulungsinhalte Grundlagen Einleitung HTML-Historie Java Script, XML, PHP, Flash Webstandards und Browser Werkzeuge und Tools UltraEdit und Dreamweaver TopStyle, Web Developer

Mehr

Qualität von Software und Softwaremodellen Seminar der AG Softwaretechnik im Sommer-Semester 2013

Qualität von Software und Softwaremodellen Seminar der AG Softwaretechnik im Sommer-Semester 2013 Qualität von Software Seminar der AG Softwaretechnik im Sommer-Semester 2013 Gabriele Taentzer, Thorsten Arendt Marburg, 16. April 2013 ORGANISATION (TEIL 1) 2 Thorsten Arendt: Seminar Qualität von Software

Mehr

Model Driven Development im Überblick

Model Driven Development im Überblick Model Driven Development im Überblick Arif Chughtai Diplom-Informatiker (FH) www.digicomp-academy, Seite 1 September 05 Inhalt Motivation Überblick MDA Kleines Beispiel Werkzeuge www.digicomp-academy,

Mehr

25. Meta-CASE-Werkzeuge

25. Meta-CASE-Werkzeuge 25. Meta-CASE-Werkzeuge Prof. Dr. Uwe Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik http://st.inf.tu-dresden.de Version 11-1.0, 08.12.11 1) Meta-CASE-Werkzeuge 2) MetaEdit+

Mehr

Übersicht Eclipse Modeling Project EMP. Zoltan Horvath

Übersicht Eclipse Modeling Project EMP. Zoltan Horvath ) Schulung ) AUTOR Zoltan Horvath Orientation in Objects GmbH ) Beratung ) Veröffentlicht am: 26.2.2010 ÜBERSICHT ECLIPSE MODELING PROJECT ) Entwicklung ) ) Artikel ) Das Eclipse Modeling Project dient

Mehr

MODELLGETRIEBENE SOFTWAREENTWICKLUNG: ALLES UML, ODER?

MODELLGETRIEBENE SOFTWAREENTWICKLUNG: ALLES UML, ODER? 1 2 MODELLGETRIEBENE SOFTWAREENTWICKLUNG: ALLES UML, ODER? Bei modellgetriebener Softwareentwicklung werden aus kompakten Modellbeschreibungen lauffähige Softwareprogramme generiert. Solche Modellbeschreibungen

Mehr

Oberseminar Softwareentwicklung

Oberseminar Softwareentwicklung Oberseminar Softwareentwicklung Data structures programs / Daten strukturieren Programme Pieter Hauffe Data structures programs Die Wahl der Datenrepräsentation in Software beeinflusst die gesamte Entwicklung

Mehr

Eclipse Plugins für die komfortablere Verwendung von ibatis SQLMaps

Eclipse Plugins für die komfortablere Verwendung von ibatis SQLMaps Projekt: Intern Softwareprojekt FH Furtwangen Status: Draft Ersteller: Kai Grabfelder Datum: 11.02.2007 Eclipse Plugins für die komfortablere Verwendung von ibatis SQLMaps 1 Beschreibung... 2 Semesterprojekt...

Mehr

Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme

Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme Michael Felderer Workshop Requirements Engineering meets Testing Bad Honnef, 5. Juni 2008 1 Überblick Grundbegriffe Motivation

Mehr

Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009

Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009 Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009 Gliederung 1. Generative Programmierung 2. Möglichkeiten und Einsatzgebiet 3. Prozess / Tools 4. Zusammenfassung 19.03.2009 GENERATIVE PROGRAMMIERUNG

Mehr

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

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen

Mehr

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

Softwaretechnik. Prof. Dr. Rainer Koschke. Fachbereich Mathematik und Informatik Arbeitsgruppe Softwaretechnik Universität Bremen Softwaretechnik Prof. Dr. Rainer Koschke Fachbereich Mathematik und Informatik Arbeitsgruppe Softwaretechnik Universität Bremen Wintersemester 2011/12 Überblick I Modellgetriebene Softwareentwicklung Modellgetriebene

Mehr

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

Konzeption und Realisierung eines logikbasierten Anfragewerkzeugs für UML-Modelle Konzeption und Realisierung eines logikbasierten Anfragewerkzeugs für UML-Modelle Doktoranden-, Diplomandenseminar, Institut für Informatik, TU Clausthal 23. Juni 2009 Motivation: Modelle werden in der

Mehr

Softwarevarianten im Griff mit textuellen DSLs

Softwarevarianten im Griff mit textuellen DSLs Softwarevarianten im Griff mit textuellen DSLs Erfahrungsbericht SE 2010 - Paderborn Industrietag 24.02.2010 Johannes Reitzner Leiter CoC Model Driven Development Produktlinien-Beispiel Planungssysteme

Mehr

Adobe Flex & Grails RIA, REST und XML

Adobe Flex & Grails RIA, REST und XML Adobe Flex & Grails RIA, REST und XML Pascal Schudel Consultant pascal.schudel@trivadis.com Mischa Kölliker Principal Consultant mischa.koelliker@trivadis.com JUGS Zürich, 8. Juli 2010 Basel Bern Lausanne

Mehr

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Jens Kohlmeyer 05. März 2007 Institut für Programmiermethodik und Compilerbau ActiveCharts Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Seite 2 Übersicht

Mehr

Projektseminar Modellbasierte Softwareentwicklung SoSe2014

Projektseminar Modellbasierte Softwareentwicklung SoSe2014 Projektseminar Modellbasierte Softwareentwicklung SoSe2014 Kickoff-Meeting ES Real-Time Systems Lab Prof. Dr. rer. nat. Andy Schürr Dr. Gergely Varró, Anthony Anjorin, Erhan Leblebici {gergely.varro, anthony.anjorin,erhan.leblebici}@es.tu-darmstadt.de

Mehr

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

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit EMF ist ein eigenständiges Eclipse-Projekt (Eclipse Modeling Framework Project) EMF ist ein Modellierungsframework und Tool

Mehr

SPRACHSENSITIVE ENTWICKLUNGSUMGEBUNGEN AUF BASIS DER ECLIPSE-PLATTFORM

SPRACHSENSITIVE ENTWICKLUNGSUMGEBUNGEN AUF BASIS DER ECLIPSE-PLATTFORM mehr zum thema: eclipse.org rubyeclipse.sourceforge.net die autoren SPRACHSENSITIVE ENTWICKLUNGSUMGEBUNGEN AUF BASIS DER ECLIPSE-PLATTFORM Eclipse wurde von Beginn an nicht nur als eine integrierte Java-Entwicklungsumgebung,

Mehr

10 Erweiterung und Portierung

10 Erweiterung und Portierung 10.1 Überblick In vielen Fällen werden Compiler nicht vollständig neu geschrieben, sondern von einem Rechnersystem auf ein anderes portiert. Das spart viel Arbeit, ist aber immer noch eine sehr anspruchsvolle

Mehr

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

Current Workflow. formatted. Rules. Extensions. Rules. DOM processing with Meta API-calls. Code Generation (Smarty) XMLfile. Source code. Current Workflow Rules T1 Rules Extensions XMLfile DOM processing with Meta API-calls Model 1 T2 Model 2 Code Generation (Smarty) Source code PP formatted sourcecode DTD V1 Rules XMI 1/21 Anbindung eines

Mehr

SAP Software Engineering live Agile! Agiles Projektmanagement und Clean Code im SAP-Umfeld

SAP Software Engineering live Agile! Agiles Projektmanagement und Clean Code im SAP-Umfeld SAP Software Engineering live Agile! Agiles Projektmanagement und Clean Code im SAP-Umfeld SAP Software Engineering live Agile! SAP Ali Kaveh Software Engineering live Agile! Certified Scrum Master Solution

Mehr

UML-DSLs effizient eingesetzt. Insight 07, 13.11.2007 Klaus Weber

UML-DSLs effizient eingesetzt. Insight 07, 13.11.2007 Klaus Weber UML-DSLs effizient eingesetzt Insight 07, 13.11.2007 Klaus Weber Einladung Domänenspezifische Sprachen (DSLs) sind notwendige Voraussetzung für den Erfolg einer MDA-Strategie. MID favorisiert statt der

Mehr

Lieferung 2.2 Validierung der Anforderungen

Lieferung 2.2 Validierung der Anforderungen Lieferung 2.2 Validierung der Anforderungen für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket Arbeitspaketleitung Förderkennzeichen Projektleitung

Mehr