Suchen und Finden
Service
Infos und Kontakt
Inhalt
6
Vorwort
12
Vorwort zur zweiten Auflage
13
Vorwort zur dritten Auflage
14
1 Einleitung
15
1.1 Software-Architekten
20
1.2 Effektiv, agil und pragmatisch
20
1.3 Wer sollte dieses Buch lesen?
23
1.4 Wegweiser durch das Buch
24
1.5 Webseite zum Buch
26
1.6 Weiterführende Literatur
26
1.7 Danksagung
26
2 Architektur und Architekten
29
2.1 Was ist Architektur?
30
2.2 Die Aufgaben von Software- Architekten
35
2.3 Wie entstehen Architekturen?
40
2.4 In welchem Kontext steht Architektur?
43
2.5 Weiterführende Literatur
46
3 Vorgehen bei der Architekturentwicklung
49
3.1 Informationen sammeln
52
3.2 Systemidee entwickeln
53
3.3 Was sind Einflussfaktoren und Randbedingungen?
59
3.4 Einflussfaktoren finden
63
3.5 Risiken identifizieren
70
3.6 Qualität explizt beschreiben
72
3.6.1 Qualitätsmerkmale von Software-Systemen
73
3.6.2 Szenarien konkretisieren Qualität
75
3.7 Lösungsstrategien entwickeln
81
3.7.1 Strategien gegen organisatorische Risiken
82
3.7.2 Strategien für hohe Performance
83
3.7.3 Strategien für Anpassbarkeit und hohe Flexibilität
85
3.7.4 Strategien für hohe Verfügbarkeit
87
3.8 Weiterführende Literatur
88
4 Architektursichten zur Kommunikation und Dokumentation
91
4.1 Architekten müssen kommunizieren und dokumentieren
92
4.2 Sichten
93
4.2.1 Sichten in der Software- Architektur
95
4.2.2 Vier Arten von Sichten
96
4.2.3 Entwurf der Sichten
99
4.3 Kontextsicht
101
4.3.1 Elemente der Kontextsicht
101
4.3.2 Notation der Kontextsicht
101
4.3.3 Entwurf der Kontextsicht
102
4.4 Bausteinsicht
103
4.4.1 Elemente der Bausteinsicht
105
4.4.2 Notation der Bausteinsicht
107
4.4.3 Entwurf der Bausteinsicht
107
4.5 Laufzeitsicht
108
4.5.1 Elemente der Laufzeitsicht
110
4.5.2 Notation der Laufzeitsicht
110
4.5.3 Entwurf der Laufzeitsicht
111
4.6 Verteilungssicht
112
4.6.1 Elemente der Verteilungssicht
112
4.6.2 Notation der Verteilungssicht
113
4.6.3 Entwurf der Verteilungssicht
113
4.7 Dokumentation von Schnittstellen
114
4.8 Datensicht
117
4.9 Typische Architekturdokumente
119
4.9.1 Zentrale Architekturbeschreibung
120
4.9.2 Architekturüberblick
123
4.9.3 Dokumentationsübersicht
123
4.9.4 Übersichtspräsentation der Architektur
124
4.9.5 Architekturtapete
124
4.10 Effektive Architekturdokumentation
125
4.10.1 Anforderungen an Architekturdokumentation
125
4.10.2 Regeln für gute Architekturdokumentation
127
4.11 Weiterführende Literatur
130
5 UML 2 für Architekten
133
5.1 Die Diagrammarten der UML 2
135
5.2 Die Bausteine von Architekturen
137
5.3 Schnittstellen
138
5.4 Die Bausteinsicht
139
5.5 Die Verteilungssicht
142
5.6 Die Laufzeitsicht
144
5.7 Darum UML
149
5.8 Weiterführende Literatur
150
6 Strukturentwurf, Architektur- und Designmuster
151
6.1 Von der Idee zur Struktur
153
6.1.1 Komplexität beherrschen
153
6.1.2 Zerlegen – aber wie?
154
6.1.3 Fachmodelle als Basis der Entwürfe
155
6.1.4 Die Fachdomäne strukturieren
158
6.2 Architekturmuster
159
6.2.1 Schichten (Layer)
159
6.2.2 Pipes & Filter
163
6.2.3 Weitere Architekturmuster
165
6.3 Heuristiken zum Entwurf
167
6.3.1 Das So-einfach-wie-möglich-Prinzip
167
6.3.2 Entwerfen Sie nach Verantwortlichkeiten
169
6.3.3 Konzentrieren Sie sich auf Schnittstellen
170
6.3.4 Berücksichtigen Sie Fehler
170
6.4 Optimieren von Abhängigkeiten
171
6.4.1 Streben Sie nach loser Kopplung
174
6.4.2 Hohe Kohäsion
174
6.4.3 Offen für Erweiterungen, geschlossen für Änderungen
174
6.4.4 Abhängigkeit nur von Abstraktionen
176
6.4.5 Abtrennung von Schnittstellen
177
6.4.6 Zyklische Abhängigkeiten vermeiden
179
6.4.7 Liskov-Substitutionsprinzip (LSP)
180
6.4.8 Dependency Injection (DI)
182
6.5 Entwurfsmuster
183
6.5.1 Entwurf mit Mustern
184
6.5.2 Adapter
184
6.5.3 Beobachter (Observer)
185
6.5.4 Dekorierer (Decorator)
187
6.5.5 Stellvertreter (Proxy)
187
6.5.6 Fassade
188
6.5.7 Zustand (State)
189
6.6 Entwurf, Test, Qualitätssicherung
190
6.7 Weiterführende Literatur
191
7 Typische Architekturaspekte
195
7.1 Persistenz
199
7.1.1 Motivation
199
7.1.2 Typische Probleme
200
7.1.3 Architekturmuster „Persistenzschicht&ldquo
202
7.1.4 Weitere Themen zu Persistenz
211
7.1.5 Zusammenhang mit anderen Aspekten
217
7.1.6 Weiterführende Literatur
218
7.2 Geschäftsregeln
219
7.2.1 Motivation
219
7.2.2 Funktionsweise von Regelmaschinen
222
7.2.3 Kriterien pro & kontra Regelmaschinen
224
7.2.4 Mögliche Probleme
225
7.2.5 Weiterführende Literatur
226
7.3 Integration
226
7.3.1 Motivation
226
7.3.2 Typische Probleme
228
7.3.3 Lösungskonzepte
229
7.3.4 Entwurfsmuster zur Integration
234
7.3.5 Konsequenzen und Risiken
237
7.3.6 Zusammenhang mit anderen Aspekten
239
7.3.7 Weiterführende Literatur
240
7.4 Verteilung
240
7.4.1 Motivation
240
7.4.2 Typische Probleme
241
7.4.3 Lösungskonzept
241
7.4.4 Konsequenzen und Risiken
243
7.4.5 Zusammenhang mit anderen Aspekten
244
7.4.6 Weiterführende Literatur
244
7.5 Kommunikation
244
7.5.1 Motivation
245
7.5.2 Entscheidungsalternativen
245
7.5.3 Grundbegriffe der Kommunikation
245
7.5.4 Weiterführende Literatur
251
7.6 Ablaufsteuerung grafischer Oberflächen
251
7.6.1 Model-View-Controller (MVC)
255
7.6.2 Weiterführende Literatur
261
7.7 Ergonomie grafischer Oberflächen
262
7.7.1 Arbeitsmetaphern
262
7.7.2 Interaktionsstile
264
7.7.3 Ergonomische Gestaltung
268
7.7.4 Heuristiken zur GUI-Gestaltung
270
7.7.5 Weiterführende Literatur
273
7.8 Internationalisierung
274
7.8.1 Globale Märkte erfordern neue Prozesse
275
7.8.2 Dimensionen der Internationalisierung
275
7.8.3 Lösungskonzepte
276
7.8.4 Weiterführende Literatur
283
7.9 Workflow-Management: Ablaufsteuerung im Großen
283
7.9.1 Zweck der Ablaufsteuerung
284
7.9.2 Lösungsansätze
286
7.9.3 Integration von Workflow-Systemen
289
7.9.4 Mächtigkeit von WMS
291
7.9.5 Weiterführende Literatur
292
7.10 Sicherheit
293
7.10.1 Motivation
293
7.10.2 Typische Probleme
293
7.10.3 Sicherheitsziele
294
7.10.4 Lösungskonzepte
296
7.10.5 Zusammenhang mit anderen Aspekten
301
7.10.6 Weiterführende Literatur
303
7.11 Protokollierung
303
7.11.1 Typische Probleme
304
7.11.2 Lösungskonzept
305
7.11.3 Zusammenhang mit anderen Aspekten
305
7.11.4 Weiterführende Literatur
306
7.12 Ausnahme- und Fehlerbehandlung
306
7.12.1 Motivation
306
7.12.2 Fehlerkategorien schaffen Klarheit
309
7.12.3 Muster zur Fehlerbehandlung
311
7.12.4 Mögliche Probleme
312
7.12.5 Zusammenhang mit anderen Aspekten
313
7.12.6 Weiterführende Literatur
314
8 Model Driven Architecture (MDA)
315
8.1 Architekten entwickeln Generierungsvorlagen
318
8.2 Modellierung
319
8.3 Modellbasiert entwickeln
321
8.4 Weiterführende Literatur
322
9 Service-Orientierte Architektur (SOA)
323
9.1 Was ist SOA?
324
9.2 So funktionieren Services
330
9.3 Was gehört (noch) zu SOA?
331
9.4 SOA und Software- Architektur
333
9.5 Weiterführende Literatur
334
10 Bewertung von Software-Architekturen
335
10.1 Was Sie an Architekturen bewerten können
339
10.2 Vorgehen bei der Bewertung
341
10.3 Weiterführende Literatur
347
11 Enterprise-IT-Architektur
349
11.1 Wozu Architekturebenen?
351
11.2 Aufgaben von Enterprise- Architekten
352
11.2.1 Management der Infrastrukturkosten
352
11.2.2 Management des IS-Portfolios
352
11.2.3 Definition von Referenzarchitekturen
354
11.2.4 Weitere Aufgaben
356
11.3 Weiterführende Literatur
358
12 Beispiel einer Architekturdokumentation
359
1 Einführung
359
2 Architekturtreiber
360
3 Einflussfaktoren
362
4 Kontextsicht
363
5 Bausteinsicht
364
5.1.1 Migration Controller
365
5.1.2 VSAM Reader
365
5.1.3 Segmentizer
366
5.1.4 Migrationsdatenbank
366
5.1.5 Packager
367
5.1.6 Rule Processor (und Packager)
367
5.1.7 Target System- Adapter
367
5.1.8 Migrierte Kontodaten in Zieldatenbank
368
5.2.1 VSAM-Reader Whitebox
368
5.2.2 Rule Processor Whitebox
369
6 Laufzeitsicht
371
7 Verteilungssicht
372
8 Entwurfsentscheidungen
373
9 Szenarien zur Architekturbewertung
373
10 Architekturaspekte
373
11 Projektaspekte
374
12 Glossar und Referenzen
374
13 Nachwort: Architektonien
375
13.1 In sechs Stationen um die (IT-)Welt
375
13.2 Ratschläge aus dem architektonischen Manifest
379
14 Literatur
385
Register
393
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.; Ersparnis im Vergleich zur Printversion


















