KOMPONENTENBASIERTE ENTWICKLUNG AUF BASIS DER MODEL DRIVEN ARCHITECTURE

Größe: px
Ab Seite anzeigen:

Download "KOMPONENTENBASIERTE ENTWICKLUNG AUF BASIS DER MODEL DRIVEN ARCHITECTURE"

Transkript

1 von günther rackl, ulrike sommer, klaus beschorner, heinz kößler und adam bien KOMPONENTENBASIERTE ENTWICKLUNG AUF BASIS DER MODEL DRIVEN ARCHITECTURE Der generative Entwicklungsweg der Model Driven Architecture (MDA) ermöglicht auf Basis modellgetriebener Softwareentwicklung die effiziente und effektive Abbildung von Geschäftsprozessen auf Code. Die produktive Umsetzung und der gewinnbringende Einsatz dieses viel diskutierten Modellierungsparadigmas erfordern jedoch zunächst eine geeignete Interpretation der Kernkonzepte. Der Artikel zeigt einen durchgängigen Entwicklungsweg vom Geschäftsmodell zum Code anhand der in der BMW Group entwickelten Component Architecture (CA) und liefert damit ein Beispiel für die praktische Umsetzbarkeit der MDA. die autoren Dr. Günther Rackl ( beschäftigt sich im Bereich IT-Lösungen der BMW Group schwerpunktmäßig mit den Themengebieten Software- Modellierung und UML Case Tools. Aufgrund der immer weiter steigenden Komplexität der zu beherrschenden Entwicklungsstandards und der wachsenden Verbreitung von konkurrierenden Technologien wie J2EE, CORBA oder.net setzen sich modellgetriebene Entwicklungsmethoden zunehmend in der Praxis durch. Universell gültige Anwendungsmodelle versprechen in Verbindung mit generativer Softwareentwicklung eine größere Effizienz, die einfachere Integration von Fachexperten in den frühen Designphasen und die bessere Qualitätssicherung und Wartung der Anwendungen (vgl. [Völ04]). Da die Software teilweise oder vollständig aus technologieunabhängigen Modellen generiert wird, können Abhängigkeiten zu einer konkreten Technologie und Inkonsistenzen zwischen den verschiedenen Architekturschichten einer Anwendung überwunden werden. Zusätzlich fördern einheitliche Designvorgaben und Kodierungsrichtlinien die Standardisierung von Anwendungsarchitekturen und führen durch die Verwendung von Entwurfsmustern und Best Practices zu einer höheren Softwarequalität. Modellgetriebene Entwicklungsansätze sind vor allem dann gewinnbringend, wenn ein hoher Automatisierungsgrad und die Wiederverwendung von Modellen, Generatoren und Transformatoren in verschiedenen Projekten gewährleistet sind. Voraussetzung hierfür ist die exakte Beschreibung der Architektur oder die Festlegung eines Architekturstils. Die Kernkonzepte der MDA müssen entsprechend für die produktive Umsetzung im Hinblick auf die jeweilige Anwendungs- gruppe geeignet interpretiert werden. Vor diesem Hintergrund wurde in der BMW Group eine zentrale Komponentenarchitektur für die durchgängige Abbildung von Geschäftslogik auf eine unternehmensweite IT-Anwendungsarchitektur entwickelt. Um eine pragmatische Herangehensweise zu ermöglichen, wurde bei der Abbildung auf eine Technologie zunächst nur das J2EE-Umfeld (Java 2 Enterprise Edition) betrachtet. Die Komponentenarchitektur Der modellgetriebene Ansatz der Component Architecture (CA) basiert auf dem generativen Entwicklungsweg der MDA und den damit verbundenen drei Architekturschichten Platform Independent Model (PIM), Platform Specific Model (PSM) und Implementierung. Die CA besteht aus den folgenden Elementen: einem Modellierungsprofil, mit dessen Hilfe das plattformunabhängige Modell auf Basis der UML, komponentenbasierter Entwicklung und allgemeinen Architekturprinzipien formuliert werden kann, Modelltransformatoren, die das Modellierungsprofil auf das J2EE-1.3- konforme plattformspezifische Modell und anschließend auf Code abbilden, und einem Framework, das die J2EE-Infrastruktur kapselt und dem Anwender als Basisfunktionalität zur Verfügung stellt. Dr. Ulrike Sommer ( arbeitet im Kompetenzzentrum IT- Architekturen der BMW Group mit den Themenschwerpunkten komponentenbasierte Entwicklung und J2EE. Dr. Klaus Beschorner ( ist IT-Spezialist im Bereich IT-Lösungen der BMW Group und beschäftigt sich mit Architekturen und Frameworks im J2EE-Umfeld. Heinz Kößler ( arbeitet im Kompetenzzentrum IT-Architekturen in der Ressort-IT Produktion der BMW Group als Chefarchitekt in Projekten mit dem Schwerpunkt J2EE. Adam Bien ( ist freiberuflicher Berater, Dozent und Buchautor mit dem Schwerpunkt Enterprise- Architekturen, Frameworks und J2EE. 5/2004

2 genaue Erläuterung der wichtigsten Modellierungselemente erfolgt in Tabelle 1. Abb. 1: Aufbau einer Komponente In allen drei Elementen werden gängige Entwurfsmuster, Best Practices und konzernweit gültige Richtlinien bei der Implementierung von Softwaresystemen berücksichtigt. Modellierung der Fachlogik In der CA wird die Geschäftslogik zunächst technologieneutral in einem Komponentenmodell (PIM) mit Hilfe der UML spezifiziert. Den Kern der CA- Designsprache bilden die Geschäftsobjekte, die als fein-granulare und wieder verwendbare Einheiten Daten, Logik und Regeln zusammenfassen und in Komponenten strukturiert sind. Die CA versteht unter dem Begriff Komponente eine konsistente, eigenständige Einheit, die aus kohäsiven Elementen besteht, auf die nur über ihre fachliche Schnittstelle zugegriffen wird. Die verfügbaren Modellierungselemente (Artefakte) der CA sind in Abbildung 1 dargestellt. Wichtig ist die Unterscheidung zwischen der Außensicht (Spezifikation) und der Innensicht (Realisierung) einer Komponente. Lediglich die Spezifikation ist nach außen sichtbar und stellt die fachlichen Schnittstellen einer Anwendung zur Verfügung. Die Implementierungsdetails werden in der Komponente gekapselt. Entsprechend lassen sich die Modellierungselemente gemäß ihren Aufgaben in die verschiedenen Schichten Service- Schnittstellen, Ablaufsteuerung, Verhalten und Daten strukturieren. Eine Abbildung auf J2EE 1.3 Die Formalisierung der zu verwendenden Modellierungselemente und deren durchgängige Verwendung im PIM ermöglichen die automatisierte Abbildung auf die J2EE- Plattform. Dabei basiert die Architektur des J2EE-PSM im Wesentlichen auf den bekannten J2EE-Patterns (vgl. [Alu01], [Fow03]), die jedoch im Detail erweitert wurden. Die CA-Komponenten werden auf Java-Packages abgebildet, die entsprechend der Schichtung in spec, facade, behavior, data und adapter Unter-Packages strukturiert sind. Im PIM werden lediglich die Beziehungen zwischen den Modellierungselementen sowie ihre Methoden und Attribute modelliert für die Berücksichtigung der Designprinzipien sind der Transformationsprozess und das PSM zuständig. Abbildung 2 zeigt ein Beispiel für ein PIM, in dem die Prozessartefakte Business Entities (BEs) als Parameter oder Rückgabewerte verwenden. Bei der Transformation werden diese kontextabhängig in Value-Objekte (VOs), lokale Schnittstellen oder Primärschlüssel umgewandelt. Die OrderStatusBE wird beispielsweise entweder in ein OrderStatusBEVO oder eine OrderStatusBEIF transformiert. Innerhalb der Realisierung einer Komponente verwenden die Business Activities (BAs) die Abb. 2: Eine Business Component im PIM

3 Name des Artefakts Kurzbeschreibung Abbildung auf J2EE Business Component (BC) Fachliche CA-2.0-Komponente. Sie bildet einen Container, Ein strukturiertes Composite Java-Package mit der verschiedene CA-Artefakte auf Basis bestimmter definierten Abhängigkeiten zu Architekturvorschriften gruppiert. Nachbarkomponenten. Business Component Fachliche Schnittstelle (Spezifikation); Service-Schnittstelle, Business Delegate-Pattern, Service Locator (Bestand- Interface (BCI) die von den Clients bzw. der Präsentationslogik verwendet teil des CA-2.0-Frameworks) und eine konfigurierbare wird. Das BCI ist Bestandteil der Spezifikation und Factory. Die öffentliche chnittstelle des Business S Delegates gewährleistet somit auch die einfache Wiederverwend- realisiert das BCI mit Hilfe eines Java Interfaces. barkeit und Testbarkeit der Komponenten. Zusätzlich wird ein passender JUnit-Test angelegt. Business Facade (BF) Ablaufsteuerung des modellierten Use-Cases, Dekoration um Session Façade Pattern mit Stateless oder Stateful zusätzliche Fähigkeiten und Abbildung von fachlichen Prozessen. Session Bean. Alle Methoden des Remote-Interfaces Zu ihren Aufgaben gehören z. B. die Zustandsverwaltung des Clients, werden mit dem Transaktionslevel Required die Transaktionssteuerung und die Realisierung der Sicherheit. oder Requires New versehen. Das Verhalten der Komponente wird durch einzelne fachliche Aktivitäten (Business Activities) abgebildet. Business Activity (BA) Abbildung einzelner fachlicher Aktivitäten, wie z. B. not- Lokale Stateless Session Bean. Aus der BA wendige Algorithmen. Eine BA ist transient und zustandslos. entstehen die Methoden des Local-Interfaces Jede einzelne Methode einer BA bildet eine atomare Aktivität der Stateless Session Bean. Eine BA wird mit dem ab, die vollständig ausgeführt wird, oder gar nicht. Transaktionslevel Mandatory versehen. Business Entity (BE) Sind für die eigentliche Datenhaltung CMP 2.0 Entity Bean oder ein Data Access Object (DAO) zuständig. Eine BE besteht aus einer und ein Value Object (VO). Aus den Attributen einer zusammengehörigen Gruppierung von BE entsteht immer zumindest ein VO, das als Parameter oder Attributen mit fachlichen oder elementaren Rückgabetyp verwendet wird. Falls ein DAO für die Abbildung Datentypen. der Persistenz einer BE gewählt wird, entstehen aus den statischen BE-Methoden die Methoden des DAO-Interfaces. Das Business-Interface (DataEntity) der CMP 2.0 Entity Bean dient der Abstraktion von der jeweiligen Technologie und könnte als Vorgabe von z.b. Java Data Objects dienen. Event Listener (EL) Ein EL führt beliebige, synchrone Methoden eines Inter-Component- Eine Message Driven Bean oder die Interface oder eines Business-Component-Interface asynchron aus. Implementierung eines Message Listeners. Bei der PIM-Erstellung ist die Art der technischen Realisierung eines EL noch nicht bekannt (Threads, Messaging usw.). Tabelle 1: Modellierungselemente der CA mit Abbildungsregeln auf J2EE 1.3 Referenz der BE. Erst kurz vor der Übertragung (in der Ablaufsteuerung) kommen VOs zum Einsatz. Abbildung 3 zeigt einen Ausschnitt aus der Transformation des PIM in das zugehörige PSM. Das PSM verfügt über Annotationen, die für die letzte Stufe der Generierung benötigt werden. Informationen über die Transaktionssteuerung, Pooling, Caching oder Locking-Strategien werden für die Generierung der Deployment-Deskriptoren und der Enterprise Archives (EARs) benötigt. Generative Entwicklung auf Basis der MDA Die Entwicklung mit der CA ist eine Form der modellgetriebenen Softwareentwicklung (Model Driven Software Development, vgl. [Völ04]) und basiert auf einer pragmatischen Umsetzung der MDA (vgl. [Mil03]). Neben der Definition der Modellebenen PIM, PSM und Implementierung (Quellcode) spielt hier die Automatisierung der Transformationen zwischen den Ebenen eine essenzielle Rolle. Der Ablauf der Entwicklung ist iterativ und beginnt mit der Ableitung der PIM- Elemente aus den fachlichen Anforderungen. Anhand von Use-Cases und fachlichen Grundkonzepten (Key Abstractions) werden BAs und BEs identifiziert, die dann zu kohäsiven Business Components gruppiert werden. Die Definition der Business Component Interfaces als Außenschnittstellen der Komponenten wird aus den resultierenden BFs abgeleitet. Im Anschluss an die Modellierung des PIM wird der Entwicklungsprozess mit der automatischen Transformation in das PSM fortgesetzt (siehe Abb. 4), das mit technischen Aspekten verfeinert und anschließend durch eine Transformation auf Quellcode abgebildet wird. Dieser Prozess wird iterativ durchlaufen, wobei zu beachten ist, dass fachliche Änderungen (z. B. Hinzufügen von Methoden in BAs) ausschließlich im PIM durchgeführt werden. Die iterative Transformation des PIM aktualisiert das PSM und den Code ohne Beeinträchtigung existierender Elemente. Generiert werden nur die Codegerüste der Anwendung, die Applikationslogik wird anschließend vom Entwickler manuell hinzugefügt. Der CA-Entwicklungsweg setzt also auf der dreistufigen Hierarchie von PIM, PSM und Quellcode auf im Gegensatz zu einigen in der Praxis gängigen Werkzeugen ist hier auch die Stufe des PSM explizit im Modellierungswerkzeug sichtbar. Die Gründe für diese explizite Darstellung des PSM liegen einerseits in der Möglichkeit zur Anreicherung des PSM mit technischen Informationen, die im rein fachlichen PIM nicht gewünscht sind (wie zum Beispiel Tabellennamen für die Datenbank), und zum anderen in der Verwendung des PSM als Dokumentation für die entstehende technische Architektur des Systems. Vor allem auch die Funktion des PSM als Dokumentation ist für den späteren Betrieb der Anwendung nicht zu unterschätzen, da hier ein schneller Überblick über die technischen Gegebenheiten der Anwendung gewonnen werden kann. Modelltransformationen Die kritischen Punkte bei der Umsetzung modellgetriebener Entwicklungsprozesse sind die Modelltransformationen, welche die verschiedenen Abstraktionsstufen (PIMs, PSMs) ineinander überführen. Eine Umsetzung im Sinne der MDA legt eine Verwendung der OMG-Technologien zur Beschreibung der Abstraktionsstufen sowie der Transformationen nahe. Die Beschreibung der Abstraktionsstufen erfolgt dabei durch die Definition von domänenspezifischen Metamodellen auf Basis der Meta Object Facility (MOF) oder anhand von UML-Profilen. Die Definition der Modelltransformation soll mit der zur Zeit bei der OMG als Entwurf vorliegenden QVT-Spezifikation (Queries, Views and Transformations) festgelegt werden (vgl. [OMG03]), wobei der Prozess zur Standardisierung der Transformationen noch nicht abgeschlossen ist und daher zur Zeit keine standar-

4 Abb. 3: Abbildung der Business Component ins PSM disierte Lösung zur Beschreibung der Modelltransformationen existiert. Auf dem Markt vorhandene Werkzeuge setzen folglich allesamt auf proprietären Ansätzen zur Definition von Modelltransformationen auf. Die Beschreibung der Modelltransformationen erfolgt in den meisten verfügbaren Werkzeugen durch die Verwendung von Skriptsprachen oder template-basierten Ersetzungsmechanismen, was einer Programmierung der Modelltransformationen entspricht. Weiterführende Ansätze ermöglichen eine Modellierung der Transformationen, was der Definition eines Metamodells für die Modelltransformationen gleichkommt. Die CA-Werkzeugumgebung Die Auswahl der Werkzeugumgebung für die Umsetzung des CA-Entwicklungsprozesses und der Modelltransformationen ist durch folgende Auswahlkriterien motiviert: möglichst weit gehende Standard- Konformität, explizite Modellierbarkeit mehrerer Abstraktionsstufen, geringer Aufwand zur Implementierung eigener domänenspezifischer Umgebungen und zur Wartung der Abbildungsvorschriften, Unabhängigkeit von Modellierungswerkzeugen und Integrierbarkeit in existierende Werkzeuglandschaften und Prozesse. Im derzeitigen Stadium der MDA- Initiative sowie der auf dem Markt verfügbaren Werkzeuge sind leider nicht alle obigen Kriterien in der Praxis erfüllbar. Weil die Standardisierungsbestrebungen der OMG noch nicht abgeschlossen sind und der Markt der MDA-Werkzeuge noch stark in Bewegung ist, verwendet die CA einen pragmatischen Weg zur Umsetzung des Entwicklungsprozesses mit existierenden Werkzeugen, um zeitnah die Vorteile der modellgetriebenen Entwicklung in der Praxis nutzen zu können. Abb. 4: Modelltransformationen im Entwicklungsweg der CA PIM/PSM-Transformation Die Implementierung der PIM/PSM- Transformation erfolgt auf Basis eines Metamodells, das die Abbildung der PIM- Elemente auf die J2EE-Plattform beschreibt und das selbst in UML modelliert ist. PIM und PSM werden dabei unter Verwendung von Mechanismen zur UML- Profilbildung mittels Stereotypen definiert. Der Modelltransformator reagiert nun auf die durch die Stereotypen identifizierbaren Artefakte des PIMs und erzeugt die dazu passenden PSM-Elemente, wobei jedes im PIM definierte CA-Element die im Metamodell spezifizierten PSM-Elemente erzeugt. Die Kernelemente des UML- Profils im CASE-Tool sind in Abbildung 5 dargestellt bei der Anwendung der Transformation werden die entsprechenden Platzhalter der Metamodell-Elemente durch die tatsächlichen verwendeten Namen im PIM ersetzt. Der PIM/PSM-Transformator ist technisch in das bei der BMW Group eingesetzte Modellierungswerkzeug Borland Together integriert und erlaubt dort sowohl die Modellierung des PIMs als auch die Definition des Metamodells für die Transformationen in das PSM. Um eine weitgehende Werkzeugunabhängigkeit zu wahren, abstrahiert der Transformator-Kern von der Together-Programmierschnittstelle und erlaubt so eine unkomplizierte Übertragung auch auf andere UML-Werkzeuge. PSM-Quellcode-Transformation (Codegenerierung) Aus der Transformation des PIM entsteht im UML-Werkzeug ein PSM, das mit zusätzlichen Informationen angereichert oder verfeinert werden kann. Die anschließende Abbildung des PSM für J2EE auf Quellcode wird durch das Werkzeug xdoclet (vgl. [XDOC]) realisiert. xdoclet ist ein Open-Source- Werkzeug zur Codegenerierung, das auf Basis attribut-orientierter Programmierung für die Codegenerierung aus dem PSM in die J2EE-Plattform und die verwendeten Applikationsserver bestens geeignet ist. Die Attribute für die J2EEspezifische Codegenerierung werden bei der Erzeugung des PSM durch den PIM/PSM-Transformator bereits erstellt und können bei Bedarf im PSM nochmals angepasst werden. Die Transforma

5 Abb. 5: Kernelemente des CA-Metamodells tionsregeln werden durch xdoclet-templates gesteuert, welche die Abbildung der xdoclet-tags auf Quellcode definieren. Indem die Abbildung des PSM auf die J2EE-Plattform weitgehend stabil ist, sind diese Templates nur sehr selten anzupassen im Rahmen der CA wurden lediglich marginale Anpassungen der Templates an verwendete Applikationsserver durchgeführt. Vorteile des CA-Entwicklungsweges Der Vorteil der CA-Werkzeugumgebung besteht vor allem in der einfachen und schnellen Implementierung und Anpassung der Abbildungsregeln auf Basis der beschriebenen Metamodellierung, die anhand eines übersichtlichen UML- Modells die Definition der PIM/PSM- Transformation erlaubt. Diese Realisierung ermöglicht überdies eine Beschreibung der Transformationen ohne die Verwendung proprietärer Skriptsprachen. Somit bleibt die implementierte Lösung durch ihre Flexibilität auch offen für einen potenziellen Übergang zu neuen, standardisierten MDA-Lösungen, auch wenn derzeit nicht alle der eingangs genannten Forderungen durch die CA- Werkzeugumgebung erfüllt werden können. In seiner Gesamtheit betrachtet, stellt der CA-Entwicklungsweg damit einen iterativen und teil-automatisierten Prozess im Sinne der MDA dar. Der Mehrwert der Modellierung von Anwendungssystemen wird durch die automatisierte Transformation auf technische Plattformen klar herausgestellt, was einerseits die Motivation zur Modellierung fördert und andererseits ein stets aktuelles fachliches Modell einer Anwendung als Ergebnis liefert. Dies stellt einen essenziellen Vorteil bei der langfristigen Betreuung und Wartung von Systemen dar und trägt massiv zu einer nachhaltigen Modellierung von IT-Systemen bei. Erfahrungen und Ausblick Die MDA ist ein viel versprechendes Konzept für die Softwareentwicklung und bereits heute praktisch einsetzbar. Hierfür ist es jedoch notwendig den MDA-Ansatz mit pragmatischen Konzepten geeignet zu interpretieren. So ist es heute kaum praktisch umsetzbar, fachliche Algorithmen in Diagrammen zu modellieren, um daraus eine vollständige Code-Generierung zu erreichen. Bei dem pilothaften Einsatz der CA in Projekten der BMW Group konnten folgende Erfahrungen gemacht werden: Als großer Vorteil der CA wird die einheitliche Designsprache gewertet. Mit dem Modellierungsprofil der CA ist es nun möglich, auch in der fachlichen Modellierung eine gemeinsame Sprache innerhalb eines Teams zu benutzen, was den Einstieg neuer Projektmitglieder erleichtert und insbesondere auch die verbesserte Mitarbeit der Fachexperten ermöglicht. Die Unabhängigkeit von Geschäftslogik und Technologie in Kombination mit dem generativen Entwicklungsweg führen zu einer deutlichen Verkürzung der Entwicklungszeiten. Die technische Umsetzung durch die Integration in ein UML-Werkzeug vereinfacht dabei die Anwendung der Transformationen. Durch die Trennung der Geschäftslogik von der darunter liegenden Plattform bleiben die langlebigen fachlichen Anteile einer Anwendung von kurzlebigen Technologien und Versionswechseln relativ unberührt (vgl. [Eic04]). Durch die Verwendung von Best Practices und einheitlichen Transformationsregeln ergeben sich homogene Anwendungen, die sich an konzernweit gültigen Standards orientieren. Neben der einfacheren Testbarkeit erleichtern einheitliche Namenskonventionen, Code- und Package-Strukturen zusätzlich die Wartung der Systeme. Expertenwissen in Form von J2EE- Entwurfsmustern steht unmittelbar für Entwickler unterschiedlicher Kenntnisstufen zur Verfügung, die Systeme sind von Beginn an klarer strukturiert und erlauben eine noch stärkere Fokussierung auf die Implementierung der Fachlichkeit. Die damit verbundene Erhöhung der Softwarequalität wird grundsätzlich auch durch die Codegenerierung gefördert, da die Auseinandersetzung mit J2EE- Konstrukten, wie z. B. Client- Interfaces, Deskriptoren, Anwendungsarchiven, reduziert wird. Aufgrund der positiven Erfahrungen in Pilotprojekten soll die CA in Kürze konzernweit eingeführt werden. Die Herausforderung beim weitläufigeren Einsatz der CA besteht dabei auch in einer Änderung der Arbeitsweise bei der Entwicklung, da das Denken in Modellen sich etablieren und die Modellierung gegenüber der Codierung an Stellenwert gewinnen muss. In Zukunft ist außerdem eine stark verbesserte Werkzeugunterstützung für generative Lösungen zu erwarten. Dazu gehören insbesondere eine verbesserte Standardisierung der Austauschformate von Modellen und aus Sicht der MDA wünschenswerte Funktionalitäten, wie z.b. Profile und Constraint-Unterstützung. Ein hier viel versprechender Ansatz ist die UML 2.0, da die Neuauflage der Modellierungssprache hinsichtlich der MDA wesentliche Verbesserungen bringt (z.b. UML-Profile, Modellaustausch mit XMI). Diese Entwicklungen könnten in Zukunft dazu führen, dass die Eigenimplementierung des Transformationsprozesses durch eine Standardlösung ersetzt werden kann. Diese Möglichkeit wurde in der CA durch die Architektur des Transformators so weit wie möglich berücksichtigt. Literatur & Links [Alu01] D. Alur, J. Crupi, D. Malks, Core J2EE Patterns Best Practices and Design Strategies, Sun Microsystems, 2001 [Eic04] S. Eich, E. Wagner, D. Menges, Geschäftslogik-zentrierte Architekturen in J2EE, in: OBJEKTspektrum 4/04 [Fow03] M. Fowler, Patterns of Enterprise Application Architecture, Addison-Wesley, 2003 [Mil03] J. Miller, J. Mukerji (Hrsg.), MDA Guide Version 1.0.1, OMG Dokument omg/ , 2003 [OMG03] Object Management Group (OMG), MOF 2.0 Query/Views/Transformations RFP, Oktober 2003 [Völ04] M. Völter, Modellgetriebene Softwareentwicklung, in: OBJEKTspektrum 4/04 [XDOC] xdoclet Homepage, siehe: xdoclet. sourceforge.net 5/2004

Model Driven Architecture

Model Driven Architecture { AKTUELLES SCHLAGWORT* / MODEL DRIVEN ARCHITECTURE Model Driven Architecture Martin Kempa Zoltán Ádám Mann Bei der Model Driven Architecture (MDA) bilden Modelle die zentralen Elemente des Softwareentwicklungsprozesses.

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

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

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

Software-Qualität im Rahmen modellgetriebener Softwareentwicklung

Software-Qualität im Rahmen modellgetriebener Softwareentwicklung Software-Qualität im Rahmen modellgetriebener Softwareentwicklung OFFIS Technologiecluster Enterprise Application Integration niels.streekmann@offis.de 09.07.2008 Seite 1 / 13 Software-Qualität: Unterschiedliche

Mehr

Modellgetriebene Softwareentwicklung (Model Driven Software Development - MDSD) SS 2014

Modellgetriebene Softwareentwicklung (Model Driven Software Development - MDSD) SS 2014 Modellgetriebene Softwareentwicklung (Model Driven Software Development - MDSD) SS 2014 Wahlpflichtfach (2 SWS) für Bachelor Andreas Schmidt Einführung/Organisation 1/19 Ziele der Vorlesung Vorstellung

Mehr

UML 2.0 Quelltextgenerierung

UML 2.0 Quelltextgenerierung UML 2.0 Quelltextgenerierung Seminararbeit im Fach Informatik im Rahmen des Seminars Sicherheitskritische Systeme an der Universität Siegen, Fachgruppe für Praktische Informatik eingereicht bei Dr. Jörg

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Modell Driven Software Development (MDSD)

Modell Driven Software Development (MDSD) Modell Driven Software Development (MDSD) Eine Einführung Uni Jena, 2013-04-08 Modelle in der Softwareentwicklung schon lange benutzt Analysemodelle, Entwurfsmodelle, Verhaltensmodelle, Prozessmodelle,

Mehr

Modellgetriebene Softwareentwicklung von mobilen Anwendungen. Gabriele Taentzer WS 2014/15 Philipps-Universität Marburg

Modellgetriebene Softwareentwicklung von mobilen Anwendungen. Gabriele Taentzer WS 2014/15 Philipps-Universität Marburg Modellgetriebene Softwareentwicklung von mobilen Anwendungen WS 2014/15 Philipps-Universität Marburg Organisation der LV Umfang: 6 SWS, 9 ECTS Punkte Veranstalter:, Daniel Strüber, Steffen Vaupel Kontakt:

Mehr

Modellgetriebene Entwicklung von grafischen Benutzerschnittstellen

Modellgetriebene Entwicklung von grafischen Benutzerschnittstellen Modellgetriebene Entwicklung von grafischen Benutzerschnittstellen Stefan Link, Thomas Schuster, Philip Hoyer, Sebastian Abeck Institut für Telematik, Fakultät für Informatik Universität Karlsruhe (TH)

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

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Model Driven SOA. < J Springer. Anwendungsorientierte Methodik und Vorgehen in der Praxis. Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann

Model Driven SOA. < J Springer. Anwendungsorientierte Methodik und Vorgehen in der Praxis. Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann Model Driven SOA Anwendungsorientierte Methodik und Vorgehen in der Praxis Mit Illustrationen von Martin Starzmann < J Springer Inhaltsverzeichnis

Mehr

Die nächste Revolution in der modelgetriebenen Entwicklung?

Die nächste Revolution in der modelgetriebenen Entwicklung? Die nächste Revolution in der modelgetriebenen Entwicklung? Me Johannes Kleiber Software Engineer bei FMC Johannes.Kleiber@fmc-ag.com Themen Überblick Window Workflow Foundation Workflows modellieren WF

Mehr

objectif / SOA /.NET Inhalt Technologien ObjectiF Beispiel Vergleich: ObjectiF Rational Rose Quellenverzeichnis 20.01.2008 Christian Reichardt 2 Technologien 20.01.2008 Christian Reichardt 3 Methodenaufruf

Mehr

Enterprise JavaBeans

Enterprise JavaBeans Enterprise JavaBeans Sebastian Pipping 18. Dezember 2006 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. Teil I J2EE J2EE Was ist J2EE? Was ist J2EE?

Mehr

Tier-Konzepte. Vertiefungsarbeit von Karin Schäuble

Tier-Konzepte. Vertiefungsarbeit von Karin Schäuble Vertiefungsarbeit von Karin Schäuble Gliederung 1. Einführung 3. Rahmenbedingungen in der heutigen Marktwirtschaft 3.1 Situation für Unternehmen 3.2 Situation für Applikationsentwickler 4. Lösungskonzepte

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

TUDOOR - Ein Java Adapter für Telelogic DOORS

TUDOOR - Ein Java Adapter für Telelogic DOORS TUDOOR - Ein Java Adapter für Telelogic DOORS Jae-Won Choi, Anna Trögel, Ingo Stürmer Model Engineering Solutions GmbH Abstract: Im Bereich des Requirements Engineering hat sich DOORS der Firma Telelogic

Mehr

Erfolg ist programmierbar.

Erfolg ist programmierbar. 45789545697749812346568958565124578954569774981 46568958565124578954569774981234656895856124578 45697749812346568958565124578954569774981234656 58565124578954569774981234656895856124578954569 49812346568958565124578954569774981234656895856

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

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

Modellgetriebene Softwareentwicklung in der Bundesagentur für Arbeit

Modellgetriebene Softwareentwicklung in der Bundesagentur für Arbeit BA IT-Systemhaus Systemhaus, Team Anwendungsarchitektur (SEA) Modellgetriebene Softwareentwicklung in der Bundesagentur für Arbeit Agenda 1. Vorstellung des Teams SEA und der Anwendungsarchitektur 2. MDA

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

Die Pflege modellgetrieben entwickelter Anwendungen

Die Pflege modellgetrieben entwickelter Anwendungen Dr. Christoph Niemann otris software AG Königswall 21 44137 Dortmund niemann@otris.de Tel. 0231/958069-0 www.otris.de Modellgetriebene Software- Entwicklung: Wunsch oder Wirklichkeit? copyright by otris

Mehr

Übungsaufgabe Transaktion als Middleware

Übungsaufgabe Transaktion als Middleware Übungsaufgabe Transaktion als Middleware und Java Persistence API Client/Server Abstraktes Komponentenmodell Entscheidende Punkte Erweiterung der Invoke-Methode Context-Verwaltung Transaktionsbehandlung

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

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

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

Etablierung serviceorientierter Architekturen mit Web Services

Etablierung serviceorientierter Architekturen mit Web Services Etablierung serviceorientierter Architekturen mit Web Services Vorlesung im (Entwicklung von Serviceangeboten) 1 Agenda Einsatzbereiche von Web Service basierten Angeboten Übersicht zur Java-System Application

Mehr

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava shota.okujava@isento.de www.isento.de

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava shota.okujava@isento.de www.isento.de Beispielhaft MDSD in der Praxis Dr. Shota Okujava shota.okujava@isento.de www.isento.de Agenda Einführung Softwareentwicklungsprozess und MDSD Technologien und Werkzeuge Demo Entwicklung der Metamodelle

Mehr

IT-Projekte effektiv steuern durch Integration von Modellierung und ALM bzw. Änderungsmanagement

IT-Projekte effektiv steuern durch Integration von Modellierung und ALM bzw. Änderungsmanagement IT-Projekte effektiv steuern durch Integration von Modellierung und ALM bzw. Änderungsmanagement Basierend auf einem zentralen SOA-Projekt wird die Integration von Änderungsmanagement aus dem ApplicationLifeCycle

Mehr

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

Christian Kurz SWT Projekt WS 07/08

Christian Kurz SWT Projekt WS 07/08 Christian Kurz SWT Projekt WS 07/08 1. Allgemeine Aspekte der generativen GUI- Entwicklung 2. Entwicklung mit Hilfe von GUI-Designern 3. Entwicklung mit Hilfe deklarativer GUI- Sprachen 4. Modellgetriebene

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

SOA und modellgetriebene Software- Entwicklung in der Umsetzung von Busines-IT-Alignment-Aktivitäten

SOA und modellgetriebene Software- Entwicklung in der Umsetzung von Busines-IT-Alignment-Aktivitäten 1 40 SOA und modellgetriebene Software- Entwicklung in der Umsetzung von Busines-IT-Alignment-Aktivitäten 2 40 Übersicht Motivation Business-IT-Alignement: Was ist das und warum braucht man das? Service-orientierte

Mehr

Softwareentwicklung mit UML

Softwareentwicklung mit UML Softwareentwicklung mit UML Die Unified Modeling Language im Projekteinsatz 2.12.2003, Seite 1 Übersicht 1 Einleitung 2 Die Unified Modeling Language (UML) 3 Vorgehensmodelle und UML 4 Ausblick 4.1 UML

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

Mufid Sulaiman mufidsulaiman@web.de

Mufid Sulaiman mufidsulaiman@web.de Mufid Sulaiman mufidsulaiman@web.de Überblick Frameworks Applikationsentwicklung mit Frameworks Komponentenbasierte Frameworks Einführung in Enterprise JavaBean Einführung in SanFrancisco Vergleich Enterprise

Mehr

Rechnernetze Projekt SS 2015

Rechnernetze Projekt SS 2015 30/03/15 Seite 1 Aspektorientierte Programmierung logische Aspekte (Concerns) im Programm separieren Crosscutting Concerns (Ziel: generische Funktionalitäten über mehrere Klassen hinweg zu verwenden -

Mehr

Model-Driven Development in Scrum-Projekten

Model-Driven Development in Scrum-Projekten Tempo machen: Model-Driven Development in Scrum-Projekten Herzlich willkommen Enrico Fritz microtool GmbH Berlin Tempo machen: Model-Driven Development in Scrum-Projekten 25 Jahre Tools und Beratung: microtool

Mehr

ORACLE Business Components for Java (BC4J) Marco Grawunder

ORACLE Business Components for Java (BC4J) Marco Grawunder ORACLE Business Components for Java (BC4J) Marco Grawunder Gliederung 2 Probleme von J2EE/EJB J2EE-Pattern Lösungsansatz: BC4J Architektur einer BC4J-Anwendung Komponenten Entity Objects View Objects Application

Mehr

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS Piotr Kasprzak Agenda Laufzeitumgebung Java EE (J2EE) Motivation APIs / Technologien JBoss Entwicklungsumgebung Eclipse Ausblick Java EE -

Mehr

Erweiterung eines metamodell-basierten Generator-

Erweiterung eines metamodell-basierten Generator- Erweiterung eines metamodell-basierten Generator- Frameworks zur Erzeugung von Quellcode für eine mehrschichtige Client/Server Architektur am Beispiel von J2EE Fachhochschule Stuttgart Hochschule der Medien

Mehr

Modellgetriebene agile BI-Vorgehensweise

Modellgetriebene agile BI-Vorgehensweise Modellgetriebene agile BI-Vorgehensweise Thomas Neuböck Konrad Linner 12.11.2013 Inhalt Anforderungen und Lösungsansatz Agile Vorgehensweise Orientierung nach Fachthemen Architekturrahmen Modellorientierung

Mehr

Der Zukunft ein Schritt voraus sein!

Der Zukunft ein Schritt voraus sein! Der Zukunft ein Schritt voraus sein! Nutzen Sie Ihren Vorteil mit modellgetriebener Softwareentwicklung von Sphinx! Autor DI Christian Schiestl/Sphinx IT Consulting Abstract Software wie ein Industrieprodukt

Mehr

Karl Kessler, Peter Tillert, Panayot Dobrikov Java-Programmierung mit dem SAP Web Application Server

Karl Kessler, Peter Tillert, Panayot Dobrikov Java-Programmierung mit dem SAP Web Application Server 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Karl Kessler, Peter Tillert, Panayot Dobrikov Java-Programmierung

Mehr

SECTINO. Security for Inter-Organizational Workflows

SECTINO. Security for Inter-Organizational Workflows SECTINO Security for Inter-Organizational Workflows Framework zur Modellierung und Realsisierung sicherheitskritischer organisationsübergreifender Workflows Kooperation Research Group Quality Engineering

Mehr

SoaML-basierter Entwurf eines dienstorientierten Überwachungssystems

SoaML-basierter Entwurf eines dienstorientierten Überwachungssystems SoaML-basierter Entwurf eines dienstorientierten Überwachungssystems Michael Gebhart (1), Jürgen Moßgraber (2), Thomas Usländer (2), Sebastian Abeck (1) (2) (1) Cooperation & Management, Karlsruher Institut

Mehr

Software-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03.

Software-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03. Software-Engineering 2 Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03.2009 1 Entwicklungsumgebungen, CASE-Tools, CASE-Werkzeuge unterstützen den Software-Entwicklungsprozess

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

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

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen Sommersemester 2013 Michael Theis, Lehrbeauftragter Java EE Spezifikation definiert ein Programmiermodell für Applikationen die Eigenschaften

Mehr

ITS Business Integrator

ITS Business Integrator IBI Weboberfläche zur Datenintegration Location Viewer Asset-Management Smallworld GIS Monitoring Planung Bau Wartung Entstörung Integration Der ITS Business Integrator (IBI) ist eine offene Plattform

Mehr

The Rational Unified Process. Eine Einführung von T. Langer und A. Nitert

The Rational Unified Process. Eine Einführung von T. Langer und A. Nitert The Rational Unified Process Eine Einführung von T. Langer und A. Nitert Übersicht Einleitung Probleme der SW-Entwicklung, Best Practices, Aufgaben Was ist der Rational Unified Process? Struktur des Prozesses

Mehr

Modellierung vonanforderungen

Modellierung vonanforderungen Modellierung vonanforderungen Dehla Sokenou GEBIT Solutions Koenigsallee 75b 14193 Berlin www.gebit.de dehla.sokenou (at) gebit.de Abstract: In der betrieblichen Anwendungsentwicklung werden in vielen

Mehr

Ausarbeitung AndroMDA

Ausarbeitung AndroMDA Westfälische Wilhelms-Universität Münster Ausarbeitung AndroMDA im Rahmen des Seminars Ausgewählte Themen des Software Engineering Irina Thome Themensteller: Prof. Dr. Herbert Kuchen Betreuer: Christian

Mehr

Von SAP R/3 zu mysap ERP und NetWeaver

Von SAP R/3 zu mysap ERP und NetWeaver Von SAP R/3 zu mysap ERP und NetWeaver Bremerhaven 06.05.2006 T4T Bremerhaven 1 Inhaltsverzeichnis 1. Motivation für SAP NetWeaver 2. SAP R/3 mysap ERP und SAP Business Suite 3. Application Platform T4T

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

Software-Engineering in der Servicerobotik Der Weg zum modellgetriebenen Softwareentwurf

Software-Engineering in der Servicerobotik Der Weg zum modellgetriebenen Softwareentwurf Servicerobotik Autonome Mobile Serviceroboter Software-Engineering in der Servicerobotik Der Weg zum modellgetriebenen Softwareentwurf, Dennis Stampfer und Christian Schlegel Institut für Informatik Hochschule

Mehr

17 Komponentenbasiertes Software-Engineering

17 Komponentenbasiertes Software-Engineering 17 Komponentenbasiertes Software-Engineering 17.0 Einführung Lernziele Grundlagen, Prinzipien und Probleme des CBSE 17.1 Komponenten und Komponentenmodelle Komponenten und ihre Eigenschaften Komponentenmodelle

Mehr

Softwarearchitektur als Mittel für Qualitätssicherung und SOA Governance

Softwarearchitektur als Mittel für Qualitätssicherung und SOA Governance Softwarearchitektur als Mittel für Qualitätssicherung und SOA Governance Mag. Georg Buchgeher +43 7236 3343 855 georg.buchgeher@scch.at www.scch.at Das SCCH ist eine Initiative der Das SCCH befindet sich

Mehr

Magisterarbeit zur Erlangung des akademischen Grades eines Magisters der Sozial- und Wirtschaftswissenschaften

Magisterarbeit zur Erlangung des akademischen Grades eines Magisters der Sozial- und Wirtschaftswissenschaften TU Wien Business Informatics Group Institut für Softwaretechnik und Interaktive Systeme Model Driven Architecture - Vollständige Codegenerierung mittels AndroMDA Magisterarbeit zur Erlangung des akademischen

Mehr

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Die Unified Modeling Language Die UML (hier in der Version 0.9) ist ein Satz von Notationen zur Beschreibung objektorientierter Softwaresysteme.

Mehr

G s e a s m a t m ar a ch c i h tek e tur u I und IoC

G s e a s m a t m ar a ch c i h tek e tur u I und IoC Gesamtarchitektur I und IoC Schichten einer Web-Anwendung Initiiert durch J2EE und Spring: Strukturierte Sicht auf UI und Fachlogik (Domäne) Ergibt 5 Schichten: Man unterscheidet Präsentations- und Domänenmodell!

Mehr

SaaS-Referenzarchitektur. iico-2013-berlin

SaaS-Referenzarchitektur. iico-2013-berlin SaaS-Referenzarchitektur iico-2013-berlin Referent Ertan Özdil Founder / CEO / Shareholder weclapp die Anforderungen 1.000.000 registrierte User 3.000 gleichzeitig aktive user Höchste Performance Hohe

Mehr

DRIVE LIKE A VIRTUAL DEVELOPER Die Poleposition für Ihre Softwareentwicklung

DRIVE LIKE A VIRTUAL DEVELOPER Die Poleposition für Ihre Softwareentwicklung DRIVE LIKE A VIRTUAL DEVELOPER Die Poleposition für Ihre Softwareentwicklung Was für ein Tempo! Das Rad dreht sich rasant schnell: Die heutigen Anforderungen an Softwareentwicklung sind hoch und werden

Mehr

Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann

Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann Andreas Ditze MID GmbH Kressengartenstraße 10 90402 Nürnberg a.ditze@mid.de Abstract: Data Lineage

Mehr

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition Inhaltsverzeichnis Vorwort 13 I Enterprise Java im Überblick 1 Bedeutung von Enterprise Java und IBM WebSphere 21 1.1 Enterprise Java 23 1.1.1 Anforderungen 23 1.1.2 E-Business 30 1.1.3 Java 36 1.2 IBM

Mehr

Modellbasierte Softwareentwicklung: Vom Requirements Engineering bis zum Testen

Modellbasierte Softwareentwicklung: Vom Requirements Engineering bis zum Testen Modellbasierte Softwareentwicklung: Vom Requirements Engineering bis zum Testen Dehla Sokenou, Erwin Tratar GEBIT Solutions GmbH Koenigsallee 75 b 14193 Berlin www.gebit.de [ Dehla.Sokenou Erwin.Tratar

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

Design Patterns. 5. Juni 2013

Design Patterns. 5. Juni 2013 Design Patterns 5. Juni 2013 Überblick Was sind Design Patterns? Welche Design Patterns gibt es? Wann sollte man Design Patterns einsetzen? Refactoring und Design Patterns: Welchen Zusammenhang gibt es

Mehr

Modellierung und Qualitätssicherung von UML-Modellen der Geschäftslogik von Informationssystemen. Tobias Brückmann, Volker Gruhn

Modellierung und Qualitätssicherung von UML-Modellen der Geschäftslogik von Informationssystemen. Tobias Brückmann, Volker Gruhn Modellierung und Qualitätssicherung von UML-Modellen der Geschäftslogik von Informationssystemen Tobias Brückmann, Volker Gruhn Motivation / Einordnung Vision Generieren von Programmcode der Geschäftslogik

Mehr

Der heilen Welt so nah

Der heilen Welt so nah Model Driven Development mit XDoclet und Annotations Der heilen Welt so nah VON BERND RÜCKER Dieser Artikel beschreibt das pragmatische Herangehen in einem Reengineering-Projekt mit Model Driven Development

Mehr

Service. Was ist eine Enterprise Service Architecture und wie reagiert SAP. Warum Monitoring in ZENOS, was monitort die XI?

Service. Was ist eine Enterprise Service Architecture und wie reagiert SAP. Warum Monitoring in ZENOS, was monitort die XI? Service Was ist eine Enterprise Service Architecture und wie reagiert SAP Allgemeine Definition Was gehört in ZENOS (Service-Layer)? Business Logik ZENOS als Provider für SAP-based Services (ESA/SOA) Warum

Mehr

J2EE Design Patterns

J2EE Design Patterns Westfälische Wilhelms-Universität Münster Ausarbeitung J2EE Design Patterns im Rahmen des Seminars Softwaretechnik im WS 04/05 Marco Nielinger Themensteller: Prof. Dr. Herbert Kuchen Betreuer: Dipl.-Wirt.Inform.

Mehr

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel VS12 Slide 1 Verteilte Systeme Vorlesung 12 Sebastian Iwanowski FH Wedel Mögliche Plattformen für Web Services VS12 Slide 2 VS12 Slide 3 Java-Software für verteilte Systeme J2EE: Java 2 Enterprise Edition

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

1 MDA Tools am Horizont

1 MDA Tools am Horizont MDA Tools am Horizont 1 MDA Tools am Horizont Die Entwicklergemeinde kennt ein neues Zauberwort, das in traditioneller Form der drei Buchstaben daherkommt: MDA (Model Driven Architecture). Wird man nun

Mehr

Agenda. Clients aus drei verschiedenen Perspektiven: Was ist ein Dialog? Komponentenarchitektur innerhalb eines Dialoges

Agenda. Clients aus drei verschiedenen Perspektiven: Was ist ein Dialog? Komponentenarchitektur innerhalb eines Dialoges Komponentenbasierte Client-Architektur Hamburg, 16.11.2007 Bernd Olleck IT-Beratung Olleck Agenda Clients aus drei verschiedenen Perspektiven: Technische Infrastruktur Fachliche Sicht Aufgaben eines Clients

Mehr

TKeasy. Die Anwendungsarchitektur der Techniker Krankenkasse. ACM/GI Regionalgruppe Hamburg, 18.3.2005 Ralf Degner, Frank Griffel

TKeasy. Die Anwendungsarchitektur der Techniker Krankenkasse. ACM/GI Regionalgruppe Hamburg, 18.3.2005 Ralf Degner, Frank Griffel TKeasy Die Anwendungsarchitektur der Techniker Krankenkasse ACM/GI Regionalgruppe Hamburg, 18.3.2005 Ralf Degner, Frank Griffel Überblick Voraussetzungen, Ziele, Entscheidungen Hardware Logische Schichten

Mehr

Model Driven Architecture

Model Driven Architecture MDA Einführung Grundlegende Konzepte und Einordnung der Model Driven Architecture (MDA) von Peter Roßbach, Thomas Stahl, Wolfgang Neuhaus Model Driven Architecture Model Driven Architecture (MDA) ein Begriff,

Mehr

SL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen

SL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen SL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen Christian Langmann langmann@softwareloft.de Stefan Kohrs kohrs@softwareloft.de Oktober 2013 SoftwareLoft IT-Solutions GmbH gegründet 2004

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

BPM und egpm. Prozessbasierte Anforderungsanalyse, Fallstudie bei einem Kommunikationsunternehmen. Thorsten Fiege (Pegasystems) & Kai Meyer (C1 WPS)

BPM und egpm. Prozessbasierte Anforderungsanalyse, Fallstudie bei einem Kommunikationsunternehmen. Thorsten Fiege (Pegasystems) & Kai Meyer (C1 WPS) BPM und egpm Prozessbasierte Anforderungsanalyse, Fallstudie bei einem Kommunikationsunternehmen Thorsten Fiege (Pegasystems) & Kai Meyer (C1 WPS) C1 WPS GMBH //// Vogt-Kölln-Str. 30 //// 22527 HAMBURG

Mehr

TU Wien. Architekturzentrierte Modellgetriebene Softwareentwicklung - Fallbeispiel und Evaluierung

TU Wien. Architekturzentrierte Modellgetriebene Softwareentwicklung - Fallbeispiel und Evaluierung TU Wien Business Informatics Group Institut für Softwaretechnik und Interaktive Systeme Benedikt Weismann Architekturzentrierte Modellgetriebene Softwareentwicklung - Fallbeispiel und Evaluierung Magisterarbeit

Mehr

37. Werkzeuge für die Model- Driven Architecture

37. Werkzeuge für die Model- Driven Architecture 37. Werkzeuge für die Model- Driven Architecture Prof. Dr. rer. nat. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden http://st.inf.tu-dresden.de

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

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 MDSD und/oder AOSD?

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 MDSD und/oder AOSD? MDSD und/oder AOSD? Markus Völter, voelter@acm.org, www.voelter.de Modellgetriebene Softwareentwicklung (MDSD) und Aspektorientierte Softwareentwicklung (AOSD) werden beide immer wichtiger im Rahmen der

Mehr

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Design Pattern - Strukturmuster CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Agenda Einleitung Strukturmuster Fassade Model View Controller Vergleich 2 Einleitung Strukturmuster

Mehr

Von Objekten zu Geschäftskomponenten. Prof. Dr. Volker Gruhn. Jetzt.

Von Objekten zu Geschäftskomponenten. Prof. Dr. Volker Gruhn. Jetzt. Von Objekten zu Geschäftskomponenten Prof. Dr. Volker Gruhn Jetzt. Gliederung Abgrenzungen von Begriffen Szenarien: Auf dem Weg zu Geschäftskomponenten Herausforderungen und Risiken Ausblick Worum geht

Mehr

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA Liste der Handbücher Liste der Benutzerhandbücher von MEGA MEGA 2009 SP4 1. Ausgabe (Juni 2010) Die in diesem Dokument enthaltenen Informationen können jederzeit ohne vorherige Ankündigung geändert werden

Mehr

SE2-10-Entwurfsmuster-2 15

SE2-10-Entwurfsmuster-2 15 Architektur und Skalierbarkeit SE2-10-Entwurfsmuster-2 15 Skalierbarkeit Skalierbarkeit bedeutet die Anpassung einer Software an wachsende Last: Interaktionsfrequenz Nutzerzahl Anpassung durch Hinzufügen

Mehr

Stand der Technik in der Softwareentwicklung - Vom Kunsthandwerk zur Ingenieurwissenschaft?

Stand der Technik in der Softwareentwicklung - Vom Kunsthandwerk zur Ingenieurwissenschaft? Stand der Technik in der Softwareentwicklung - Vom Kunsthandwerk zur Ingenieurwissenschaft? Dipl.-Kfm. Michael Kunz Dipl.-Ingenieur Carsten Sensler bluecarat AG Steinfurt, 14. Dezember 2005 Referenzen

Mehr

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

XMI & Java. von Stefan Ocke so3@inf.tu-dresden.de 5.Juli 2001 XMI & Java von Stefan Ocke so3@inf.tu-dresden.de 5.Juli 2001 1. XMI XML Metadata Interchange - Ziele und Historie - Metamodellarchitektur der OMG und MOF - XMI Dokumente und XMI DTD Ziele und Historie

Mehr

Lieferung 4.3 Entwicklungsprozess für mobile Anwendungen

Lieferung 4.3 Entwicklungsprozess für mobile Anwendungen Lieferung 4.3 Entwicklungsprozess für mobile Anwendungen für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket Arbeitspaketleitung Förderkennzeichen

Mehr

Modellbasierte Entwicklung im Kontext von Medizingeräten

Modellbasierte Entwicklung im Kontext von Medizingeräten up FPGA Modellbasierte Entwicklung im Kontext von Medizingeräten Gemeinsamer Ausgangspunkt für Software- und Hardwareentwicklung Osnabrück, 06.02.2014, Wanja Schöpfer Agenda 1 Einleitung 2 Modellbasierte

Mehr