| |
| Inhaltsverzeichnis |
| |
| 1 | Grundlagen | 1 |
| | 1.1 | Komplexität der Softwareentwicklung | 1 |
| | 1.2 | Geschichte und Bedeutung der OMG | 7 |
| | 1.3 | Methoden und Verfahren | 16 |
| | 1.4 | Model Driven Development | 22 |
| |
| 2 | UML | 25 |
| | 2.1 | Einführung | 25 |
| | 2.2 | Die statischen Modelle | 27 |
| | | 2.2.1 | Das Klassendiagramm | 28 |
| | | 2.2.2 | Das Objektdiagramm | 35 |
| | | 2.2.3 | Das Paketdiagramm | 36 |
| | | 2.2.4 | Das Kompositionsstrukturdiagramm | 37 |
| | | 2.2.5 | Das Komponentendiagramm | 39 |
| | | 2.2.6 | Das Verteilungsdiagramm | 41 |
| | 2.3 | Die dynamischen Modelle | 43 |
| | | 2.3.1 | Das Geschäftsprozessdiagramm | 43 |
| | | 2.3.2 | Das Zustandsdiagramm | 47 |
| | | 2.3.3 | Das Aktivitätsdiagramm | 50 |
| | | 2.3.4 | Das Sequenzdiagramm | 51 |
| | | 2.3.5 | Das Kommunikationsdiagramm | 53 |
| | | 2.3.6 | Das Timingdiagramm | 54 |
| | | 2.3.7 | Das Interaktionsübersichtsdiagramm | 55 |
| | | 2.3.8 | Die Diagrammarten in der Übersicht | 56 |
| |
| 3 | MDA | 59 |
| | 3.1 | Einführung | 59 |
| | 3.2 | Vision und Konzepte | 60 |
| | 3.3 | Die UML als Modellierungssprache | 65 |
| | 3.4 | Die Transformation von Modellen | 74 |
| | 3.5 | Erweiterte Konzepte der MDA | 77 |
| | 3.6 | OMG-Standards in der MDA | 79 |
| | 3.7 | MDA im Vergleich | 80 |
| |
| 4 | Der WebLandwirt: Vom Problem zum Modell | 83 |
| | 4.1 | Einführung | 83 |
| | 4.2 | Die Geschäftsprozesse | 87 |
| | | 4.2.1 | Die Geschäftsprozesse des Tierverwaltungssystems | 88 |
| | | 4.2.2 | Die Geschäftsprozesse des Medikamentenverwaltungssystems | 96 |
| | | 4.2.3 | Futtermittelverwaltung | 101 |
| | | 4.2.4 | Weitere Geschäftsprozesse | 102 |
| | 4.3 | Das Paketdiagramm | 103 |
| | 4.4 | Das Klassendiagramm | 104 |
| | | 4.4.1 | Das Paket "Kunde" | 104 |
| | | 4.4.2 | Das Paket "Lieferant" | 106 |
| | | 4.4.3 | Das Paket "Rechnung" | 106 |
| | | 4.4.4 | Das Paket "Land" | 107 |
| | | 4.4.5 | Das Paket "Anbau" | 108 |
| | | 4.4.6 | Das Paket "Dünger" | 110 |
| | | 4.4.7 | Das Paket "Pflanzenschutz" | 110 |
| | | 4.4.8 | Das Paket "Tier" | 111 |
| | | 4.4.9 | Das Paket "Futter" | 113 |
| | | 4.4.10 | Das Paket "Medikament" | 114 |
| | | 4.4.11 | Das Paket "Produkt" | 114 |
| | | 4.4.12 | Das Paket "Gebäude" | 116 |
| | | 4.4.13 | Das Zustandsdiagramm "Acker" | 117 |
| | | 4.4.14 | Das Sequenzdiagramm "Futterermittlung" | 118 |
| | | 4.4.15 | Werkzeuge zur Erstellung von UML-Diagrammen | 119 |
| | | 4.4.16 | Zusammenfassung | 124 |
| |
| 5 | Der WebLandwirt: Vom Modell zur Anwendung | 125 |
| | 5.1 | Einführung | 125 |
| | 5.2 | Erstellen des Platform Specific Model | 126 |
| | | 5.2.1 | Die Klasse Lieferant | 127 |
| | | 5.2.2 | Die Klasse Futtermittel | 128 |
| | | 5.2.3 | Die Klasse WebLandwirt-Service | 129 |
| | | 5.2.4 | Die Klasse WebLandwirt-Exception | 131 |
| | | 5.2.5 | Assoziationen und Abhängigkeiten | 131 |
| | | 5.2.6 | Datenklassen | 132 |
| | 5.3 | Erstellen des Klassendiagramms für die Webschicht | 134 |
| | | 5.3.1 | Die Webseiten | 134 |
| | | 5.3.2 | Die Aktionen | 135 |
| | | 5.3.3 | Die Formulare | 135 |
| | | 5.3.4 | Assoziationen und Abhängigkeiten | 137 |
| | 5.4 | Die Cartridges von Andro-MDA | 140 |
| | | 5.4.1 | Das Template für die Java Server Pages | 140 |
| | | 5.4.2 | Das Template für die Aktionen | 142 |
| | 5.5 | Generieren von Andro-MDA | 142 |
| | 5.6 | Einbinden des Projekts in die Entwicklungsumgebung Eclipse | 142 |
| | | 5.6.1 | Die Ausnahme: die Klasse WebLandwirt-Exception | 145 |
| | 5.7 | Generierung des Quelltextes | 145 |
| | 5.8 | Implementierung der fachlichen Logik | 147 |
| | | 5.8.1 | Implementierung der Webseiten | 147 |
| | | 5.8.2 | Implementierung der Aktionen | 150 |
| | | 5.8.3 | Implementierung der Service-Bean-Datei | 155 |
| | 5.9 | Festlegen der Spracheinträge | 162 |
| | 5.10 | Fertigstellen der Anwendung | 168 |
| | 5.11 | Generiert vs. programmiert | 172 |
| | 5.12 | MDA-Werkzeuge | 173 |
| | 5.13 | Zusammenfassung | 178 |
| |
| 6 | Potentiale der MDA | 181 |
| | 6.1 | Agile MDA und xUML | 182 |
| | 6.2 | MDA: Stand der Technik | 190 |
| | 6.3 | MDA: Zukünftige Entwicklungen | 192 |
| |
| Anhang | 197 |
| Literatur | 205 |
| Internetquellen | 206 |
| Index | 207 |