Inhalt | 6 |
Teil I Geschäftssysteme | 12 |
1 Einleitung | 14 |
1.1 Buchmodell | 14 |
1.2 Architektur und Entwurf | 18 |
1.3 Serviceorientierte Architektur | 22 |
1.4 Microservice-Architektur | 28 |
1.5 Domänengetriebener Entwurf | 34 |
1.6 Organisation und Kultur | 41 |
2 Servicemanagement | 48 |
2.1 Service Governance | 48 |
2.2 Servicekatalog | 50 |
2.3 Entwurfsstandard des Service | 55 |
2.4 Entwurfsstandard des Open Host | 62 |
2.5 Entwurfsstandard des Service Bus | 67 |
3 Systemqualität | 76 |
3.1 Qualitätsmodelle | 76 |
3.2 Qualitätsszenarien | 84 |
Teil II Wartbarkeit | 88 |
4 Einleitung | 90 |
4.1 Einführung in die Wartbarkeit | 90 |
5 Konzeptionelle Integrität | 96 |
5.1 Einführung in die Konzeptionelle Integrität | 96 |
5.2 Qualitätsszenarien | 100 |
5.3 Von der Allgemeinsprache | 101 |
5.4 Systemkontext erforschen | 104 |
5.5 Stakeholder Management | 107 |
5.6 Systemziele bestimmen | 110 |
5.7 Anforderungen erheben | 112 |
5.8 Anwendungsfälle | 116 |
5.9 Geschäftsmodelle implementieren | 121 |
5.10 Handshaking mit Implementation Proposals | 123 |
5.11 Das Conway-Manöver | 125 |
5.12 Prototyping | 127 |
6 Konsistenz | 130 |
6.1 Einführung in die Konsistenz | 130 |
6.2 Qualitätsszenarien | 132 |
6.3 Frameworks wählen | 133 |
6.4 Programmieren können | 136 |
6.5 Ergebnisse kontrollieren | 138 |
7 Testbarkeit | 142 |
7.1 Einführung in die Testbarkeit | 142 |
7.2 Qualitätsszenarien | 146 |
7.3 Testmanagement | 148 |
7.4 Sandboxing und Teststufen | 153 |
7.5 Test Harness entwickeln | 157 |
7.6 Test Doubles und Integration planen | 159 |
7.7 Testdaten im Griff haben | 162 |
7.8 Browsertests durchführen | 164 |
8 Analysierbarkeit | 166 |
8.1 Einführung in die Analysierbarkeit | 166 |
8.2 Qualitätsszenarien | 169 |
8.3 Dokumentation erstellen | 170 |
8.4 Diagramme zeichnen | 174 |
8.5 Statische Analyse | 177 |
9 Änderbarkeit | 182 |
9.1 Einführung in die Änderbarkeit | 182 |
9.2 Qualitätsszenarien | 186 |
9.3 Funktionspunkte analysieren | 187 |
9.4 Continuous Deployment | 191 |
9.5 Regeln für die Versionskontrolle | 195 |
9.6 Regeln für das Build-Management | 196 |
9.7 Regeln für das Release-Management | 198 |
9.8 Regeln für das Lizenzmanagement | 199 |
Teil III Performance | 202 |
10 Einleitung | 204 |
10.1 Einführung in die Performance | 204 |
10.2 Qualitätsszenarien | 208 |
11 Latenz | 210 |
11.1 Einführung in die Latenz | 210 |
11.2 Latenz messen | 213 |
11.3 Für HTTP/2 planen | 215 |
11.4 Content-Delivery-Netzwerke | 220 |
11.5 Latenzdiagramme zeichnen | 223 |
11.6 HTTP-Cache einsetzen | 225 |
12 Service-Performance | 228 |
12.1 Einführung in die Service-Performance | 228 |
12.2 Metriken definieren | 230 |
12.3 Culling | 237 |
12.4 Tuning | 238 |
12.5 Service-Cache abwägen | 241 |
13 Kapazität | 244 |
13.1 Einführung in die Kapazität | 244 |
13.2 Lastsimulation | 246 |
13.3 Speicherkapazität | 251 |
13.4 Bottlenecks aufspüren | 255 |
14 Skalierbarkeit | 258 |
14.1 Einführung in die Skalierbarkeit | 258 |
14.2 Geografische Skalierung | 261 |
14.3 Storage skalieren | 262 |
14.4 Asynchroner Entwurf | 267 |
14.5 Cookie Cutter und Microservices | 271 |
Teil IV Zuverlässigkeit | 272 |
15 Einleitung | 274 |
15.1 Einführung in die Zuverlässigkeit | 274 |
15.2 Fehlerquellen | 278 |
15.3 Qualitätsszenarien | 282 |
16 Verfügbarkeit | 284 |
16.1 Einführung in die Verfügbarkeit | 284 |
16.2 Berechnung der Verfügbarkeit | 288 |
16.3 Verfügbarkeit verbessern | 290 |
16.4 N+M-Kapazität | 291 |
16.5 Lastverteilung | 292 |
17 Herstellbarkeit | 294 |
17.1 Einführung in die Herstellbarkeit | 294 |
17.2 Automation-Service | 297 |
17.3 Bootstrapping- und Configuration-Service | 299 |
17.4 Backup und Restore | 302 |
18 Prüfbarkeit | 308 |
18.1 Einführung in Prüfbarkeit und Monitoring | 308 |
18.2 Architektur für Prüfbarkeit | 310 |
18.3 Architektur für Monitoring | 313 |
18.4 Alarm und Eskalation | 317 |
19 Resilienz | 320 |
19.1 Einführung in die Resilienz | 320 |
19.2 Throttling | 327 |
19.3 Vor DDoS schützen | 328 |
19.4 Canary Deployments | 330 |
19.5 Canary Requests | 331 |
19.6 Circuit Breaker | 333 |
19.7 Graceful Degradation | 335 |
Teil V Informationssicherheit | 338 |
20 Einleitung | 340 |
20.1 Einführung in die Informationssicherheit | 340 |
21 Identifizierung | 342 |
21.1 Einführung in die Identifizierung | 342 |
21.2 Cost per Identity | 344 |
21.3 Faktoren der Sicherheit | 345 |
21.4 Prozesse der Identifizierung | 346 |
21.5 Timer | 347 |
21.6 Ablauf der Identifizierung | 348 |
21.7 Protokolle | 349 |
21.8 Protokoll: Basic Auth | 351 |
21.9 Protokoll: Kerberos | 352 |
21.10 Protokoll: SAML | 353 |
21.11 Protokoll: OAuth | 357 |
21.12 Protokoll: OpenID | 358 |
22 Authentifizierung als Service | 360 |
22.1 Authentifizierung als Service beziehen | 360 |
22.2 Service: Azure Active Directory | 363 |
22.3 Service: SafeNet Authentication | 364 |
22.4 Service: Mobile ID | 365 |
23 Autorisierung | 368 |
23.1 Einleitung | 368 |
23.2 RBAC | 369 |
23.3 ABAC | 373 |
23.4 RBAC oder ABAC? | 375 |
23.5 RABAC und Microservices | 376 |
Literatur | 378 |
Stichwortverzeichnis | 378 |