1 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt

Größe: px
Ab Seite anzeigen:

Download "1 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt"

Transkript

1 1 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt 1. EINLEITUNG DAS THEMA DES BUCHES MDA ZIELGRUPPEN Architekten Entwickler Entscheider/Projektleiter ZIELE DES BUCHES ABGRENZUNG STRUKTUR DES BUCHES UND READERS GUIDE ÜBER DIE AUTOREN DANKSAGUNGEN MDSD GRUNDIDEEN UND BASISTERMINOLOGIE HERAUSFORDERUNG Historischer Rückblick Aktuelle Bilanz MDSD-ZIELE DER MDSD-ANSATZ BASISTERMINOLOGIE MDA Konzepte im Überblick ARCHITEKTURZENTRIERTE MDSD Motivation Generative Softwarearchitekturen Architekturzentriertes Design Vorgehensweisen Merkmale architekturzentrierter MDSD FALLSTUDIE: EINE TYPISCHE WEB-ANWENDUNG EINLEITUNG ANWENDUNGS-ENTWICKLUNGSSTRANG Das Anwendungsbeispiel MDSD-Werkzeuge Beispiel 1: Einfache Modelländerungen Beispiel 2: Modelländerungen und geschützte Bereiche Beispiel 3: Arbeiten mit dynamischen Modellen Zusammenspiel Entwicklung und Architektur Zwischenfazit ARCHITEKTUR-ENTWICKLUNGSSTRANG UML-Profil Transformationen... 64

2 2 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Funktionsweise des MDSD-Generators Bootstrapping Anpassungen der generativen Softwarearchitektur Der Rand des Infrastrukturcode-Rahmens Strukturierung von Metaprogrammen FAZIT UND AUSBLICK BEGRIFFSBILDUNG ALLGEMEINE MDSD-KONZEPTE UND TERMINOLOGIE Modellierung Plattformen Transformationen Software-Systemfamilien ABBILDUNG DER MDA-KONZEPTE ABBILDUNG DER AC-MDSD-KONZEPTE ABBILDUNG DER GENERATIVE PROGRAMMING-KONZEPTE EINORDNUNG UND ABGRENZUNG MDSD VS. CASE, 4GL, WIZARDS MDSD VS. ROUNDTRIP ENGINEERING MDSD UND PATTERNS MDSD UND AGILE SOFTWAREENTWICKLUNG Das Agile Manifest und MDSD Agile Techniken MDSD UND DOMAIN-SPECIFIC MODELING MDSD UND DOMAIN-DRIVEN DESIGN TEIL 2: DOMÄNENARCHITEKTUREN METAMODELLIERUNG WAS IST METAMODELLIERUNG? META-EBENEN VS. ABSTRAKTHEIT MOF UND UML ERWEITERUNG DER UML Erweiterung auf Basis des Metamodells Erweiterung mittels Stereotypen in UML 1.x Erweiterung mittels Profilen in UML UML-PROFILE METAMODELLIERUNG UND OCL METAMODELLIERUNG: BEISPIEL METAMODELLIERUNG: BEISPIEL TOOLGESTÜTZTE MODELLVALIDIERUNG

3 3 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt METAMODELLIERUNG UND VERHALTEN EIN AUSFÜHRLICHERES BEISPIEL Grundlegendes Value Types Physikalische Größen FALLSTRICKE BEI DER METAMODELLIERUNG Interfaces Abhängigkeiten IDs Primärschlüssel Meta-Ebenen und instanceof KONSTRUKTION MDSD-TAUGLICHER ZIELARCHITEKTUREN SOFTWAREARCHITEKTUR IM KONTEXT VON MDSD WAS IST EINE GUTE ARCHITEKTUR? WIE KOMMT MAN ZU EINER GUTEN ARCHITEKTUR? Architekturmuster & -stile BAUSTEINE FÜR SOFTWAREARCHITEKTUR Frameworks Middleware Komponenten ARCHITEKTUR-REFERENZMODELL AUSBALANCIERUNG DER MDSD-PLATTFORM Beispiele Integration von Frameworks ARCHITEKTURKONFORMITÄT KONSTRUKTION VON MDSD-TRANSFORMATIONEN BEST PRACTICES VORGEHEN Welche Teile der Zielarchitektur sollen generiert werden? Glaube an die Wiedergeburt Beuten Sie das Modell aus Generiere gut aussehenden Code wann immer möglich Modellgetriebene Integration Trennen von generiertem und nicht-generiertem Code BEST PRACTICES TECHNOLOGIE Explizite Integration von Generat und manuellen Anteilen Dummy Code

4 4 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Technische Subdomänen Proxy-Elemente Externe Modellmarkierungen Aspektorientierung und MDSD Beschreibende Metaobjekte Generierter Reflection-Layer Modulare Transformationen TECHNIKEN DER CODEGENERIERUNG CODEGENERIERUNG WARUM? Performance Codegröße Analysierbarkeit Fehlerfrüherkennung Plattformportabilität Einschränkungen der (Programmier-)Sprache Aspekte Introspection KATEGORISIERUNG Metaprogrammierung Trennung/Verquickung von Programm und Metaprogramm Implizite oder explizite Integration des generierten mit dem nicht-generierten Code Beziehungen Beispiele für Verquickung von Programm und Metaprogramm GENERIERUNGSTECHNIKEN Templates + Filtering Templates + Metamodell Frame-Prozessoren API-basierte Generatoren Inline-Generierung Code-Attribute Code-Weaving Kombination verschiedener Techniken Gemeinsamkeiten und Unterschiede der verschiedenen Ansätze Weitere Systeme MDSD-WERKZEUGE: ROLLEN, ARCHITEKTUR UND AUSWAHLKRITERIEN

5 5 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt DIE ROLLE VON WERKZEUGEN IM ENTWICKLUNGSPROZESS Modellierung Modellvalidierung & Codegenerierung Build-Werkzeug IDE-Baukasten WERKZEUGARCHITEKTUR UND AUSWAHLKRITERIEN Implementierung des Metamodells Ignorieren der konkreten Syntax Mehrstufige Generierung Modulare Transformationen Modelltransformationen sind First Class Citizens TEIL 3: PROZESSE UND ENGINEERING MDSD-PROZESSBAUSTEINE UND BEST PRACTICES EINLEITUNG TRENNUNG VON ANWENDUNGS- UND DOMÄNENARCHITEKTUR-ENTWICKLUNG Grundprinzip Architektur-Entwicklungsstrang Anwendungs-Entwicklungsstrang Organisatorische Aspekte ZWEIGLEISIG ITERATIVE ENTWICKLUNG TESTEN TESTARTEN TESTS IN DER MODELLGETRIEBENEN ANWENDUNGSENTWICKLUNG Unit-Tests Akzeptanztests Lasttests Nicht-funktionale Tests Modellvalidierung TESTEN DER DOMÄNENARCHITEKTUR Test der Referenzimplementierung und der MDSD- Plattform Akzeptanztest der DSL Test der MDSD-Transformationen VERSIONIERUNG WAS WIRD VERSIONIERT?

6 6 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt PROJEKTE UND ABHÄNGIGKEITEN STRUKTUR VON ANWENDUNGSPROJEKTEN VERSIONSMANAGEMENT UND BUILD-PROZESS BEI GEMISCHTEN DATEIEN MODELLIERUNG IM TEAM UND VERSIONIERUNG VON TEILMODELLEN Partitionierung vs. Subdomänen Verschiedene generative Softwarearchitekturen Weiterentwicklung der DSL Partitionierung und Integration GRUNDLAGEN DES PRODUCT LINE ENGINEERING SOFTWARE-SYSTEMFAMILIEN UND PRODUKTLINIEN EINORDNUNG IN DEN MDSD-PROZESS METHODIK Domänenanalyse Domänendesign & -implementierung DOMÄNENMODELLIERUNG Beispiel: Simple Components Beispiel: Enterprise Applications Beispiel: Modellierung von Hochspannungsnetzen WEITERFÜHRENDE LITERATUR FALLSTUDIE: EINGEBETTETE KOMPONENTENINFRASTRUKTUREN ÜBERBLICK Einführung und Motivation Komponenteninfrastrukturen Anforderungen an Komponenteninfrastrukturen bei eingebetteten Systemen Grundsätzlicher Ansatz PRODUCT LINE ENGINEERING Domain Scoping Variabilitätsanalyse und Domänenstrukturierung Domänendesign Domänenimplementierung MODELLIERUNG Definition von Interfaces Definition von Komponenten und Ports Definition eines Systems Gesamtmodell Verarbeitung

7 7 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt IMPLEMENTIERUNG VON KOMPONENTEN Abbildung auf Java GENERATORANPASSUNG Parsen der textuellen Syntax Parsen des Systemdefinitions-XML Parsen und Zusammenführen des Gesamtmodells Pseudodeklarative Metamodellimplementierung CODEGENERIERUNG Referenzen Polymorphismus Trennung von Verantwortlichkeiten im Metamodell Generierung der Build-Files Verwendung von AspectJ KASKADIERTE DOMÄNENARCHITEKTUREN Modellierung Generierung OBJEKTORIENTIERTE GESCHÄFTSPROZESSMODELLIERUNG UND MDSD GESCHÄFTSPROZESSMODELLIERUNG EINHEITLICHKEIT OOGPM-METHODIK TRANSFORMATION IN DAS SOFTWARE-ANALYSEMODELL SOFTWARE-ANALYSEMODELL SYSTEMDESIGN UND IMPLEMENTIERUNG FAZIT TEIL 4: MANAGEMENT ENTSCHEIDUNGSHILFE BETRIEBSWIRTSCHAFTLICHES POTENZIAL AUTOMATION UND WIEDERVERWENDUNG QUALITÄT Wohldefinierte Architektur Konserviertes Expertenwissen Stringentes Programmiermodell Aktuelle und nutzbare Dokumentation Qualität von generiertem Code Testaufwand und mögliche Fehlerquellen WIEDERVERWENDUNG PORTABILITÄT, ÄNDERBARKEIT INVESTITIONEN UND ERZIELBARE GEWINNE

8 8 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Architekturzentrierte MDSD Fachlich ausgerichtete MDSD-Domänen KRITISCHE FRAGEN ZUSAMMENFASSUNG WEITERFÜHRENDE LITERATUR ORGANISATORISCHE ASPEKTE ROLLENVERTEILUNG Domänenarchitektur-Entwicklung Anwendungsentwicklung TEAMSTRUKTUR Ausgestaltung der Rollen und Personalbedarf Querschnitts-Teams Aufgaben der Architekturgruppe SOFTWARE-PRODUKTENTWICKLUNGSMODELLE Terminologie In-House-Entwicklung Klassisches Outsourcing Offshoring Radikales Offshoring Kontrolliertes Offshoring Komponentenweise Entscheidung ADAPTIONSSTRATEGIEN FÜR MDSD VORAUSSETZUNGEN GETTING STARTED MDSD-PILOTIERUNG Risikoanalyse Projektinitialisierung MDSD-ADAPTIERUNG BESTEHENDER SYSTEME KLASSIFIKATION DES SOFTWARE-INVENTARS Bauen, Kaufen oder Open Source ENTWURF EINER ZULIEFERKETTE INKREMENTELLE EVOLUTION VON DOMÄNENARCHITEKTUREN RISIKOMANAGEMENT RISIKO: TOOLZENTRIERTHEIT Risiko: Für MDSD kontraproduktive Entwicklungs- Toolkette Risiko: Überlastetes Domänenarchitekturteam Risiko: Wasserfall-Vorgehensmodell, datenbankzentrierte Entwicklung Risiko: Elfenbeinturm

9 9 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Risiko: Keine Trennung von Anwendung und Domänenarchitektur MDA-STANDARD ZIELE KERNKONZEPTE UML MOF die Meta Object Facility XMI PIM/PSM/PDM Mehrstufige Transformationen Action-Sprachen Core Models Steuerung der PIM/PSM-Transformation Modelltransformationen Executable UML HERAUSFORDERUNGEN FÜR DIE MDA Modell-zu-Modell-Transformationen Modell-Management Evolution von DSLs Adäquate IDEs Interoperabilität INDEX

10 10 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt 1. Einleitung 1.1. Das Thema des Buches Dieses Buch handelt von modellgetriebener Softwareentwicklung oder Model-Driven Software Development, kurz MDSD. Eine etwas ungenauere, aber gängige Bezeichnung für diese Disziplin lautet Model- Driven Development (MDD) Vielleicht werden Sie sich als Leser fragen, warum wir ein solches Buch schreiben. Wir denken, dass modellgetriebene Softwareentwicklung eine große Bedeutung hat und in Zukunft eine noch viel größere haben wird. Es handelt sich im Grunde um die natürliche Fortsetzung der Programmierung, wie wir sie heute kennen. Die Verwendung von Modellen in der Softwareentwicklung hat zwar eine lange Tradition und spätestens seit der Definition der Unified Modeling Language (UML) auch eine zunehmende Verbreitung, doch handelt es sich dabei in aller Regel nur um eine Dokumentation von Softwaresystemen, insofern als dass es lediglich eine gedankliche Verbindung zwischen Modell und Softwareimplementierung gibt. Diese Form der Modellnutzung in einem Entwicklungsprozess nennen wir modellbasiert. Sie birgt zwei gravierende Nachteile in sich: Zum einen sind Softwaresysteme nicht statisch, sondern insbesondere während der ersten Phasen ihres Lebenszyklus zum Teil starken Änderungen unterworfen. Die Dokumentation muss daher sorgfältig angepasst werden dies kann je nach Detaillierungsgrad sehr aufwändig sein oder sie wird inkonsistent. Zum anderen tragen solche Modelle nur mittelbar etwas zum Fortschritt bei, da ja erst durch die Interpretation der Softwareentwickler daraus Code wird. Diese Gründe veranlassen nicht ganz zu unrecht viele Programmierer, Modelle als Overhead zu betrachten und sie allenfalls als Zwischenergebnisse anzusehen. Die modellgetriebene Softwareentwicklung geht einen anderen Weg: Modelle sind hier nicht nur Dokumentation, sondern sie sind

11 11 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt gleichzusetzen mit Code die Umsetzung ist automatisiert. Ein Vergleich mit ausgereiften Ingenieursdisziplinen wie dem Maschinenbau lässt die Idee plastisch werden: Stellen Sie sich zum Beispiel eine CNC- Fräse vor, die mit CAD 1 -Daten gespeist wird und dieses Modell vollautomatisch in ein entsprechendes Werkstück umsetzt. Oder nehmen wir eine Produktionsstraße im Automobilbau: Sie geben Ihre Bestellung inklusive Ausstattungsmerkmalen (das Modell Ihres Autos) auf, die eigentliche Herstellung ist zu einem Großteil automatisiert. Diese Beispiele zeigen bereits, dass der fachliche Bereich sowohl für die Modelle als auch für die Herstellungsautomation essenziell ist: Weder die kundenorientierte Modellierungssprache (Bestellformulare) eines Automobilherstellers noch seine Produktionsstraße sind z.b. dazu geeignet, Fertighäuser herzustellen. Diesen fachlichen Geltungsbereich bezeichnet man als Domäne. Das Ziel von MDSD ist es daher, domänenspezifische Abstraktionen zu finden und diese einer formalen Modellierung zugänglich zu machen. Dadurch entsteht ein hohes Automationspotenzial für die Fertigung von Software und dies wiederum lässt sich in den allermeisten Fällen in eine deutliche Produktivitätssteigerung umsetzen. Auch verbessern sich dadurch Qualität und Wartbarkeit von Softwaresystemen. Zudem können die Modelle von Domänenexperten verstanden werden. Es handelt sich um einen ähnlichen Evolutionsschritt wie bei der Einführung der ersten Hochsprachen in der Ära der Assemblerprogrammierung. Das Adjektiv getrieben ( driven ) in MDSD soll im Gegensatz zu basiert deutlich machen, dass Modelle bei diesem Paradigma eine zentrale, treibende Position einnehmen und mindestens den gleichen Stellenwert wie Quellcode besitzen. Um das Konzept der domänenspezifischen Modelle erfolgreich umsetzen zu können, werden vor allem drei Dinge benötigt: Domänenspezifische Sprachen, um die Modelle überhaupt formulieren zu können Sprachen, in welchen die notwendigen Modell-zu-Code- Transformationen ausgedrückt werden können Compiler, Generatoren oder Transformatoren, welche in der Lage sind, die Transformationsdefinitionen anzuwenden, um aus domänenspezifischen Modellen Programme zu erzeugen, die auf vorhandenen Plattformen ausgeführt werden können. 1 CAD = Computer Aided Design

12 12 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Im Rahmen der modellgetriebenen Entwicklung werden zwar oft grafische Modelle verwendet, dies ist jedoch keineswegs zwingend und auch nicht immer opportun textuelle Modelle sind genauso gut möglich. Typischerweise werden diese Modelle dann in programmiersprachlichen Quellcode übersetzt, um anschließend kompiliert und ausgeführt zu werden MDA Wenn Sie bereits mit der Model Driven Architecture (MDA ) der Object Management Group (OMG) vertraut sind, werden Sie nun vielleicht sagen: Das klingt wie MDA. Zum Teil ist das auch richtig. MDA hat prinzipiell ähnliche Ansätze, unterscheidet sich aber in verschiedenen Details zum Teil auch in der Motivation und nimmt tendenziell Einschränkungen vor, wie z.b. die Fokussierung auf UMLbasierte Modellierungssprachen. MDSD im Allgemeinen macht diese Einschränkungen nicht. Das Ziel von MDA ist in erster Linie Interoperabilität zwischen Werkzeugen und auf längere Sicht die Standardisierung von Modellen für populäre Anwendungsbereiche. MDSD hingegen zielt auf die Bereitstellung von praktisch einsetzbaren Methodenbausteinen ab, welche heute im Zusammenhang mit modellgetriebenen Ansätzen im Allgemeinen einsetzbar sind, und zwar unabhängig von der Werkzeugwahl oder dem Reifegrad der OMG- MDA-Standards. Zum aktuellen Zeitpunkt (Ende 2004) befindet sich der Standardisierungsprozess der MDA zum Teil noch in den Kinderschuhen. Zum einen muss man daher von der originären MDA- Vision einiges weglassen und andere Dinge recht pragmatisch interpretieren, um einen in der Praxis wirklich tauglichen Ansatz zu erhalten. Zum anderen ist eine praktische Methodenunterstützung für MDA nicht unbedingt im Fokus der OMG. Dies wird zum Teil sicherlich auch durch die Zielsetzung der MDA widergespiegelt. Die Relation zwischen MDA und MDSD werden wir im Rahmen dieses Buches noch genauer betrachten, im Prinzip kann man aber sagen, dass die MDA eine Standardisierungsinitiative der OMG zum Thema MDSD ist Zielgruppen Bestimmte Konzepte, Begrifflichkeiten und Grundlagen müssen von allen Projektbeteiligten verstanden werden, sonst lässt sich ein MDSD-

13 13 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Projekt nicht erfolgreich abschließen. Das Buch beschreibt diese Dinge vor allem in den einführenden Kapiteln Architekten Modellgetriebene Entwicklung ist in dreierlei Hinsicht von Bedeutung für Software-Architekten: Zum einen erfordert der Ansatz eine klare und formale Definition der architektonischen Konzepte einer Anwendung. Des Weiteren findet MDSD oft nicht nur im Rahmen der Entwicklung einer einzelnen Anwendung statt, sondern im Kontext von Produktlinien/Software-Systemfamilien. Diese besitzen ihre eigenen architektonischen Anforderungen, die von den Architekten adressiert werden müssen. Des Weiteren kommt eine ganz neue Sichtweise und Art der Entwicklung ins Projekt, bedingt durch die Trennung von Modellen und Modellierungssprachen, Programmen und Generatoren, entsprechenden Tools sowie spezifische prozessuale Aspekte. All diese Themen werden im vorliegenden Buch behandelt Entwickler Wenn es um ein Softwareentwicklungs-Paradigma geht, ist es nahezu selbstverständlich, dass die Rolle des Softwareentwicklers eine zentrale Bedeutung hat. MDSD impliziert zum Teil schärfere und klarere Sichtweisen auf Dinge wie die Bedeutung von Modellen, Trennung von fachlichem und technischem Code, das Verhältnis zwischen Design und Implementierung, Roundtrip-Problematiken, Architektur und Generierung, Framework-Entwicklung, Versionierung und Tests. MDSD richtig eingesetzt erleichtert die Arbeit des Softwareentwicklers deutlich, vermeidet redundanten Code und steigert die Softwarequalität durch formalisierte Strukturen Entscheider/Projektleiter Die Entscheidung, modellgetrieben zu arbeiten, fußt nicht zuletzt auf betriebswirtschaftlichen Fragestellungen wie dem Kosten-Nutzen- Verhältnis oder der Gewinnschwelle. There is no free lunch; auch modellgetriebene Entwicklung hat ihre Kosten. Unter vielen Umständen rechnet sich ein modellgetriebener Ansatz; unter einigen Umständen ist eher davon abzuraten. Auch wenn dieses Buch einen technischen Schwerpunkt hat, so betrachten wir durchaus auch organisatorische und

14 14 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt ökonomische Aspekte, die aus Sicht eines Projektes oder des ganzen Unternehmens relevant sind. Des Weiteren hat ein modellgetriebenes Vorgehen Auswirkungen auf Projektorganisation, Teamstruktur und den Softwareentwicklungsprozess. Auch darauf gehen wir in diesem Buch ausführlich ein Ziele des Buches Dieses Buch verfolgt primär das Ziel, Sie, den Leser, davon zu überzeugen, dass MDSD ein praktikabler Ansatz ist und in der Tat in vielen Fällen der traditionellen Entwicklung überlegen ist. Wir wollen Sie motivieren, diesen Ansatz alsbald einzusetzen, denn es handelt sich weder um bloße Visionen noch um graue Theorie. Dazu möchten wir Ihnen alles an die Hand geben, was Sie benötigen. Falls Sie MDSD bereits praktizieren, soll dieses Buch ggf. eine Hilfestellung oder Vertiefung für spezifische Fragen oder Bereiche darstellen. Im Detail verfolgen wir dementsprechend eine ganze Reihe von Unterzielen unabhängig vom Aufbau des Buches, die wir hier kurz und knapp erläutern möchten: Zunächst wollen wir den theoretischen Rahmen, die Grundkonzepte und die Grundbegriffe einführen. Dabei werden wir auch auf andere, verwandte Themen und Ansätze eingehen, wie z.b. die Model Driven Architecture (MDA) der OMG. Des Weiteren wollen wir konkrete Hilfestellung für spezifische, MDSD-relevante Themen geben. Dazu gehört Metamodellierung (mit UML und MOF 2 ), Codegenerierung, Versionierung, Testen sowie die Unterstützung bei der Toolauswahl auf technischer Seite. Sehr wichtig sind uns aber auch organisatorische und prozessbezogene Hilfestellungen. Zusätzlich wollen wir Argumentationen für MDSD aus ökonomischer Sicht liefern. Auch wenn man ohne einige theoretische Grundlagen nicht auskommen kann, so soll das Buch vor allem praktische Hilfestellungen geben bzw. praxisrelevante Teilmengen der angesprochenen Themen näher beleuchten. Best Practices sowie die Weitergabe von konkreten Erfahrungen (und teils auch persönlichen Meinungen) sind uns wichtig. Im Zentrum der praktischen Sicht steht die Fallstudie im ersten Teil des 2 MOF = Meta Object Facility, Standard der OMG

15 15 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Buches. Mehrere sekundäre Fallbeispiele aus verschiedenen Domänen begleiten die vertiefenden Buchteile. Wir wollen auf aktuelle Fragestellungen Antworten geben sowie aktuelle Diskussionen aufgreifen. Ein Ausblick auf Trends und Visionen im Kontext von MDSD sollen das Buch abrunden Abgrenzung Dies ist kein MDA-Buch. Wir beschreiben zwar die Grundlagen und die Terminologie dieses OMG-Standards sowie die zugrunde liegende Vision, auch geben wir in Kapitel <Ref MDA> im Anhang einen Abriss über den Stand der Standardisierung, aber wir vertreten in diesem Buch eben durchaus unsere eigenen Ansichten und Erfahrungen. Sekundär- Literatur (neben der Spezifikation) zum Thema MDA bietet z.b. [Fra02]. Dieses Buch hat nicht zum Ziel, einen geschlossenen, schwergewichtigen MDSD-Entwicklungsprozess zu definieren. Stattdessen beschränken wir uns auf die Vermittlung von Best Practices, welche sich im Zusammenspiel mit agilen Ansätzen wie Crystal [Coc01] und Methodenbausteinen der Produktlinienentwicklung <Ref PLE> zur Konstruktion eines auf den jeweiligen Kontext maßgeschneiderten Entwicklungsprozesses anbieten Struktur des Buches und Readers Guide Das Buch beschreibt modellgetriebene Ansätze, wie sie u.a. von den Autoren in der Praxis seit vielen Jahren erfolgreich eingesetzt wurden und werden. Wir beleuchten das Thema im Wesentlichen aus den Perspektiven Technik, Engineering und Management, welche sich in der Aufteilung des Buches wiederfinden: Teil 1 Einführung: Dieser Teil enthält die Einleitung, die Sie gerade lesen, sowie eine Erläuterung der wichtigsten MDSD- Grundideen und der zugehörigen Basisterminologie, die der Model Driven Architecture (MDA) der OMG entnommen ist. Wir widmen uns dann der architekturzentrierten Ausprägung von MDSD, welche ideal als Einstieg in die Praxis geeignet ist. Wir vermitteln die konkreten Techniken anhand einer ausführlichen Fallstudie aus dem Bereich E-Business/Web-Applikationen. Anschließend erfolgt auf der Grundlage der erworbenen Kenntnisse eine umfassendere MDSD-Begriffsbildung. Dieses

16 16 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Kapitel ist sehr wichtig, zumal der Rest des Buches auf der dort definierten Terminologie aufbaut. Hier findet sich die konzeptionelle, artefaktbezogene Definition von MDSD. Abgerundet wird der erste Teil durch eine Einordnung respektive Abgrenzung verwandter Themen, wie agiler Softwareentwicklung. Teil 2 Domänenarchitekturen: Die Domänenarchitektur ist das MDSD-Schlüsselkonzept. Sie beinhaltet unter anderem die Modellierungssprache für die Domäne und die Generierungsvorschriften, welche die Modelle auf eine konkrete Plattform abbilden sollen. Dieser Teil des Buches vermittelt schrittweise Best Practices zur Konstruktion solcher Domänenarchitekturen. Das Kapitel über Metamodellierung bildet das Fundament. Es folgt eine detaillierte Betrachtung der besonderen Rolle der Zielarchitektur im Kontext von MDSD. Das zentrale Kapitel, welches sich mit der Konstruktion von Generierungsvorschriften (MDSD-Transformationen) beschäftigt, schließt sich an. Zum Aufbau von Domänenarchitekturen stützt man sich zweckmäßigerweise auf generische Werkzeuge. Die letzten beiden Kapitel dieses Teils vermitteln diesbezüglich allgemeine technische Grundlagen über Codegenerierung sowie Konstruktions- bzw. Auswahlkriterien für MDSD-Werkzeuge. Teil 3 Prozesse und Engineering: In diesem Teil behandeln wir die prozessualen MDSD-Aspekte und Engineering-Themen, die durch MDSD eine spezifische Ausprägung erhalten. Spätestens hier wird deutlich, dass MDSD nicht einfach nur eine Technik ist. Wir stellen eine Reihe von Best Practices auf, die zu einem praktischen und pragmatischen Entwicklungsprozess kombiniert werden können. Anschließend gehen wir auf die Themen Test und Versionierung ein. Es folgt ein Abriss über Productline Engineering, der durch ein reales Projektbeispiel begleitet und durch eine ebenso reale Fallstudie im Anschluss konkretisiert wird. Zum Schluss geht es um den Übergang von objektorientierter Geschäftsprozessanalyse zu modellgetriebener Softwareentwicklung. Teil 4 Management: Dieser Teil des Buches wendet sich primär an IT-Manager und Projektleiter und kann weit gehend unabhängig vom Rest des Buches gelesen werden. Wir gehen dabei auf betriebswirtschaftliche und organisatorische Aspekte ein

17 17 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt und behandeln Adaptionsstrategien. Das erste Kapitel dieses Teils enthält einen FAQ 3 -Abschnitt zum Thema MDSD. Anhang: Der Anhang enthält eine ausführlichere Darstellung des MDA-Standards der OMG sowie Index und Literaturverzeichnis. Grundsätzlich haben wir uns beim Aufbau des Buches größte Mühe gegeben, dass es beim sequentiellen Lesen trotz der inhaltlich unvermeidlichen zyklischen Abhängigkeiten eine optimale Didaktik entfaltet. Da wir jedoch zum Teil stark unterschiedliche Zielgruppen ansprechen, wird sicherlich bei dem einen oder anderen Leser der Wunsch bestehen, (zunächst) selektiv zu lesen. Dazu ein paar Hinweise: Der primär technisch interessierte Leser, der bereits über MDA- Kenntnisse verfügt, kann ggf. direkt mit der Fallstudie in Teil 1 beginnen, mit Kapitel <Ref Begr> (ebenfalls in Teil 1) fortfahren und sogleich die technischen Fragestellungen durch die Lektüre ausgewählter Kapitel von Teil 2 oder 3 vertiefen, bevor er sich dem Rest des Buches widmet. Falls Sie sich fragen, welche ökonomischen Vorteile MDSD eigentlich konkret bietet, bevor Sie sich im Detail mit der Frage auseinander setzen wollen, was MDSD ist, können Sie das Kapitel <Ref Oeko> vorziehen. Als Verständnisgrundlage empfehlen wir ggf. das Kapitel <Ref Basis> Über die Autoren Thomas Stahl ist Diplom-Informatiker und arbeitet seit 1994 bei der b+m Informatik AG in Melsdorf bei Kiel. Als Chefarchitekt ist er verantwortlich für Architekturmanagement, Framework-Entwicklung und Software Engineering. Außerdem ist er als Berater tätig. Sein inhaltlicher Arbeitsschwerpunkt ist derzeit die modellgetriebene Softwareentwicklung. Neben der Projektarbeit verfasst er Artikel für Fachzeitschriften und spricht auf IT-Konferenzen. Er ist einer der geistigen Väter des Open- Source Generators openarchitectureware. Seine Freizeit widmet er unter anderem der Musik. Sie erreichen ihn unter 3 FAQ = Frequently Asked Questions

18 18 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt Markus Völter arbeitet als freiberuflicher Berater zum Thema Softwaretechnologie und -engineering. Seine Schwerpunkte liegen dabei auf Softwarearchitektur, Middleware und Modellgetriebener Entwicklung. Er hat langjährige Erfahrung in den verschiedensten Domänen, darunter Banken, E-Business, Gesundheitswesen, Astronomie, Telematik und Automotive Embedded. Neben seiner Tätigkeit in Projekten ist Markus regelmäßig als Sprecher auf den einschlägigen nationalen und internationalen Konferenzen anzutreffen. Er ist außerdem Autor mehrerer Bücher, Patterns und Artikel zu Themen, die sich aus seiner Tätigkeit als Berater ergeben. In seiner Freizeit ist er vorzugsweise mit seinem Segelflugzeug am Himmel über Süddeutschland anzutreffen. Sie erreichen ihn unter oder Danksagungen Ein Buch, wie Sie es hier vor sich haben, ist mit viel mehr Aufwand verbunden, als man es sich vorstellen mag. Ohne die Unterstützung einer ganzen Reihe von Leuten wäre die Fertigstellung noch deutlich schwieriger gewesen. Deshalb ist es an der Zeit, dass wir unseren Dank aussprechen. Da wären zunächst unsere Gastautoren Jorn Bettin, Wolfgang Lorenz und Tim Weilkiens. Jorn hat vor allem zum Management-Teil des Buches sehr viel beigesteuert, uns bei der Begriffsbildung unterstützt und wichtige Hinweise zur Struktur des Buches gegeben. Wolfgang und Tim haben das Kapitel Objektorientierte Geschäftsprozessmodellierung und MDSD beigesteuert. Wir bedanken uns bei Bernd Oestereich, Peter Roßbach und Wolfgang Neuhaus für fruchtbare Diskussionen und Material, welches Eingang in die Fallstudie im ersten Teil des Buches gefunden hat. Weiterhin möchten wir uns sehr bei unseren Reviewern bedanken, die nützliches Feedback zu vielen Details, aber vor allem auch zur Struktur des Buches gegeben haben. Die Reviewer waren (in alphabetischer Reihenfolge): Wolfgang Görigk, Michael Kircher, Michael Kunz, Andreas Mohnberg, Wolfgang Neuhaus, Jürgen Rühle, Martin Schepe, Klaus-Dieter Schmatz, Eberhard Wolff und Ghica van Emde Boas. Last but not least möchten wir auch dem dpunkt.verlag danken, insbesondere René Schönfeldt, unserem Lektor. Er hat nicht nur Verständnis für unsere mehrfachen Terminverschiebungen aufgebracht,

19 19 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt sondern ist uns vor allem gegen Ende mit der einen oder anderen unüblichen Vorgehensweise entgegengekommen. Markus möchte sich bei dieser Gelegenheit auch noch einmal explizit bei Tom Stahl bedanken, dass er vor allem im letzten Drittel der Schreibphase bei diesem Buchprojekt die Koordination übernommen und viel Arbeit in Details investiert hat. Thomas bedankt sich bei der b+m Informatik AG für die sehr kulante Schaffung des nötigen Freiraums für dieses Projekt. Sein größter Dank gilt jedoch seiner Frau Anja, welche ihn trotz schwieriger Phasen kontinuierlich unterstützt hat.

20 20 Modellgetriebene Softwareentwicklung Stahl/Völter - dpunkt 2. MDSD Grundideen und Basisterminologie Dieses Kapitel dient dazu, die Motivation und die wichtigsten Grundkonzepte modellgetriebener Softwareentwicklung aufzuzeigen. Wir bevorzugen die Abkürzung MDSD (Model-Driven Software Development) gegenüber der etwas ungenaueren Variante MDD (Model- Driven Development). Erstere hat sich über die letzten ein bis zwei Jahre in der entsprechenden Community etabliert. Die Model Driven Architecture (MDA) der Object Management Group (OMG) ist eine Ausprägung respektive eine Standardisierungsinitiative zu diesem Thema. Unser Fokus liegt auf der praktischen Umsetzbarkeit in Softwareprojekten. An vielen Stellen decken sich unsere Konzepte und Erfahrungen mit der MDA-Vision der OMG an einigen nicht. Wir werden diese Stellen benennen und diskutieren. Unabhängig davon ist die MDA-Terminologie (eben weil sie standardisiert und mittlerweile recht verbreitet ist) sehr nützlich, um einen Einstieg in die Materie zu ermöglichen und genau in diesem Sinne ist der zweite Teil des Kapitels zu verstehen: Die MDA liefert die Basisterminologie für MDSD. Der dritte Teil des Kapitels führt dann die noch fehlenden Konzepte ein, die zum Verständnis der ausführlichen Fallstudie notwendig sind Herausforderung Im 21. Jahrhundert ist Software überall. Die Softwareindustrie hat sich zu einer der größten Industrien auf dem Planeten entwickelt, und viele der erfolgreichsten Unternehmen heutzutage sind Softwareproduzenten beziehungsweise bieten Leistungen im Softwareumfeld an. Heute ist Software ein kritischer Bestandteil im Maschinenraum aller technologiebasierter und vieler servicebasierter Unternehmen. Hohe Softwareentwicklungskosten haben eine erhebliche ökonomische

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Erfolg ist programmierbar.

Erfolg ist programmierbar. 45789545697749812346568958565124578954569774981 46568958565124578954569774981234656895856124578 45697749812346568958565124578954569774981234656 58565124578954569774981234656895856124578954569 49812346568958565124578954569774981234656895856

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

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

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

Sprachen, Modelle, Fabriken

Sprachen, Modelle, Fabriken Sprachen, Modelle, Fabriken Markus Völter, voelter@acm.org, www.voelter.de Rund um die Modellgetriebene Softwareentwicklung etablieren sich eine ganze Reihe von Techniken und Vorgehensweisen die unter

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

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

Softwareentwicklungsprozesse. 18. Oktober 2012

Softwareentwicklungsprozesse. 18. Oktober 2012 Softwareentwicklungsprozesse 18. Oktober 2012 Überblick Was soll ein Softwareentwicklungsprozess leisten? Überblick über Softwareentwicklungsprozesse Welche gibt es? Warum gibt es mehrere? Diskussion:

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

Inhaltsverzeichnis. xiii

Inhaltsverzeichnis. xiii Inhaltsverzeichnis 1 Einleitung... 1 1.1 Ausgangslage und Zielsetzung des Buches...2 1.2 Was ist Software-Architektur?...8 1.3 Leser-Leitfaden... 11 1.3.1 Buchaufbau... 11 1.3.2 Zielpublikum... 15 1.3.3

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 Lebendige Architekturen Markus Völter, voelter@acm.org, www.voelter.

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 Lebendige Architekturen Markus Völter, voelter@acm.org, www.voelter. Lebendige Architekturen Markus Völter, voelter@acm.org, www.voelter.de Dass die Architektur eines Softwaresystems maßgeblich über dessen Qualität und Wartbarkeit entscheidet ist wohlbekannt. Wie eine gute

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

Optimieren von Requirements Management & Engineering

Optimieren von Requirements Management & Engineering Xpert.press Optimieren von Requirements Management & Engineering Mit dem HOOD Capability Model Bearbeitet von Colin Hood, Rupert Wiebel 1. Auflage 2005. Buch. xii, 245 S. Hardcover ISBN 978 3 540 21178

Mehr

1 Einleitung. 1.1 Unser Ziel

1 Einleitung. 1.1 Unser Ziel 1 Dieses Buch wendet sich an alle, die sich für agile Softwareentwicklung interessieren. Einleitend möchten wir unser mit diesem Buch verbundenes Ziel, unseren Erfahrungshintergrund, das dem Buch zugrunde

Mehr

Diplomarbeit UNIVERSITÄT HAMBURG FACHBEREICH WIRTSCHAFTSWISSENSCHAFTEN INSTITUT FÜR WIRTSCHAFTSINFORMATIK

Diplomarbeit UNIVERSITÄT HAMBURG FACHBEREICH WIRTSCHAFTSWISSENSCHAFTEN INSTITUT FÜR WIRTSCHAFTSINFORMATIK UNIVERSITÄT HAMBURG FACHBEREICH WIRTSCHAFTSWISSENSCHAFTEN INSTITUT FÜR WIRTSCHAFTSINFORMATIK Diplomarbeit Analyse und Bewertung der Umsetzung des Model-Driven-Development-Ansatzes durch SAP NetWeaver Visual

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

Inhaltsverzeichnis. Gernot Starke. Effektive Softwarearchitekturen. Ein praktischer Leitfaden ISBN: 978-3-446-42728-0

Inhaltsverzeichnis. Gernot Starke. Effektive Softwarearchitekturen. Ein praktischer Leitfaden ISBN: 978-3-446-42728-0 sverzeichnis Gernot Starke Effektive Softwarearchitekturen Ein praktischer Leitfaden ISBN: 978-3-446-42728-0 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42728-0 sowie im

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

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

Modellgetriebene Softwareentwicklung

Modellgetriebene Softwareentwicklung Softwaretechnik Projekt Referat Modellgetriebene Softwareentwicklung Marcus Mews Marcus Mews 18. Januar 2008 Technische Universität Berlin Fachbereich Informatik Softwaretechnik Projekt INHALTSVERZEICHNIS

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

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

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

Einführung in die SWE

Einführung in die SWE Einführung in die SWE Inhalte der Vorlesung Allgemeine Ziele der Lehrveranstaltung Entwickeln einer kleinen Applikation nach professionellem Vorgehensmodell Erlernen des objektorientierten Herangehens

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

IT works. Agile und modellgetriebene Projekte. Voraussetzungen für ein erfolgreiches Zusammenspiel im verteilten Projektumfeld

IT works. Agile und modellgetriebene Projekte. Voraussetzungen für ein erfolgreiches Zusammenspiel im verteilten Projektumfeld Agile und modellgetriebene Voraussetzungen für ein erfolgreiches Zusammenspiel im verteilten Projektumfeld IT works. 17. GI-WIVM Workshop Stuttgart, 12./13.04.2010 Klaus Mairon 17. GI-WIVM Workshop Stuttgart,

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

Block R (Rahmen): SE Aktivitäten 21.10.04 2. Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung

Block R (Rahmen): SE Aktivitäten 21.10.04 2. Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung Block R (Rahmen): SE Aktivitäten 21.10.04 1 Vorlesung Methoden des Software Engineering Block R Rahmen Aktivitäten der Software-Entwicklung Martin Wirsing Einheit R.2, 21.10.2004 Block R (Rahmen): SE Aktivitäten

Mehr

Workflow-Management für CORBA-basierte Anwendungen

Workflow-Management für CORBA-basierte Anwendungen Wolfgang Schulze 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Workflow-Management für CORBA-basierte Anwendungen

Mehr

PM-Forum Augsburg. Thomas Müller-Zurlinden, PMP 18.05.2012. Kontakt: Info@QinS.de

PM-Forum Augsburg. Thomas Müller-Zurlinden, PMP 18.05.2012. Kontakt: Info@QinS.de PM-Forum Augsburg Thomas Müller-Zurlinden, PMP 18.05.2012 Kontakt: Info@QinS.de Einführung in die Konzepte der Software Product Line Organisation einer globalen SPL Entwicklung SPL und die Herausforderungen

Mehr

eclipse - Entwicklungsumgebung und mehr ETIS SS05

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

Mehr

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

Kompetenz in Enterprise Software Engineering

Kompetenz in Enterprise Software Engineering Kompetenz in Enterprise Software Engineering 02 Getting ideas done Die conplement AG als Technologiepartner renommierter Unternehmen erarbeitet zukunftsfähige Enterprise Software Lösungen auf Basis neuester

Mehr

Software Engineering mit Übungen. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering mit Übungen. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering mit Übungen Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering 2 Organisation Ort: Seminarraum 05.002, Spiegelgasse 5 Ablauf: 15:15 Vorlesung Prüfung: Schriftlich,

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

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA Hauptseminar Management von Softwaresystemen Techniken der System-Integration EAI, Middleware, SOA, CORBA Betreuerin: Referent: Ulrike Hammerschall Alexey Krivoborodov Agenda Motivation Arten der Verteilung

Mehr

3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process.

3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1996 Philippe Kruchten: Rational Unified Process Produkt der Firma Seit 2002 Teil des IBM Konzerns Objektorientiertes

Mehr

6 Architektur-Mittel (WOMIT)

6 Architektur-Mittel (WOMIT) 6 Architektur-Mittel (WOMIT) Abb. 6-1: Positionierung des Kapitels im Ordnungsrahmen. Dieses Kapitel befasst sich mit der WOMIT-Dimension des architektonischen Ordnungsrahmens, indem es grundlegende Konzepte

Mehr

Einleitung. Was ist das Wesen von Scrum? Die Ursprünge dieses Buches

Einleitung. Was ist das Wesen von Scrum? Die Ursprünge dieses Buches Dieses Buch beschreibt das Wesen von Scrum die Dinge, die Sie wissen müssen, wenn Sie Scrum erfolgreich einsetzen wollen, um innovative Produkte und Dienstleistungen bereitzustellen. Was ist das Wesen

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

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

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

1 Einleitung. Software Engineering. Vorgehensweisen

1 Einleitung. Software Engineering. Vorgehensweisen 1 Noch ein Buch über Software Engineering? Warum nicht! Wir folgen einem Prinzip, das zur Lösungsfindung in den verschiedensten Domänen Einzug gehalten hat: die Betrachtung aus verschiedenen Blickwinkeln.

Mehr

Referent: Alessandro Arrigo AAM1. Professor: Prof. Dr. Heindl. Furtwangen, 2.7.2009

Referent: Alessandro Arrigo AAM1. Professor: Prof. Dr. Heindl. Furtwangen, 2.7.2009 - Entwicklungsprozess - Referent: Alessandro Arrigo AAM1 Professor: Prof. Dr. Heindl Furtwangen, 2.7.2009 Agenda 1. Vorstellung des Autors 2. Das Buch 3. Inhalt des Kapitels 4. Verwendung in anderer Literatur

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

Whitepaper. Automatisierte Akzeptanztests mit FIT. Einleitung. Die Bedeutung von Akzeptanztests

Whitepaper. Automatisierte Akzeptanztests mit FIT. Einleitung. Die Bedeutung von Akzeptanztests Automatisierte Akzeptanztests mit FIT Einleitung Dieses beschreibt, wie man Tests aus Anwender-/Kundensicht mit dem Open-Source-Werkzeug FIT beschreibt und durchführt. Das ist für Kunden, Anwender und

Mehr

- Agile Programmierung -

- Agile Programmierung - Fachhochschule Dortmund Fachbereich Informatik SS 2004 Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Thema: - - Vortrag von Michael Pols Betreut durch: Prof. Dr. Frank Thiesing Übersicht

Mehr

CORBA. Systemprogrammierung WS 2006-2007

CORBA. Systemprogrammierung WS 2006-2007 CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA

Mehr

Prozessorientierte Integration von Anwendungssystemen WS 2015 FWP-Fach für Bachelor Wirtschaftsinformatik

Prozessorientierte Integration von Anwendungssystemen WS 2015 FWP-Fach für Bachelor Wirtschaftsinformatik Prozessorientierte Integration von Anwendungssystemen WS 2015 FWP-Fach für Bachelor Wirtschaftsinformatik Prof. Dr. Torsten Zimmer, Hochschule München Motivation für Integrationsplattformen Nach einer

Mehr

3. Vorgehensmodelle Software Engineering. Prof. Dr. Bernhard Humm Hochschule Darmstadt, 23. Oktober 2006

3. Vorgehensmodelle Software Engineering. Prof. Dr. Bernhard Humm Hochschule Darmstadt, 23. Oktober 2006 3. Vorgehensmodelle Software Engineering Prof. Dr. Bernhard Humm Hochschule Darmstadt, 23. Oktober 2006 Agenda Agenda Übersicht V-Modell Rational Unified Process Extreme Programming Fazit, Literatur, Kontrollfragen

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

Inhaltsübersicht. n Aufgabenstellung. n Lösungsüberblick. n Herausforderungen. n Entwicklung der Generatoren. n Zusammenfassung/Schlussfolgerungen

Inhaltsübersicht. n Aufgabenstellung. n Lösungsüberblick. n Herausforderungen. n Entwicklung der Generatoren. n Zusammenfassung/Schlussfolgerungen Dr. Christoph Niemann otris software AG Königswall 21 D-44137 Dortmund Tel. +49 (0)231 958069 0 www.otris.de Modellgetriebene Entwicklung eines WLAN-Management- Systems copyright by by otris software AG:

Mehr

Der Unified Process ist ein generischer Prozeß zur objektorientierten Software- Erstellung

Der Unified Process ist ein generischer Prozeß zur objektorientierten Software- Erstellung Unified Process Eine Einführung von Hannes Fischer Fischer Software Elfenstr. 64 70567 Stuttgart Deutschland Copyright 2000 Hannes Fischer Unified Process Wie wird heute gearbeitet? Der Unified Process

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

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

Software-Entwicklung

Software-Entwicklung Software-Entwicklung SEP 96 Geschichte der Programmierung Aufgaben von, Anforderungen an Programme mit der Zeit verändert 1 Programmierung über Lochkarten z.b. für Rechenaufgaben 2 maschinennahe Programmierung

Mehr

Guten Tag! CampusSource. Die CSE Integration Platform. CampusSource Engine. Christof Pohl Softwareentwicklung Medienzentrum Universität Dortmund

Guten Tag! CampusSource. Die CSE Integration Platform. CampusSource Engine. Christof Pohl Softwareentwicklung Medienzentrum Universität Dortmund Engine Die CSE Integration Platform Guten Tag! Christof Pohl Softwareentwicklung Medienzentrum Universität Dortmund Integriertes Informationsmanagement mit der Engine - A2A vs. EBI Folie 2 Integration

Mehr

Übungsaufgaben zum Software Engineering: Management

Übungsaufgaben zum Software Engineering: Management Übungsaufgaben zum Software Engineering: Management Grundbegriffe: Aufgabe 1: Aus welchen Disziplinen setzt sich das Software Engineering zusammen? a. Informatik b. Physik c. Psychologie d. Chemie e. Geologie

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

Markup-basiertes Spezifikationsund Anforderungsmanagement in agilen Softwareprojekten

Markup-basiertes Spezifikationsund Anforderungsmanagement in agilen Softwareprojekten Roman Roelofsen Prof. Dr. Stephan Wilczek Markup-basiertes Spezifikationsund Anforderungsmanagement in agilen Softwareprojekten Konferenz Software Engineering & Management 2015 Dresden 19.03.2015 3 Rollen

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

Klausur mit Lösungshinweisen zur Vorlesung Planung und Entwicklung von IuK-Systemen Sommersemester 2005 02. August 2005 Deckblatt Hinweise

Klausur mit Lösungshinweisen zur Vorlesung Planung und Entwicklung von IuK-Systemen Sommersemester 2005 02. August 2005 Deckblatt Hinweise Klausur mit Lösungshinweisen zur Vorlesung Planung und Entwicklung von IuK-Systemen Sommersemester 2005 02. August 2005 Deckblatt Hinweise Die Bearbeitungszeit der Klausur beträgt 90 Minuten. Es sind alle

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

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

Probeklausur. Lenz Belzner. January 26, 2015. Lenz Belzner Probeklausur January 26, 2015 1 / 16

Probeklausur. Lenz Belzner. January 26, 2015. Lenz Belzner Probeklausur January 26, 2015 1 / 16 Probeklausur Lenz Belzner January 26, 2015 Lenz Belzner Probeklausur January 26, 2015 1 / 16 Definieren Sie Software Engineering in Abgrenzung zu Individual Programming. Ingenieursdisziplin professionelle

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen

Mehr

Usability-Test für mobile Java-Anwendungen

Usability-Test für mobile Java-Anwendungen Usability-Test für mobile Java-Anwendungen Problemstellung / Abgrenzung Usability Engineering / Patterns Usability Test Tool-Kette Fazit Roland Petrasch Usability-Test für mobile Java-Anwendungen Problemstellung

Mehr

Inhalt. 3.1 Der inkrementelle Entwurf im Überblick... 13 3.2 Flache Aufwandskurve... 14 3.3 Qualitätskriterien für den inkrementellen Entwurf...

Inhalt. 3.1 Der inkrementelle Entwurf im Überblick... 13 3.2 Flache Aufwandskurve... 14 3.3 Qualitätskriterien für den inkrementellen Entwurf... ix 1 Einleitung 1 Roman Pichler Stefan Roock 1.1 Agile Softwarewicklung und Scrum............................ 1 1.2 Zielgruppe und Zielsetzung.................................. 2 1.3 Überblick über das

Mehr

Wirtschaftlich und wirksam: Entwicklungsprozesse auf Basis des Eclipse Process Frameworks

Wirtschaftlich und wirksam: Entwicklungsprozesse auf Basis des Eclipse Process Frameworks Wirtschaftlich und wirksam: Entwicklungsprozesse auf Basis des Eclipse Process Frameworks SE 2009 Kaiserslautern 04.03.2009 Rainer Singvogel Leiter Bereich Software-Technologie msg systems ag 1 Überblick

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Modellgetriebene Architektur - Grundlagen, Vor- und Nachteile, Erfahrungen - Uwe Kuehn Freie Universität Berlin

Modellgetriebene Architektur - Grundlagen, Vor- und Nachteile, Erfahrungen - Uwe Kuehn Freie Universität Berlin Modellgetriebene Architektur - Grundlagen, Vor- und Nachteile, Erfahrungen - Uwe Kuehn Freie Universität Berlin Seminar Ausgewählte Beiträge zum Softwareenineering, WS 2008/2009 Überblick Einführung Grundlagen

Mehr

XML in der betrieblichen Praxis

XML in der betrieblichen Praxis Klaus Turowski, Klement J. Fellner (Hrsg.) XML in der betrieblichen Praxis Standards, Möglichkeiten, Praxisbeispiele Ги dpunkt.verlag Inhaltsverzeichnis 1 XML/EDI-Standardisierung: Ein Überblick 1 1.1

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

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

Etablierung serviceorientierter Architekturen mit Web Services

Etablierung serviceorientierter Architekturen mit Web Services Etablierung serviceorientierter Architekturen mit Web Services Vorlesung im (Übersicht zu den Inhalten der Vorlesung) Somemrsemester 2013 1 Ziele und Abgrenzung 2 Allgemeine Lernziele Vermittlung von Basiskenntnissen

Mehr

Open Source IDE - eclipse ETIS SS04

Open Source IDE - eclipse ETIS SS04 Open Source IDE - eclipse ETIS SS04 Gliederung Motivation Geschichte Architektur Platform Runtime Eclipse Platform Java Development Tools (JDE) Plugin Development Environment (PDE) Zusammenfassung 2 Motivation

Mehr

Inhalt. 1 Einleitung 1. 2 Grundkonzepte 11. 3 Erfahrungen systematisch nutzen 39

Inhalt. 1 Einleitung 1. 2 Grundkonzepte 11. 3 Erfahrungen systematisch nutzen 39 xi 1 Einleitung 1 1.1 Softwarequalität betrifft viele................................ 1 1.2 Für wen dieses Buch gemacht ist.............................. 1 1.3 Was Sie von diesem Buch erwarten können......................

Mehr

Erweiterbare Programmiersprachen und DSLs

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

Mehr

Model Driven Software Development

Model Driven Software Development Model Driven Software Development Vergleich von Metametamodellen Marcel Hoyer 1von 19 Themenvorstellung Vergleich von Metametamodellen Was sind überhaupt Metametamodelle? Analyse und Vergleich existierender

Mehr