Software-Entwurf mit UML 2 (eBook)
XV, 359 Seiten
Springer Berlin (Verlag)
978-3-540-30950-5 (ISBN)
Vorwort 6
Vorwort zur zweiten Auflage 8
Inhaltsverzeichnis 9
TEIL I UML als Entwurfssprache 15
1 Modellierung von Software-Systemen 16
1.1 Entstehung der UML 17
1.2 Zum Aufbau des Buches 19
1.3 Modelle, Sichten und Diagramme 21
1.4 Das statische Modell 25
1.5 Das dynamische Modell 26
2 Das Use-Case-Diagramm 29
2.1 Anwendungsfälle 30
2.2 Das Anwendungsfalldiagramm 32
2.3 Verfeinerung von Anwendungsfällen 33
2.4 Beziehungen in Use-Case-Diagrammen 34
2.5 Zusammenfassung 38
3 Das Aktivitätsdiagramm 40
3.1 Abläufe und Vorgänge 41
3.2 Aufteilung des Kontrollflusses 43
3.3 Zuteilung der Verantwortung 45
3.4 Objektfluss 45
3.5 Aktivitäten und Aktionen 48
3.6 Algorithmen 48
3.7 Zusammenfassung 51
4 Das Klassendiagramm 55
4.1 Klassen 56
4.2 Attribute und Operationen 57
4.3 Verantwortlichkeiten 60
4.4 Objekte 61
4.5 Verknüpfungen 63
4.6 Assoziationen 63
4.7 Generalisierung 77
4.8 Klassen und Schnittstellen 81
4.9 Geschachtelte Klassen 83
4.10 Schablonen 83
4.11 Erläuternder Text 84
4.12 Stereotypen 88
4.13 Zusammenfassung 89
5 Das Sequenzdiagramm 91
5.1 Nachrichtenaustausch 92
5.2 Aktivitätszonen 93
5.3 Asynchrone Nachrichten 95
5.4 Erzeugung und Zerstörung von Objekten 96
5.5 Regelung des Interaktionsablaufs 97
5.6 Zeitachse 103
5.7 Zusammenfassung 104
6 Weitere Interaktionsdiagramme 106
6.1 Das Kommunikationsdiagramm 107
6.2 Das Timing-Diagramm 113
6.3 Das Interaktionsübersichtsdiagramm 114
7 Das Zustandsdiagramm 116
7.1 Zustandsautomaten 117
7.2 Zustände und Ereignisse 118
7.3 Verzweigungen 120
7.4 Atomare und andauernde Aktivitäten 122
7.5 Hierarchische Zustandsdiagramme 124
7.6 Protokollzustandsautomaten 128
7.7 Zusammenfassung 129
8 Die Komponentendiagramme 131
8.1 Das Komponentendiagramm 132
8.2 Das Installationsdiagramm 136
8.3 Das Kompositionsdiagramm 137
8.4 Das Kooperationsdiagramm 141
9 Das Paketdiagramm 147
9.1 Pakete und Abhängigkeiten 148
9.2 Zusammenwirken von Paketen 150
9.3 Modelle 154
TEIL II Anwendung der UML 155
10 Ein Vorgehensmodell für den Software-Entwurf 156
10.1 Anforderungsermittlung 157
10.2 Analyse 161
10.3 Entwurf 167
10.4 Implementierung 172
10.5 Bemerkungen 174
10.6 Komponentenbasierte Implementierung 176
10.7 Modularisierung 177
10.8 Das Vorgehensmodell – kurz gefasst 180
10.9 Einsatzgebiete der Diagramme 181
11 UML und Java 184
11.1 Klassende.nitionen 186
11.2 Beziehungen zwischen Klassen 189
11.3 Methodenrümpfe 199
11.4 Pakete 205
11.5 Java Klassenbibliotheken 206
12 Entwurfsmuster 211
12.1 Einführung und Begriffsklärung 212
12.2 Das Kompositum-Muster 213
12.3 Das Beobachter-Muster 218
12.4 Das Adapter-Muster 223
12.5 Das Kommando-Prozessor-Muster 227
12.6 Das Status-Muster 229
12.7 Der Asynchrone Methodenaufruf 235
12.8 Software-Entwurf mit Entwurfsmustern 237
13 Fallstudie: Eine Tabellenkalkulation 240
13.1 Einführung 241
13.2 Anforderungsermittlung 243
13.3 Analyse und Entwurf 250
13.4 Implementierung in Java 279
TEIL III Formale Grundlagen der UML 281
14 Erweiterungsmechanismen 282
14.1 Präzisierung 283
14.2 Zusätzliche Information 283
14.3 Vereinbarung von Stereotypen 284
14.4 Profile 286
14.5 Die OCL 286
15 Das UML-Metamodell 292
15.1 Modell und Metamodell 293
15.2 Die 4-Schichten Architektur von UML 294
15.3 Zusammenfassung 296
TEIL IV Anhang 297
A Die UML Referenz 298
A.1 Gemeinsame Elemente aller Diagramme 299
A.2 Use-Case-Diagramm 300
A.3 Aktiviätsdiagramm 303
A.4 Klassendiagramm 310
A.5 Sequenzdiagramm 320
A.6 Weitere Interaktionsdiagramme 326
A.7 Zustandsdiagramm 333
A.8 Komponentendiagramme 340
A.9 Paketdiagramm 349
A.10 Die OCL-Syntax 352
A.11 Vorde.nierte Stereotypen 353
A.12 Vorde.nierte Bedingungen 354
B Inhalt der CD-ROM (nicht im eBook enthalten) 355
Literatur 357
Index 359
Kapitel 8 Die Komponentendiagramme (S. 121-122)
Komponenten beschreiben Teile der Software sowohl mit logisch inhaltlichen Aspekten als auch mit physisch vorhandenen Artefakten. Zu Letzteren gehören die Implementierung betre.ende Dokumente sowie Dateien während der Erstellung, Installation oder Wartung. Komponentendiagramme (Verdrahtungsdiagramme) verdeutlichen die Abhängigkeiten der Komponenten. Kompositionsdiagramme beschreiben die innere Struktur von Komponenten und strukturierten Klassen. Installationsdiagramme (Verteilungsdiagramme) veranschaulichen die Verteilung der Artefakte auf Rechnerknoten.
• Komponenten
• Strukturierte Klassen
• Kooperation
• Software-Architektur
• Verteilte Software
8.1 Das Komponentendiagramm
Der Traum, Software aus fertigen aber anpassbaren Komponenten zusammmenzustecken, ist so alt wie die Softwaretechnik selbst. Ein wichtiges Ziel bei der Modellierung ebenso wie bei der Programmierung ist das Scha.en von wiederverwendbaren Einheiten. Diese Einheiten sollten in sich abgeschlossen sein, um direkt eingesetzt werden zu können, andererseits aber auch anpassbar oder kon.gurierbar, um ein breiteres Einsatzspektrum abzudecken. In einem Komponenten-basierten Modell kommunizieren die Komponenten entlang der Verknüpfungen.
8.1.1 Logische Komponenten
Die einfachste Interpretation einer Komponente ist die eines Objekts, die Kommunikation erfolgt durch Methodenaufrufe. Dies kann in einem Rechnernetzwerk durchaus über Rechnergrenzen hinaus geschehen. Komponenten sollen aber eigentlich .exibler reagieren können als Objekte. Ein Mechanismus der Komponenten verbindet, zusammmensteckt oder verdrahtet, soll anschaulicher als durch eine Assoziation charakterisiert werden. Eine Komponente erfüllt einen Zweck, diesen Zweck kann sie durch Bereitstellen einer Schnittstelle dokumentieren, andererseits agiert die Komponente nicht völlig autark, sie ist auf die Anwesenheit anderer Komponenten angewiesen.
Da sie Schnittstellen bereitstellt und die Existenz weiterer Schnittstellen erfordert, besitzt eine Komponente wie eine Klasse Eigenschaften eines Datentyps. Die Betonung liegt hier auf der ausführungsnahen Sicht der Zusammenarbeit über Schnittstellen, weniger auf den Interna der Methoden. Ein sehr nahe liegendes Beispiel sind die Komponenten einer gra.schen Benutzerober.äche. Aber man kann mit Komponenten auch ein verteiltes System von unter Umständen heterogenen Rechnerarchitekturen modellieren, in dem die Kommunikation durch vorgefertigte Protokolle und Zwischensprachen erfolgt.
Wir wollen unser Monopoly Spiel mit Hilfe von Komponenten modellieren.
Beispiel (Monopoly) 68
Die einfachste Komponente, die auch sehr gut wiederverwendbar ist, ist ein Würfel.
Eine Komponente (als Typ) wird wie eine Klasse gezeichnet. Der Stereotyp component kann textuell oder als Komponentensymbol angegeben werden. Die zur Verfügung gestellte Schnittstelle wird in der Lollipop Notation (siehe Kapitel 4.8) notiert.
| Erscheint lt. Verlag | 2.9.2006 |
|---|---|
| Reihe/Serie | Xpert.press | Xpert.press |
| Zusatzinfo | XV, 359 S. |
| Verlagsort | Berlin |
| Sprache | deutsch |
| Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
| Schlagworte | Anforderung • Eingebettet • Entwurfsmuster • Java • Komponente • objektorientiert • objektorientierte Modellierung • Objektorientierte Software-Entwicklung • Referenz • Software-Engineering • Software-Entwurf • Spezifikation • UML • UML 2 • unified modeling language (UML) • Zustandsdiagramm |
| ISBN-10 | 3-540-30950-0 / 3540309500 |
| ISBN-13 | 978-3-540-30950-5 / 9783540309505 |
| Informationen gemäß Produktsicherheitsverordnung (GPSR) | |
| Haben Sie eine Frage zum Produkt? |
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich