Service-orientierte Architektur: Modewort oder ernstzunehmende Entwicklung? Dieses Buch m?chte den Mythos entzaubern, indem es die grundlegenden Aspekte und Eigenschaften erl?utert, die hinter SOA und Web Services stecken. Service-orientierte Architekturen mit Web Services wurde unter Beachtung der Anforderungen von Architekten und Entwicklern geschrieben. Es bietet sowohl f?r IT-Experten und Manager als auch f?r Studenten eine fundierte Basis. Ziel ist es, bleibende Grundlagen zu vermitteln – es handelt sich daher nicht um ein Programmierhandbuch. M?chten Sie jedoch besser verstehen, was eine Service-orientierte Architektur ausmacht, wird Ihnen dieses Buch wertvolle „Dienste" leisten.
Author(s): Ingo Melzer
Edition: 4. Aufl.
Year: 2010
Language: German
Pages: 401
3827425492......Page 1
Service-orientierte
Architekturen
mit Web Services:
Konzepte – Standards – Praxis,
4. Auflage......Page 4
Zielsetzung......Page 7
Für wen ist dieses Buch?......Page 8
Zur vierten Auflage......Page 9
Für die erste Ausgabe......Page 11
Für die dritte Ausgabe......Page 13
Für die vierte Ausgabe......Page 14
Mario......Page 15
Geleitwort zur ersten Auflage......Page 16
Geleitwort zur zweiten Auflage......Page 17
Geleitwort zur vierten Auflage......Page 19
Inhaltsverzeichnis......Page 20
Abbildungsverzeichnis......Page 24
Listings......Page 27
Übersicht......Page 30
1.2 Intention......Page 31
1.3 Aufbau des Buches......Page 32
1.3.2 Web-Services-Grundlagen......Page 33
1.3.3 Weiterführende Web-Services-Themen......Page 34
1.3.4 Ausblick auf zukünftige Themen......Page 35
Übersicht......Page 37
2.2 Merkmale einer SOA......Page 38
2.2.1 Grundlegende Merkmale......Page 39
2.2.2 Komplexe Aspekte......Page 40
2.3 Definition einer SOA......Page 41
2.5 Dienste......Page 42
2.5.1 Dienstbeschreibung (Service Description)......Page 43
2.5.3 Dienstverzeichnis......Page 44
2.5.4 Dienstnutzer......Page 45
2.5.5 Aktionen......Page 46
2.6 Ein neues Programmierkonzept......Page 47
2.6.1 Das große und das kleine Bild......Page 48
2.6.2 Das Ende der Applikationen?......Page 49
2.7.1 Grundlegende Eigenschaften......Page 50
2.7.3 Integration basierend auf Standards......Page 52
2.7.4 Die Entwicklung von ESB in den letzten Jahren......Page 53
2.8 Einführung einer SOA......Page 54
2.8.1 Vorgehensweise......Page 55
2.8.2 Häufige Fehler bei Implementierung und Betrieb......Page 56
2.9 Ausblick......Page 58
2.10 Zusammenfassung......Page 59
Übersicht......Page 60
3.2.1 Säulen oder vertikal aufgestellte IT......Page 61
3.2.2 Balken oder horizontal aufgestellte IT......Page 63
3.3 Das nächste Komponentenmodell......Page 64
3.4 Flexibilität vs. Standardisierung......Page 65
3.4.2 Streben nach globalem Optimum......Page 66
3.5 Der SOA-Lebenszyklus......Page 67
3.5.2 Aller Anfang ist schwer......Page 68
3.6.1 Zuerst der Prozess......Page 69
3.6.2 Prozessund Architekturgremien......Page 70
3.6.3 Conways Gesetz......Page 71
3.7.2 SOA-Governance......Page 72
3.7.2.2 Abgrenzung von SOA-Governance......Page 73
3.7.3 Konsequenzen für Umsetzung......Page 74
3.7.3.1 Bestandteile und Aufgaben von SOA-Gover-nance......Page 75
3.7.3.2 IT-Governance-Organisation......Page 76
3.7.3.3 Aspekte der SOA-Governance......Page 77
3.7.4.1 Anforderungsmanagement......Page 78
3.7.4.3 Entwicklung und Freigabe......Page 79
3.7.5 Kontrollen......Page 80
Dezentrale Struktur erzwingt zentralen Architekten......Page 82
SOA macht die IT nicht billiger......Page 83
SOA wird nicht technisch scheitern......Page 84
Alles Meins oder die Psychologie von SOA......Page 85
3.9 Zusammenfassung......Page 86
Übersicht......Page 87
4.1 Einleitung......Page 88
4.2.1 Basiskomponenten......Page 89
4.2.2 Rollen und Aktionen......Page 90
4.2.3 Web Services Stack......Page 91
4.3 Architektur......Page 93
4.3.1 Nachrichten-Modell......Page 94
4.3.3 Ressourcen-Modell......Page 95
4.4 Standardisierungsgremien......Page 96
4.4.1 W3C – World Wide Web Consortium......Page 97
4.4.3 IETF......Page 98
4.4.5 WS-I......Page 99
4.5 CORBA......Page 100
Web Services benötigen keine Programmierung!......Page 101
Web Services sind per definitionem interoperabel!......Page 102
Web Services sind an HTTP gebunden!......Page 103
Web Services sind langsam!......Page 104
4.7 Zusammenfassung......Page 105
Übersicht......Page 108
5.2 Die SOAP-Spezifikationen......Page 109
5.3 Ein klein wenig Kommunikationstheorie......Page 110
5.4 Aufbau einer SOAP-Nachricht......Page 112
5.4.1 SOAP Header......Page 113
5.4.2 Der SOAP Body......Page 114
5.4.3 SOAP-Fehler......Page 116
5.5 Remote Procedure Call mit SOAP......Page 118
5.6 Codierung und Datentypen......Page 122
5.7 Transportprotokolle......Page 124
5.9 Nachrichten synchron und asynchron übermitteln......Page 127
5.10 WS-Addressing......Page 128
5.11.1 XML-RPC......Page 133
5.11.2 REST......Page 136
5.12 Zusammenfassung......Page 139
Übersicht......Page 140
6.1 Einleitung......Page 141
6.2 Abstrakte Beschreibung der Dienstfunktionen......Page 143
6.3 Konkrete Beschreibung des Endpunktes......Page 146
6.4 Austauschmuster für Nachrichten......Page 148
6.5 Modularisierung von WSDL-Beschreibungen......Page 149
6.5.2 Import......Page 150
6.6 Erweiterungsmechanismus......Page 151
6.7 Das WSDL-Komponentenmodell......Page 152
6.7.2 Interface......Page 154
6.7.2.1 Interface Operation......Page 155
6.7.3 Message Reference......Page 157
6.7.4 Fault Reference......Page 158
6.7.5.1 Binding Operation......Page 160
6.7.6 Service......Page 162
6.8 Zusammenfassung......Page 163
Übersicht......Page 165
7.2 Web Services Inspection Language......Page 166
7.2.1 Das WS-Inspection-Datenmodell......Page 167
7.2.2 Die Veröffentlichung von WS-Inspection-Doku-menten......Page 168
7.3.1 Das UDDI-Prinzip......Page 169
7.3.2 Technischer Überblick über UDDI......Page 171
7.3.3 UDDI-XML-Schema......Page 172
7.3.3.1 Die businessEntity-Datenstruktur......Page 173
7.3.3.2 Die businessService-Datenstruktur......Page 175
7.3.3.3 Die bindingTemplate-Datenstruktur......Page 177
7.3.3.4 Die tModel-Datenstruktur......Page 178
7.3.4 UDDI-API......Page 181
7.3.4.1 Die UDDI Inquiry API......Page 182
7.3.4.2 Die UDDI Publication API......Page 184
7.4 Nutzungsszenarien für UDDI......Page 185
7.4.1 Die UDDI Business Registry (UBR)......Page 186
7.4.2 UDDI als branchenspezifischer Marktplatz......Page 187
7.4.3 UDDI im Intranet......Page 188
7.4.4 UDDI in B2Bund EAI-Szenarien......Page 189
7.5.1 Verzeichnisdienste in Firmen......Page 190
7.5.2 Öffentliche Verzeichnisdienste......Page 191
7.6 Zusammenfassung......Page 192
Übersicht......Page 194
8.2 Einleitung......Page 195
8.3.1 Skalierbarkeit......Page 196
8.3.2 Performance......Page 198
8.3.3 Einflussfaktoren auf die Leistungsfähigkeit......Page 199
8.4 Quantitative Anforderungen......Page 202
8.4.2 Kenngrößen zum Durchsatz......Page 203
8.5 Architektur des Prototyps......Page 204
8.6 Messungen......Page 207
8.6.2 Ping-Messungen......Page 208
8.6.3 Transportprotokolle und Overhead......Page 210
8.6.4 Baum-Messungen......Page 217
8.7 Analyse der Messungen......Page 219
8.7.1 Ping-Messungen......Page 220
8.7.2 Baum-Messungen......Page 221
8.8 Skalierbarkeit......Page 222
8.9 Zusammenfassung......Page 225
Übersicht......Page 227
9.2 Sicherheitsaspekte......Page 228
Asymmetrische Verfahren zur Verschlüsselung......Page 230
Asymmetrische Verfahren zur digitalen Signatur......Page 231
9.4.1 Transportsicherheit......Page 233
9.4.2 TLS und der Sicherheitskontext......Page 234
9.4.3 Transportsicherheit, SSL und Web Services......Page 235
9.4.3.1 Asynchroner Aufruf von Diensten......Page 237
9.4.3.2 Zusammenfassung TLS/SSL......Page 238
9.4.4 Web-Services-spezifische Besonderheiten......Page 239
9.5 XML Digital Signatures......Page 240
9.6 XML Encryption......Page 244
9.7 WS-Security......Page 248
9.8.1 WS-Policy......Page 249
9.8.2 WS-Trust......Page 250
9.8.3 WS-SecureConversation......Page 251
9.8.4.2 WS-Federation......Page 252
9.9 Security Assertion Markup Language......Page 253
9.10 Ein Proxy für Web-Services-Sicherheit......Page 254
Abfangen von gesendeten-SOAP-Nachrichten......Page 255
Verarbeitung der eingehenden SOAP-Nachricht......Page 256
Integration in eine bestehende Infrastruktur......Page 257
9.11 Zusammenfassung......Page 258
Übersicht......Page 260
10.1.1 Grundlagen......Page 261
10.1.2 Web Services in Geschäftsprozessen......Page 264
10.1.3.1 Orchestrierung......Page 265
10.1.3.2 Choreographie......Page 266
10.1.4 Historie......Page 267
10.1.5 BPML und BPEL4WS......Page 268
10.2 BPEL4WS als Programmiersprache......Page 269
10.2.1 Basisstruktur und Programmiermodell......Page 270
10.2.2 Gültigkeitsbereich......Page 271
10.2.3.2 Variablen......Page 272
10.2.3.3 Wertzuweisungen......Page 273
10.2.4 Aktivitäten......Page 274
invoke......Page 275
scope und compensate......Page 278
receive und reply......Page 276
wait......Page 277
flow......Page 279
10.2.4.3 Linksemantik......Page 280
10.2.5.1 Partnerbeziehungen......Page 282
10.2.5.3 Deklarieren von Partnerbeziehungen......Page 284
10.2.5.4 Aufruf eines Web Service......Page 285
10.2.5.5 Aufruf eines Geschäftsprozesses......Page 286
10.2.5.6 Datenaustausch über Eigenschaften......Page 287
10.2.6.1 Ereignisse......Page 288
10.2.6.3 Nichtdeterministische Verzweigung......Page 289
10.2.7 Korrelationsmengen......Page 290
10.2.8.1 Fehlerbehandlung......Page 291
10.2.8.3 Auslösen der Kompensation......Page 292
10.3.2.1 Aktivitäten......Page 293
10.3.2.3 Ereignisbehandlung......Page 294
10.4 Zusammenfassung......Page 295
Übersicht......Page 296
11.1 Motivation......Page 297
11.2.1 ACID......Page 299
11.2.2 Verteilte Transaktionen und Zwei-Phasen-Com-mit......Page 300
11.2.3 Lang laufende Transaktionen......Page 304
11.3 Existierende Spezifikationen......Page 305
11.4.1 WS-Coordination......Page 307
11.4.1.3 Protocol Services......Page 309
11.4.2 WS-AtomicTransaction......Page 310
11.4.3 WS-BusinessActivity......Page 313
11.4.4 WS-TX – Zusammenfassung......Page 315
11.5 Folgerungen und Ausblick......Page 316
Übersicht......Page 318
12.1 Rechtliche Rahmenbedingungen für SOA......Page 319
12.1.2 Rechnungslegungsorientierte Anforderungen......Page 320
12.1.2.2 Journalund Kontenfunktion......Page 322
12.1.2.4 Aufbewahrungspflichten......Page 323
12.1.3 Sicherheit......Page 324
12.1.4 Internes Kontrollsystem......Page 325
12.1.6 Anforderungen für die Unternehmensprüfung......Page 326
12.1.7 Anforderungen an den Datenschutz......Page 328
12.1.8 Fazit......Page 329
12.2 Sicherstellung der Dienstequalität......Page 330
12.2.1 Grundlagen von Service Level Agreements......Page 331
12.2.2 Anforderungen an Service Level Agreements......Page 332
12.2.2.1 Anforderungen an den Inhalt......Page 333
12.2.2.2 Anforderungen an die Datenrepräsentation......Page 336
12.2.3 Existierende SLA-Sprachen......Page 337
12.2.4 Service Level Management in UDDI......Page 338
12.2.4.2 Verweis durch keyedReference......Page 339
12.3 Bezahlmodelle......Page 340
12.4 Zusammenfassung......Page 342
Übersicht......Page 343
13.3 Anwendungsfälle......Page 344
13.5 Anforderungen an nicht-dienstspezifische Appli-kationen......Page 345
13.6 Umsetzungsformen......Page 346
13.6.1 Unterstützung komplexer Anfragen......Page 347
13.6.1.1 Anwendungen für komplexe Anfragen......Page 349
13.6.2 Unterstützung von Automatisierung......Page 350
13.7.1 Ausblick......Page 351
13.9 Populäre Beispiele......Page 352
13.10 Das Beispiel WIDE......Page 353
13.11 Zusammenfassung......Page 354
Übersicht......Page 355
14.1.1 Kommunikation......Page 356
14.1.2 Transport von Bedeutung......Page 357
14.1.3 Uniform Resource Identifier......Page 358
14.1.4 Konzepte des Semantic Web......Page 359
14.1.5 Das Resource Description Framework......Page 360
14.1.6 RDF-Schema......Page 363
14.1.7 Web Ontology Language......Page 365
14.1.8 Semantic Web Services......Page 368
14.2.1 Einleitung......Page 369
14.2.2 SOA imGrid – Die Open Grid Services Architec-ture......Page 370
14.2.3 WSRF – Das Web Services Resource Framework......Page 371
14.2.4 Zusammenfassung......Page 374
14.3.1 Definition......Page 375
14.3.2 Arten von Clouds......Page 376
14.4 Zusammenfassung......Page 378
15 | Ausblick......Page 379
Literaturverzeichnis......Page 381
Abkürzungen......Page 391
Index......Page 395