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

Größe: px
Ab Seite anzeigen:

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

Transkript

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

2 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 2

3 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 3

4 Die Fornax Plattform Umbrella-Projekt für oaw Cartridges, Tools und Erweiterungen außerhalb des openarchitectureware Kernprojekts Cartridges JavaBasic, Hibernate, Spring, Sculptor Incubation: JSF, Grails, EJB2, EJB3 Tools XML Formatter, C/C++ Formatter oaw Maven2 Plugin 4

5 Was sind Cartridges? Cartridge = Steckmodul Abgeschlossener Codegenerator für eine spezifische Zielplattform oaw-cartridges: Aufrufbarer Workflow Sammlung von oaw Artefakten Xpand-Templates, Extensions, Transformationen, Checks Kann als JAR paketiert werden 5

6 Cartridges <workflow> workflow.oaw <property file="./workflow.properties"/>... <cartridge file="org/fornax/cartridges/uml2/hibernate/ hibernate.oaw" inheritall="true"> <prexcludes value="*.svn-base"/> </cartridge> </workflow> <workflow> <property file="org/fornax/cartridges/uml2/hibernate/ hibernatecartridgedefaults.properties" /> hibernate.oaw <bean id="mm_hibernate_profile" class="org.openarchitectureware.uml2.profile.profilemetamodel"> <profile value="${profile.persistence.file}" /> <errorifstereotypemissing value="${hibernate.cartridge.errorifstereotypemissing}" /> </bean> <bean id="mm_uml2" class="org.openarchitectureware.uml2.uml2metamodel" /> 6

7 Cartridges Lego-Traum Beispiel AndroMDA Gute, ausgereifte, gepflegte Cartridges Schneller Start Wartungsproblem bei Anpassung Lange Releasezyklen openarchitectureware Cartridges werden im Kernprojekt nicht bereit gestellt 7

8 Contra Hoher Pflegeaufwand Höhere Komplexität eingeschränkte Erweiterbarkeit Muss mehr abdecken, als für einen konkreten Anwendungsfall notwendig ist 8

9 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 9

10 Referenzimplementierung und Referenzmodell Manuell entwickelte Implementierung, die alle Aspekte der Zielarchitektur mindestens einmal jederzeit abdeckt Jedes neue Konzept und Änderung wird zuerst in der Referenzimplementierung erprobt Das Referenzmodell stellt die abstrakten Konzepte der Referenzimplementierung mit der gewählten Modellierungssprache dar Der Codegenerator erzeugt aus dem Referenzmodell die generierbaren Artefakte der Referenzimplementierung 10

11 Referenzmodell 11

12 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 12

13 Projektstruktur Aufbau von oaw (Cartridge) Projekten wird durch oaw nicht festgelegt Potentiell unterschiedlicher Aufbau unterschiedlicher Projekte Potentielle Namenskonflikte vermeiden! generator.oaw, workflow.properties immer im Classpath Root Vorschlag für eine einheitliche, redundanzfreie Projektstruktur: 13

14 Projektstruktur Fornax-Projekte bestehen aus mehreren Teilprojekten Parent: Dokumentation, Projekt Master-POM (Maven) Cartridge-Projekt: oaw Artefakte Referenz-Implementierung Plattform/Framework-Projekt: Generische Komponenten 14

15 Projektstruktur cartridge-project --src --main --java --<packagename> --*.java --resources --<packagename> --validation --m2t --m2m --util 15

16 Projektstruktur cartridge-project --src --main --java --<packagename> --*.java --resources --<packagename> --validation --m2t --m2m --util --cartridge.oaw <-- Place 'cartridge.oaw' here! 16

17 Projektstruktur cartridge-project --src --main --java --<packagename> --*.java --resources --<packagename> --validation --m2t --m2m --util --cartridge.oaw --metamodels --[prefix].ecore --[prefix].profile --[prefix]_cartridge_default.properties <-- place here default workflow properties! 17

18 Projektstruktur cartridge-project --src --main --java --<packagename> --*.java --resources --<packagename> --validation --m2t --m2m --util --cartridge.oaw --metamodels --[prefix].ecore --[prefix].profile --[prefix]_cartridge_default.properties --[prefix]_cartridge.featurecfg <-- this is the feature configuration file! 18

19 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 19

20 Feature Konfiguration Selektive Generierung, Transformation, Ausführung von Komponenten abhängig von Feature-Konfiguration Package org.openarchitectureware.util.featureconfig Per Feature-Konfiguration und AOP 20

21 Feature-Konfiguration 21

22 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 22

23 Realisierung Convention-over-Configuration Paradigma mit Modell-Modifikationen Zum Validierungszeitpunkt muss ein Modell vollständig und konsistent sein Im Quellmodell können alle automatisch herleitbaren Informationen ausgelassen werden (Konventionen) Nur Abweichungen von Konventionen werden explizit modelliert Ausgelassene Konfigurationen werden per Konvention automatisch per M2M-Transformation mit Xtend ergänzt Der Modellierungsaufwand wird reduziert 23

24 Realisierung Convention-over-Configuration Paradigma mit Modell-Modifikationen 24

25 Cartridge-Adapter Damit eine Cartridge genutzt werden kann muss das Eingabemodell das von der Cartridge definierte Metamodell nutzen Verwendung des selben Metamodells Schneller zur Erstellung von Modellen Modellstruktur wird von der Cartridge aufgezwungen Nicht robust gegen Änderungen der Cartridge Adaption durch Transformation Das von der Cartridge erwartete Modell wird per M2M Transformation erstellt Alle für die Transformation erforderlichen Informationen müssen im Eingabemodell vorhanden sein 25

26 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 26

27 Externes / Internes Metamodell Maßgeschneiderte EMF Metamodelle erleichtern die Implementierung von Templates, Extensions, Checks erhöhen die Wartbarkeit der Artefakte enthalten nur die tatsächlich benötigten Konzepte Einfachere Adaption für alternative Modellierungs-Frontends Adaption durch Model-2-Model-Transformation vom Externen Metamodell (z.b. UML2, Xtext DSL) 27

28 Externes / Internes Metamodell Beispiel: Sculptor 28

29 Externes / Internes Metamodell Beispiel: Sculptor 29

30 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 30

31 Build-Integration oaw ist out-of-the-box zunächst nur innerhalb Eclipse ausführbar Grundsätzlich lässt sich ein oaw Prozess aber beliebig integrieren 31

32 Build-Integration Codegenerator muss IDE unabhängig ausführbar sein Shell, Ant, Maven Fornax Maven2 Plugin Eclipse Plugins in Maven Repositories Maven zwingt zu künstlicher Projektstruktur 32

33 2878 INFO IOExtensions - * * * Checking configuration. Read property file: hibernatecartridge.properties * * * Build-Integration [INFO] [fornax-oaw-m2:run-workflow {execution: default}] [INFO] oaw Maven2 Plugin V INFO WorkflowRunner INFO WorkflowRunner - openarchitectureware v INFO WorkflowRunner - (c) openarchitectureware.org and contributors 3 INFO WorkflowRunner INFO WorkflowRunner - running workflow: workflow.oaw 4 INFO WorkflowRunner INFO CompositeComponent - TextConfigurationReader: loading global configuration model (text) from hibernateconfig.txt 2100 INFO CompositeComponent - DirectoryCleaner: cleaning directory '/Users/thoms/Documents/Events/ _DortmunderVortragsreihe/workspace/fornax-cartridges-uml2-hibernate-reference/src/generated/java, /Users/thoms/Documents/ Events/ _DortmunderVortragsreihe/workspace/fornax-cartridges-uml2-hibernate-reference/src/generated/java, /Users/thoms/ Documents/Events/ _DortmunderVortragsreihe/workspace/fornax-cartridges-uml2-hibernate-reference/src/generated/resources' 2100 INFO DirectoryCleaner - Cleaning /Users/thoms/Documents/Events/ _DortmunderVortragsreihe/workspace/fornaxcartridges-uml2-hibernate-reference/src/generated/java 2159 INFO DirectoryCleaner - Cleaning /Users/thoms/Documents/Events/ _DortmunderVortragsreihe/workspace/fornaxcartridges-uml2-hibernate-reference/src/generated/java 2160 INFO DirectoryCleaner - Cleaning /Users/thoms/Documents/Events/ _DortmunderVortragsreihe/workspace/fornaxcartridges-uml2-hibernate-reference/src/generated/resources 2172 INFO CompositeComponent - XmiReader: file './model/topcased/topcased-reference.uml' => slot 'model' 2450 INFO CompositeComponent - Workflow: executing workflow org/fornax/cartridges/uml2/hibernate/hibernate.oaw in workflow.oaw: INFO CompositeComponent - CheckComponent: slot model check file(s): org::fornax::cartridges::uml2::hibernate::checks::cartridgeproperties 2878 INFO IOExtensions - * * * Checking configuration. Read property file: hibernatecartridge.properties * * * 33

34 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 34

35 Projektspezifische Anpassungen Xpand/Xtend AOP erlaubt Anpassung von Cartridges ohne Kopieren des gesamten Generators Non-invasive Erweiterung Cartridge muss für Erweiterbarkeit entworfen werden Nicht zu große Definitionen oder zu komplexe Funktionen gezielt AOP Hooks einbauen Dokumentation der Erweiterungspunkte ist sehr wichtig 35

36 Modifikation und Ergänzung bestehender Cartridge- Funktionalität mit Xpand/Xtend AOP <component advicetarget="hibernatecartridge_pojo_generator" hibernate.oaw id="jpaannotationadvice" class="oaw.xpand2.generatoradvice"> <advices value="org::fornax::cartridges::uml2::hibernate::templates::hibernateannotations"/> </component> <component id="hibernatecartridge_pojo_generator" class="org.openarchitectureware.xpand2.generator"> <metamodel idref="mm_hibernate_profile" /> <metamodel idref="mm_uml2" /> <fileencoding value="${file.encoding}" /> <extensionadvice value="org::fornax::cartridges::uml2::hibernate::extensions::naming" /> <advice value="org::fornax::cartridges::uml2::hibernate::templates::hibernateaopextensions" /> 36

37 Xpand AOP Hooks 37

38 Xpand AOP 38

39 Xtend AOP Naming.ext around org::fornax::cartridges::uml2::javabasic::extensions::helper::getfqnpackagename (uml::type type) : if Persistence::Entity.isInstance(type) then getfqnpackagename(type) else ctx.proceed(); Fornax Hibernate Cartridge Helper.ext String getfqnpackagename(uml::type type): JAVA org.fornax.cartridges.uml2.javabasic.helper.getfqnpackagename (org.eclipse.uml2.uml.type); Fornax JavaBasic Cartridge 39

40 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 40

41 Test Referenzimplementierung so vollständig wie möglich durch Unittests abdecken, zusätzlich Integrationstests Problematisch: Test von Xtend Funktionen, Checks und Templates Funktionsfähigkeit des Generators wird vor allem durch Vergleich der resultierenden Artefakte mit der Referenzimplementierung sichergestellt Test von Constraints nur durch Verletzung der Constraints möglich 41

42 Unitests Unittests gegen Referenzimplementierung implementieren Unittests werden müssen den generierten Code testen Fehlerhafte Generierung möglichst schon durch Compile-Fehler erkennen 42

43 fit4oaw Testing Plattform für openarchitectureware Basiert auf FitNesse (www.fitnesse.org) Open Source (GPL) Features White-Box Tests für Xtend, Xpand, Check Build-Integration mit Maven2 Implementierung von Tests in einem Wiki Test privater Xtend Funktionen möglich 43

44 fit4oaw 44

45 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell (3) Projektstruktur (4) Feature-Konfiguration (5) Modelltransformationen (6) Externes / Internes Metamodell (7) Build-Integration (8) Projektspezifische Anpassungen (9) Cartridge Testing (10) Implementierung 45

46 Xpand Templates Dispatcher-Template als Generator-Einstiegspunkt 46

47 Xpand-Templates Ein Template je Artefakt-Typ 47

48 Extensions Xtend Files nach Metamodelltyp trennen (bei Verwendung mehrerer Metamodelle) Funktionen im Javadoc Stil dokumentieren Reexportieren allgemein genutzter Funktionen (reexport Keyword) Nicht alles cachen, nur bei allgemeinem Nutzen Template spezifische Extensions in eigene.ext Dateien (mit Namen der zugeh. Xpand Datei) 48

49 Validierung Alle getroffenen Annahmen in Constraints überprüfen Ggf. trennen nach schnell laufenden Checks, die immer mitlaufen und komplexeren, die per Feature aktiviert werden können Validierung erfolgt, wenn das Modell konsistent sein muss (ggf. nach Vervollständigung durch Modellmodifikation) Validierung nach jeder Transformation 49

50 Diskussion! itemis AG 2009 All rights reserved 50

51 Diskussion! itemis AG 2009 All rights reserved 50

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

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

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

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Tom Krauß Agenda Begriffsdefinition Verfahren Praktische Beispiele Vergleich und Bewertung Begriffsklärung

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

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

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

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

iks Gesellschaft für Informations- und Kommunikationssysteme mbh Sponsor der

iks Gesellschaft für Informations- und Kommunikationssysteme mbh Sponsor der iks Gesellschaft für Informations- und Kommunikationssysteme mbh Sponsor der 13.03.2008 Seite 2 / 77 iks - Daten und Fakten Gründung 1989 Sitz Hilden Geschäftsleitung Dipl.-Inf. Monika Stoll Dipl.-Ing.

Mehr

MDA MDA mit mit Open-Source-Software Eine Eine Bestandsaufnahme

MDA MDA mit mit Open-Source-Software Eine Eine Bestandsaufnahme MDA MDA mit mit Open-Source-Software Eine Eine Bestandsaufnahme Gerhard Wanner (wanner@hft-stuttgart.de) Stefan Stefan Siegl Siegl (s.siegl@novatec-gmbh.de) Agenda Model Driven Architecture (MDA) Einführung/Übersicht/Motivation

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

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

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

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

Language Workbench. Aktuelle Themen der Softwaretechnologie. Vortrag von: Arthur Rehm Steven Cardoso. Betreut von: Prof. Dr. Language Workbench Vortrag von:! Aktuelle Themen der Softwaretechnologie Arthur Rehm Steven Cardoso Betreut von: Prof. Dr. Reichenbach [1] !2 Index Kontext Domain Specific Language (DSL) Language Workbench

Mehr

Vom lokalen Build zum Deployment

Vom lokalen Build zum Deployment Vom lokalen Build zum Deployment International PHP Conference Manuel Pichler 12.10.2011 Vom lokalen Build zum Deployment 1 / 36 Über mich Diplominformatiker Mehr als 10 Jahre Erfahrung im PHP-Umfeld Autor

Mehr

Model Driven Architecture Praxisbeispiel

Model Driven Architecture Praxisbeispiel 1 EJOSA OpenUSS CampusSource Model Driven Architecture Praxisbeispiel 2 Situation von CampusSource-Plattformen Ähnliche Funktionen (Verwaltung von Studenten und Dozenten, Diskussionsforen,...), jedoch

Mehr

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder Michael Greifeneder OSGi The Next Generation Java Service Platform SOA - The Java Way or My classpath is killing me Bilder von Peter Kriens W-JAX Keynote 2007 und Neil Bartletts Getting Started with OSGi

Mehr

Codegeneratoren mit Xtend2. 11.04.2012, A. Arnold

Codegeneratoren mit Xtend2. 11.04.2012, A. Arnold Codegeneratoren mit Xtend2 11.04.2012, A. Arnold Copyright 2012 anderscore GmbH Inhalt 1. Was ist Xtend2? 2. Xtend2 Konzepte 3. Hands On! 3 4 8 20 2 Was ist Xtend2? Funktionale, objektorientierte Sprache

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

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

Innovator 2007. Anbindung an openarchitectureware. Connect. Klaus Weber. www.mid.de

Innovator 2007. Anbindung an openarchitectureware. Connect. Klaus Weber. www.mid.de Innovator 2007 Anbindung an openarchitectureware Klaus Weber Connect www.mid.de Anbindung an openarchitectureware (oaw) Wozu dient die Anbindung an openarchitectureware? Für Innovator Object excellence

Mehr

Code generieren mit Eclipse und oaw HowTo

Code generieren mit Eclipse und oaw HowTo Innovator 11 excellence Code generieren mit Eclipse und oaw Eclipse und oaw konfigurieren und zur Code-Generierung mit xpand-schablonen nutzen Albert Scheuerer, René Beckert HowTo www.mid.de Inhaltsverzeichnis

Mehr

Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy

Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy Über Ant und Maven zu SBT und Gradle Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy 07.04.2011 Speaker Andreas Hartmann [hartmann@adesso.de] Principal Software Engineer

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

Ü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

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Frank Szilinski esentri software GmbH Karlsruhe Schlüsselworte: ADF, Java, JEE, JSF, Grails, Spring, Open Source, Rapid Application Development

Mehr

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de ANT Kurzvortrag von Manuel Schulze mschulze@inf.fu-berlin.de ANT Überblick Teilprojekt der Apache Software Foundation [1] ANT ist Opensource Build-Tool ähnlich wie make (?) jedoch voll auf Java zugeschnitten

Mehr

Business UI in Enterprise Anwendungen

Business UI in Enterprise Anwendungen Business UI in Enterprise Anwendungen modellgetrieben und dynamisch Workshop OOP 2011 Agenda vormittags 9:00-10:30 Part 1 Begrüßung und Vorstellung, Überblick BusinessUI, Open Source Projekte, Installation

Mehr

Software Engineering II

Software Engineering II Software Engineering II Wintersemester 12/13 Fachgebiet Software Engineering Installation der MWE Plugins Von der Juno Update Site installieren (falls noch nicht vorhanden): MWE SDK Xpand SDK 2 TFD Projekt

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

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

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

Der Weisheit letzter Schluss:

Der Weisheit letzter Schluss: Der Weisheit letzter Schluss: Maven 2 in der Java Entwicklung Web Site: www.soebes.de Blog: blog.soebes.de Email: info@soebes.de Dipl.Ing.(FH) Karl Heinz Marbaise Agenda 1. Was ist Maven? 2. Features von

Mehr

Modellgetriebene Softwareentwicklung

Modellgetriebene Softwareentwicklung Modellgetriebene Softwareentwicklung 30.10.2008 Dr. Georg Pietrek, itemis AG Inhalt Wer ist itemis? Modellgetriebene Entwicklung Ein Praxis-Beispiel Fazit 2 Vorstellung IT-Dienstleister Software-Entwicklung

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

Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung. R. Gitzel, M. Schwind

Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung. R. Gitzel, M. Schwind Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung R. Gitzel, M. Schwind Agenda! Überblick/Motivation! Hintergrund! Technische Umsetzung! Zentrale Ergebnisse 2 Überblick Ziele! Know-how-Aufbau/Stand

Mehr

Content Management mit JSR-170 und dem Open Source CMS Magnolia

Content Management mit JSR-170 und dem Open Source CMS Magnolia Content Management mit JSR-170 und dem Open Source CMS Magnolia Dr. Ralf Hirning LogicaCMG 2006. All rights reserved Agenda Überblick Features Redaktionsprozess Beispielimplementierung Magnolia Editionen

Mehr

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de Das Build Tool Ant Sebastian Mancke, mancke@mancke-software.de Grundlagen Motivation Bei der Übersetzung und Pflege von Software treten viele, gleich bleibende Arbeitsschritte auf. Übersetzen des Codes

Mehr

Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant

Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant Laith Raed Ludwig-Maximilians-Universität München Institut für Informatik: Programmierung und Softwaretechnik Prof.Wirsing Inhaltsverzeichnis

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

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

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

Die perfekte Build-Pipeline

Die perfekte Build-Pipeline Die perfekte Build-Pipeline Ohne Mühen Webprojekte bauen Qafoo GmbH October 25, 2012 Die perfekte Build-Pipeline 1 / 44 What comes next? Willkommen Die perfekte Build-Pipeline 2 / 44 Über uns Jakob Westhoff

Mehr

Architektur des agimatec-validation Frameworks

Architektur des agimatec-validation Frameworks Development : Implementierung Validierungskonzept (Dokumentation) This page last changed on Apr 03, 2008 by roman.stumm. Architektur des agimatec-validation Frameworks Generierung der Metainformationen

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

Das neue Android Build System

Das neue Android Build System Das neue Android Build System Besser Builden mit Gradle JUGS Event, 18. Juni 2015 Kaspar von Gunten, Ergon Informatik AG whois( kvg ) Software-Engineering seit 2002 Entwicklung in Java (Client/Server,

Mehr

Builddreikampf: Ant, Maven und Gradle. Sven Bunge / Carl Düvel

Builddreikampf: Ant, Maven und Gradle. Sven Bunge / Carl Düvel Builddreikampf: Ant, Maven und Gradle Sven Bunge / Carl Düvel holisticon AG Wettkampfplan 1. Die Regeln 2. Vorstellung der Kandidaten 3. Ring frei die Disziplinen! 1. Dependency Management 2. Multiprojektsupport

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

Automatisierung in der Software- Produktion abseits von MDA

Automatisierung in der Software- Produktion abseits von MDA Automatisierung in der Software- Produktion abseits von MDA Dirk Sklarek RDS Consulting GmbH Senior Berater Mörsenbroicher Weg 200 40470 Düsseldorf Internet: www.rds.de Einige Aussagen Warum läuft das

Mehr

Software Engineering I

Software Engineering I Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse

Mehr

Modellgetriebene Steuergeräte- Entwicklungsumgebung für Produktlinien

Modellgetriebene Steuergeräte- Entwicklungsumgebung für Produktlinien Modellgetriebene Steuergeräte- Entwicklungsumgebung für Produktlinien Dr. Lars Geyer-Blaumeiser, Robert Bosch GmbH Dr. Lothar Wendehals, itemis AG OOP 2009, München 27.01.2009 1 G2/PJ-PMT 27.01.2009 P08-0288

Mehr

Buildwerkzeuge für Javaprojekte. Christian Bunse Institut für Informatik 03.07.2008

Buildwerkzeuge für Javaprojekte. Christian Bunse Institut für Informatik 03.07.2008 Buildwerkzeuge für Javaprojekte Christian Bunse Institut für Informatik 03.07.2008 Inhalt Der Build Besonderheiten von Javaprojekten Ziele von Buildwerkzeugen Continuous Integration Vorstellung von Buildwerkzeugen

Mehr

Maven 2.0. DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH. 2008 codecentric GmbH

Maven 2.0. DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH. 2008 codecentric GmbH Maven 2.0 DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH Agenda Einführung Project Object Model (POM) Repositories Maven und Eclipse Maven - LIVE 1. EINFÜHRUNG Einführung - Was

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

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

Das GeneSEZ Generator Framework

Das GeneSEZ Generator Framework Das GeneSEZ Generator Framework Draft Draft Das GeneSEZ Generator Framework Copyright 2006-2012 GeneSEZ Research Group Draft Draft Table of Contents I. Getting Started... 1 1. Hintergrund und Idee von

Mehr

Software-Entwicklung mitopen Source Werkzeugen

Software-Entwicklung mitopen Source Werkzeugen Software-Entwicklung mitopen Source Werkzeugen DerGeneSEZ-Ansatz Tobias Haubold, Wolfgang Golubski, OliverArnold, Georg Beier, Gerrit Beine Westsächsische Hochschule Zwickau Fakultät Physikalische Technik/Informatik

Mehr

Ant in Eclipse Starthilfe

Ant in Eclipse Starthilfe IN DIESER KURSEINHEIT Einleitung o Um was geht's eigentlich? Hello World o Das Ant Skript Mehrere Targets und Properties o Hello World Ausgabe Ant Launch Configurations o Definition o Modifikation o Nutzung

Mehr

Gliederung. Einführung. Kleines Maven Wörterbuch. Maven im Unternehmenseinsatz. Was bringt die Zukunft?

Gliederung. Einführung. Kleines Maven Wörterbuch. Maven im Unternehmenseinsatz. Was bringt die Zukunft? Build Management, Teil 2: Apache Maven mehr als nur Ant Facelifting Kristian Köhler Steffen Schluff Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Gliederung

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Metamodellbasierte Codegenerierung in Java

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Metamodellbasierte Codegenerierung in Java Metamodellbasierte Codegenerierung in Java Codegenerierung Markus Völter, voelter@acm.org, www.voelter.de Codegenerierung bezeichnet die automatische Erstellung von Quelltext aus üblicherweise abstraktereren,

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

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München, 26.01.2011

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München, 26.01.2011 Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen OOP München, 26.01.2011 I N H A L T 1. SOA das erste Projekt 2. Prozesse Ergebnisse aus dem Fachbereich 3. Der Business Analyst und BPMN

Mehr

Plattformübergreifende Entwicklung mithilfe modellgetriebener Methoden und Technologien

Plattformübergreifende Entwicklung mithilfe modellgetriebener Methoden und Technologien Semesterarbeit Plattformübergreifende Entwicklung mithilfe modellgetriebener Methoden und Technologien Semesterarbeit im Fach Aktuelle Themen der WI im Studiengang Wirtschaftsinformatik der Hochschule

Mehr

Nils Hartmann Gerd Wütherich. Build my bundle! oder: Es muss nicht immer PDE sein

Nils Hartmann Gerd Wütherich. Build my bundle! oder: Es muss nicht immer PDE sein Nils Hartmann Gerd Wütherich Build my bundle! oder: Es muss nicht immer PDE sein Inhalt» Theorie» Bauen von Software» Projekte, Projektbeschreibungen und Definition von Abhängigkeiten» Integration bestehender

Mehr

Oracle Warehouse Builder 3i

Oracle Warehouse Builder 3i Betrifft Autoren Art der Info Oracle Warehouse Builder 3i Dani Schnider (daniel.schnider@trivadis.com) Thomas Kriemler (thomas.kriemler@trivadis.com) Technische Info Quelle Aus dem Trivadis Technologie

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

Lieferung 7.1 Plattformspezifische Generatortemplates für Code-Gerüst, Test, Konfiguration der Qualitätswerkzeuge

Lieferung 7.1 Plattformspezifische Generatortemplates für Code-Gerüst, Test, Konfiguration der Qualitätswerkzeuge Lieferung 7.1 Plattformspezifische Generatortemplates für Code-Gerüst, Test, Konfiguration der Qualitätswerkzeuge für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile

Mehr

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Modellgetriebene Softwareentwicklung

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Modellgetriebene Softwareentwicklung Modellgetriebene Softwareentwicklung Markus Völter, voelter@acm.org, www.voelter.de Modellgetriebene Entwicklung (MDSD 1 ) und MDA sind in aller Munde. Dieser Artikel stellt MDSD-Kernkonzepte vor und zeigt,

Mehr

Problemseminar ModelDrivenSoftwareDevelopment

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

Mehr

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012 Buildsystem Maven & Scons Controls Entwicklungsforum Januar 2012 1 2 a call from the past Binary Repository Speichern von Artefakten (z.b. Shared Library und zugehörige Header) Versionierung von Artefakten

Mehr

openarchitectureware 4.0 Endpräsentation

openarchitectureware 4.0 Endpräsentation openarchitectureware 4.0 Endpräsentation Jörg Reichert Das Forschungs- und Entwicklungsprojekt OrViA wird mit Mitteln des Bundesministeriums für Bildung und Forschung (BMBF) gefördert, die innerhalb der

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

Release Automation für Siebel

Release Automation für Siebel June 30 th 2015 Release Automation für Siebel Stefan Kures Agenda + Herausforderungen + Lösung mit Automic + Vorteile + Resultate 3 Property of Automic Software. All rights reserved Siebel als zentrale

Mehr

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools MOF Meta Object Facility Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools Überblick Object Management Group (OMG) Model Driven Architecture (MDA) Exkurs: Modelle, Metamodelle MOF Architektur

Mehr

Quickstart. Quickstart. Anleitung zum schnellen Einstieg in JEAF Version 1.1 Letzte Änderung 15. März 2011. Projekt JEAF Framework

Quickstart. Quickstart. Anleitung zum schnellen Einstieg in JEAF Version 1.1 Letzte Änderung 15. März 2011. Projekt JEAF Framework Quickstart Thema Anleitung zum schnellen Einstieg in JEAF Version 1.1 Letzte Änderung 15. März 2011 Status Freigegeben 2011 Inhaltsverzeichnis 1 Motivation... 5 1.1 Abgrenzungen... 5 2 Aufbau JEAF Plattform...

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

Bau dir dein eigenes Eclipse

Bau dir dein eigenes Eclipse Eclipse Builds mit Bau dir dein eigenes Eclipse Viele Unternehmen setzen auf Eclipse als IDE, reichern diese aber um eigene Plug-ins und ein eigenes Branding an. Wie in [1] beschrieben, war der Prozess

Mehr

Modellgetriebene Softwareentwicklung und Modelltransformationen in der Praxis. Vorstellung Gruppe Softwaretechnik für Verteilte Systeme

Modellgetriebene Softwareentwicklung und Modelltransformationen in der Praxis. Vorstellung Gruppe Softwaretechnik für Verteilte Systeme Modellgetriebene Softwareentwicklung und Modelltransformationen in der Praxis Prof. Dr. Jens Grabowski M.Sc. Benjamin Zeiss Inhalt Vorstellung Gruppe Softwaretechnik für Verteilte Systeme Grundlagen Modellierung

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

Mehr

Einführung in Maven und GWT

Einführung in Maven und GWT Einführung in Maven und GWT Prof. Christoph Knabe Beuth-Hochschule Berlin 08.05.2014 Gliederung Motivation für Build-Werkzeug Maven-Ziele, Begriffe Maven-Benutzung in 5 min Maven-Vorteile GWT-Ziele GWT-Projekt

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 2013/14 Überblick I Modellgetriebene Softwareentwicklung Modellgetriebene

Mehr

Halbautomatische Migration bestehender ETL-Prozesse von Informatica nach Talend

Halbautomatische Migration bestehender ETL-Prozesse von Informatica nach Talend Halbautomatische Migration bestehender ETL-Prozesse von Informatica nach Talend Proof of Concept, Möglichkeiten und Grenzen Markus Pepping Dipl. Wirtschaftsinformatiker, IT-Architekt Senior Consultant

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

JBoss 2.2 Evaluierung

JBoss 2.2 Evaluierung Freie Universität Berlin Autor: Natalie Ardet Datum: 10.4.2001 JBoss 2.2 Evaluierung Projekt: verteilte Informationssysteme JBoss 2.2 Evaluierung Windows NT 4.0 Installation/Konfiguration und Together

Mehr

Kurzanleitung zu XML2DB

Kurzanleitung zu XML2DB Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines

Mehr

Graphical Modeling Framework

Graphical Modeling Framework Graphical Modeling Framework Bernd Kolb, bernd@applied-abstractions.com www.applied-abstractions.com Sven Efftinge, sven@applied-abstractions.com www.applied-abstractions.com Markus Voelter, markus@applied-abstractions.com

Mehr

EJB 3 modellgetrieben ein Praxisbericht

EJB 3 modellgetrieben ein Praxisbericht EJB 3 modellgetrieben ein Praxisbericht Source Talk Tage Göttingen 28. August 2012 NovaTec Ingenieure für neue Informationstechnologien GmbH Leinfelden-Echterdingen, München, Frankfurt am Main, Jeddah

Mehr

Techniken der Projektentwicklung

Techniken der Projektentwicklung Tools Kalenderwoche 43 Tools für die Softwareentwicklung Shell auf bash einstellen Tools in.bashrc eintragen mit Staroffice mit L A TEX Eclipse UML Modellierung Versionsverwaltung mit CVS CVS und Eclipse

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

Model Driven Architecture (MDA)

Model Driven Architecture (MDA) Model Driven Architecture (MDA) Vortrag im Fach Software Engineering II BA Mannheim / Fachrichtung Angewandte Informatik Torsten Hopp Gliederung Einleitung Motivation Grundzüge der MDA Ziele & Potenziale

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

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH Erfahrungen und Erkenntnisse Klaus Richarz, HBT GmbH Java Enterprise Edition 5.0 JBoss Seam Konsequenzen für Realisierung Qualitätssicherung Build & Deployment Fazit & Empfehlungen JBoss Seam in Projekten,

Mehr

Datenhaltung für Android. Model First

Datenhaltung für Android. Model First Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung

Mehr

F A C H H O C H S C H U L E W E D E L. Modellgetriebene Softwareentwicklung mit openarchitectureware

F A C H H O C H S C H U L E W E D E L. Modellgetriebene Softwareentwicklung mit openarchitectureware F A C H H O C H S C H U L E W E D E L University of Applied Sciences S E M I N A R A R B E I T Thema: Modellgetriebene Softwareentwicklung mit openarchitectureware Eingereicht von: Björn Peemöller Borgfelde

Mehr

Make-loses Java für mehr Produktivität: Das z 2 -Environment. Henning Blohm 25.6.2012

Make-loses Java für mehr Produktivität: Das z 2 -Environment. Henning Blohm 25.6.2012 Make-loses Java für mehr Produktivität: Das z 2 -Environment Henning Blohm 25.6.2012 1 Z2 ist ein radikal neuer* Ansatz für System Life-Cycle Management in Java * jedenfalls für Java Oh je noch ein Tool?

Mehr

Ruby on Rails. Thomas Baustert Ralf Wirdemann www.b-simple.de. Alternative zur Web-Entwicklung mit Java? 27.06.2005 www.b-simple.

Ruby on Rails. Thomas Baustert Ralf Wirdemann www.b-simple.de. Alternative zur Web-Entwicklung mit Java? 27.06.2005 www.b-simple. Ruby on Rails Alternative zur Web-Entwicklung mit Java? Thomas Baustert Ralf Wirdemann www.b-simple.de 27.06.2005 www.b-simple.de 1 Überblick Was ist Ruby on Rails? Weblog Demo Rails Komponenten Controller,

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