Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur eBooks für mein Endgerät anzeigen:

 

Newsletter

Modellgetriebene Softwareentwicklung - MDA und MDSD in der Praxis

Modellgetriebene Softwareentwicklung - MDA und MDSD in der Praxis

von: Georg Pietrek, Jens Trompeter (Hrsg.)

entwickler.press, 2007

ISBN: 9783939084112, 256 Seiten

Format: PDF, OL

Mac OSX,Windows PC Apple iPad, Android Tablet PC's Online-Lesen für: Linux,Mac OSX,Windows PC

Preis: 33,90 EUR

Ersparnis: 6,00 EUR

  • Hibernate und das Java Persistence API
    Patentbewertung
    Selbstmotivation - FLOW - statt Streß oder Langeweile
    UML 2 - Zertifizierung: Test-Vorbereitung zum OMG Certified UML Professional (Fundamental)
    Java 5-Programmierhandbuch - Einstieg und professioneller Einsatz
    Fortgeschrittene Programmierung mit Java 5 - Generics, Annotations, Concurrency und Reflection – mit allen wesentlichen Neuerungen des J2SE 5.0
    Serviceorientiertes IT-Management
    Business Engineering
  • Spring und Hibernate - Eine praxisbezogene Einführung
    Rich-Client-Entwicklung mit Eclipse 3.1
    Patentmanagement - Innovation erfolgreich nutzen und schützen
    Java Server Faces - Ein Arbeitsbuch für die Praxis
    Cluster Computing
    Mobile Games - Spieleprogrammierung für Handys mit Java ME

     

     

     

 

Mehr zum Inhalt

Modellgetriebene Softwareentwicklung - MDA und MDSD in der Praxis


 

Inhaltsverzeichnis

6

1 Einleitung

10

1.1 Zielgruppe und Aufbau dieses Buches

10

1.1.1 IT-Verantwortliche, Manager und Projektleiter

10

1.1.2 Analysten und Software-Architekten

10

1.1.3 Software-Entwickler, Test- und Build-Manager

10

1.2 Motivation

11

1.3 Begriffe

12

1.3.1 Modellgetriebene Softwareentwicklung

12

1.3.2 Model Driven Architecture (MDA)

15

1.4 Vorteile im Überblick

16

1.5 Bedeutung von MDA in der Praxis

18

1.6 Einführung in das Beispiel

20

2 Etablierung von MDSD in der Softwareentwicklung

22

2.1 MDSD im objektorientierten Entwicklungsprozess

22

2.2 MDSD und Vorgehensmodelle

25

2.2.1 V-Modell XT

25

2.2.2 Rational Unified Process (RUP)

27

2.2.3 Generative Development Process (GDP)

29

2.2.4 Agile Softwareentwicklung

32

2.3 Projektvorgehen

38

2.3.1 Entwicklung des Generators

38

2.3.2 Parallele Entwicklung von Generator und Anwendung in der Praxis

41

3 Modellierung

46

3.1 Modellierung im Sinne der MDA

47

3.2 Abstraktion

47

3.3 Agile Modellierung

48

3.4 Modellierungssprachen

50

3.4.1 Definition von Modellierungssprachen

50

3.4.2 Beispiele für Modellierungssprachen

51

3.5 Metamodellierung

53

3.6 Domänenspezifische Modellierung

57

3.6.1 Domänenspezifische Sprachen

58

3.6.2 Erfolgsfaktor domänenspezifische Modellierung

60

3.6.3 DSLs im Projekt

61

3.6.4 Anhaltspunkte auf dem Weg zu einer geeigneten DSL

63

3.6.5 Frameworks zur Definition von Modellierungssprachen

65

3.7 Modellvalidierung

68

3.7.1 Validierungstechnologien

69

3.7.2 Beispiel

70

3.8 Modelltransformationen

71

3.8.1 Transformationsarten

72

3.8.2 Transformationstechnologien

72

3.9 Werkzeugunterstützung

73

3.9.1 Anforderungen an ein Modellierungswerkzeug

73

3.9.2 Werkzeuganpassung/-erstellung

76

4 Domänenspezifische Sprachen in der Praxis

86

4.1 WebML

86

4.1.1 Motivation

86

4.1.2 Modelle

88

4.1.3 Der WebML-Entwicklungsprozess

101

4.2 Der Entwurf einer DSL für Tests mit FIT und FitNesse

103

4.2.1 Einleitung

103

4.2.2 Was ist FIT?

104

4.2.3 Erarbeitung der DSL

112

5 Best Practices

120

5.1 Entwicklung von Cartridges

120

5.1.1 Was sind Generatoren?

120

5.1.2 Was sind Cartridges?

122

5.1.3 Aufbau einer Cartridge

123

5.1.4 Entwicklung einer Cartridge

126

5.1.5 Erweiterte Konzepte im openArchitectureWare Framework

128

5.1.6 Integration in den Entwicklungsprozess

133

5.1.7 Versionierung

134

5.1.8 Deployment und Distribution

135

5.1.9 Integration in die Entwicklungsumgebung

137

5.2 Integration in den Buildprozess

137

5.2.1 Build-Automatisierung / -Management

137

5.2.2 Ant

139

5.2.3 Maven

148

5.2.4 Continuous Integration

156

5.3 Dokumentation

160

5.3.1 Verschiedene Arten der Dokumentation

161

5.3.2 Technische Dokumentation

161

5.3.3 Architekturdokumentation

166

5.3.4 Generatordokumentation

173

5.4 Handgeschriebener Code

174

5.4.1 Bedarf für handgeschriebene Ergänzungen

174

5.4.2 Anforderungen für den Umgang mit generiertem Code

175

5.4.3 Ansatz 1: Getrennte Dateien

176

5.4.4 Ansatz 2: Geschützte Bereiche

178

5.4.5 Eine Zukunftsvision

181

5.5 Wiederverwendung und Austausch über die Fornax-Plattform

182

6 MDSD-Anwendungsbeispiel

184

6.1 Erstellung des Anwendungsmodells

185

6.1.1 Definition des Profils

185

6.1.2 Geschäftsobjektmodell

188

6.1.3 Business-Fassade

191

6.1.4 Präsentationsschicht

192

6.2 openArchitectureWare 4

193

6.2.1 Generator Workflow

194

6.2.2 Das openArchitectureWare Expressions Framework und das interne Typsystem

195

6.2.3 xPand

195

6.2.4 Xtend

197

6.2.5 Check

198

6.3 Entwicklungs- und Laufzeitumgebung des Beispielprojekts

199

6.3.1 Projektstruktur

199

6.3.2 Struktur des Projekts fornax-cartridges-uml2-ejb3- generator

201

6.3.3 Struktur des Projekts library.generator

201

6.4 Entwicklung der Generator Cartridge

202

6.4.1 Workflow

202

6.4.2 Extensions

204

6.4.3 Templates

205

6.5 Vom Generierungsergebnis zur lauffähigen Anwendung

231

6.5.1 Manuelle Anteile an den JSPs

231

6.5.2 Implementierung der Handler-Methoden

232

6.5.3 Implementierung der Session Bean

233

6.5.4 Weitere manuelle Implementierungen

235

6.6 Benutzung des Anwendungsbeispiels

235

6.6.1 Installationsanweisung

235

6.6.2 Starten der Applikation

235

6.6.3 Die Anwendung

239

7 Fazit und Ausblick

242

7.1 Zusammenfassung

242

7.2 Wo steht MDSD heute?

244

7.2.1 Modellierung – mehr als ein anerkanntes Hilfsmittel

244

7.2.2 Hype oder nicht?

245

7.3.1 Modellierung – mehr als UML

245

7.3.2 Weitere Anwendungsbereiche des modellgetriebenen Vorgehens

248

7.3.3 Trends bei MDSD-Werkzeugen und -Frameworks

250

Stichwortverzeichnis

252

Über die Autoren

256