Wiederholungfragen UIT

Werbung
Wiederholungfragen UIT
EDI
1. Integration allgemein
Grundsätzlicher Ansatz einer Integrationslösung
 im Regelfall nachträgliches Aufsetzen auf der Basis bereits vorhandener Systeme, Systemen,
Informationen und Diensten
 im Gegensatz zu einer von vorneherein „auf der grünen Wiese“ konzipierten, vollständig
integrierten Gesamtlösung
 mit dem Ziel einer Einzelsystem-, Abteilungs- und/oder Unternehmens- übergreifenden
Lösung
 Enterprise Application Integration (EAI)
Wesentliche Phasen bei der Konzeption und Erstellung von Integrationslösungen
 Identifikation der Inhalte und ihrer Quellen à Analyse & Modellierung
 Festlegung einer Integrationsarchitektur
 Technische Integration
 Inhaltliche/ Fachliche Integration
 Visuelle Aufbereitung und Personalisierung
 Bereitstellung und Betrieb der Plattform
 Anpassung/ Weiterentwicklung
Grundsätzliches Architekturschema:
 Logische Middleware-Zwischenschicht zur konzeptuellen Informationsintegration
2. Welche Integrationskonflikte gibt es?
Hauptproblem „Heterogenität“
 unterschiedlichste Plattformen und Betriebssysteme
 proprietäre Altanwendungen („Legacy“)
 Zugriffsprotokolle und Standards
o HTTP
o ODBC, JDBC
o CORBA/IIOP, COM+
o ...
Wiederholungsfragen
UIT/SS 2009
1




Ergebnissyntax und Wertformate
o Datumsrepräsentation, Einheiten/Währungen, ...
Informationsmodelle/Schemata (Semantik)
o unterschiedliche Begriffswelten
o unterschiedliche Datenmodelle
Redundanz <-> Datenkonsistenz
Anfragemöglichkeiten & unterschiedliche Sichten
o volle Mächtigkeit von SQL
o navigierende Anfragen (HTML-Seiten)
o unterschiedliche Informationsportionierung
3. Wie schaut eine Integration aus?
Man hat verschiedene Anwendungen und diese Anwendungen muss man so gestalten, dass man
sie in ein System integrieren kann und sie dort miteinander kommunizieren können.
4. Was gibt es für Integrationskonzepte und welche Vor- bzw. Nachteile haben sie?
Grundsätzliche Lösungsansätze





„direkter Zugriff“: Integrationsebene greift unmittelbar auf die einzubindenden
Datenquellen zu
Anpassungen von Protokollen, Formaten, Schemata, Anfragesprachen etc. erfolgen direkt in
der Anwendung (z.B. Portallösung)
Nachteile
• jede neue Quelle und jede Änderung an bestehenden Quellen zieht eine Änderung
an der Portalanwendung nach sich
• schwer wartbare und beherrschbare Lösung
• keine Skalierbarkeit
„zentralisiert“: zentrale, integrierte Datenbasis, in die die Inhalte aller Quellen importiert
werden
• a priori Integration
„virtualisiert“: Nutzung der Systeme der Fremdanbieter für die Anfrageauswertung
(Durchreichen von Anfragen)
• integrierte Sicht ist physisch nicht vorhanden, sondern wird von Mediatoren
dynamisch bereitgestellt
• a posteriori Integration, Integration bei Bedarf
Zentralisierter Ansatz
Wiederholungsfragen
UIT/SS 2009
2
Verfahren für den Import in die Datenbank:
 Push
o Datenquellen liefern ihre Daten in einem bestimmten Austauschformat an
 zB.: UN/EDIFACT, XML, ebXML, etc.
o Einigung der kooperierenden Partner erforderlich
o Starker Eingriff in die Autonomie
 Pull
o Die Daten werden durch Nutzung dieser Dienste der Datenquellen « eingesammelt »
 Zusätzlicher Aspekt
o Effiziente Import-/Exportmechanismen für große Datenmengen
Vorteile zentralisierter Ansatz
 Vergleichsweise einfach zu realisieren
o Anwendungsentwicklung selbst unterscheidet sich nur wenig vom klassischen „EinQuellen-Prinzip“
 Hohe Performanz
o Direkte Datenbankzugriffe für Anfrageauswertung
o Entkopplung von u.U. langsamen, nur beschränkt verfügbaren externen Systemen
o Gezielte Optimierungen möglich
 Nachbearbeitung möglich
o Von den Fremdanbietern gelieferte Daten können vor der Nutzung geprüft und evtl.
„bereinigt“ werden
o Filterung/Aggregation von Daten leicht möglich
Nachteile zentralisierter Ansatz
Wiederholungsfragen
UIT/SS 2009
3
Virtualisierter Ansatz
Architektur
Beispiel:
Wiederholungsfragen
UIT/SS 2009
4
Zusammenfassung virtualisierter Ansatz:
 Aufteilung der Funktionalität auf unterschiedliche Schichten/Komponenten ist idealisiert
 In realen System ist die Aufgabenteilung zwischen Wrappern und Mediatoren meist
uneinheitlich
o Fette Wrapper: Hier werden zB große Teile der Anfrageübersetzung vom Wrapper
übernommen
o Dünne Wrapper: Hier ist der Wrapper nur für die Informationsextraktion und die
Transformation der Daten in das gemeinsame Datenmodell zuständig
 Auch Aufgaben der Facilitator –Schicht werden oft entweder in die Mediatoren oder eine
Portal-Anwendung verlagert
Vorteile:
 Aktualität
o Es wird immer auf den aktuellen Datenbestand zugegriffen
o Eine explizite Aktualisierung ist nicht erforderlich
 Ressourcenverbrauch
o Durch die Nutzung der Fremdsysteme ist der Ressourcenverbrauch auf Portalseite
niedriger
 Autonomie der Quellen
o Nutzt man ausschließlich vorhandene Zugänge (zB. www), so ist keinerlei Eingriff in
die Datenquellen erforderlich
Nachteile:
 Performanz
o Abhängig von den Fremdsystemen und der Netzwerkverbindung
o Keine gezielten Optimierungen möglich
o Abgleich der Datenmodelle schwierig  2 Grundansätze
 Globales Datenschema
 Integration der Schemata aller Quellen in ein globales Schema
 Einheitliche Sicht auf alle Quellen
 Muss mit jeder neuen / geänderten Quelle nachgezogen werden
 Domänenmodell
 Globales Schema als Sichten auf die Quellen definiert
o Mangelnde Kenntnisse über den Datenbestand
 Komfortfunktionen sind erschwert, da keine Analyse des vollständigen
Datenbestands möglich ist.
o Nachbereitungsoperationen
 Alle Transformationen der Daten müssen ausgeführt werden, wenn die
Anfrage ausgewertet wird
o Änderungen an den Datenquellen führen zu Problemen
Wiederholungsfragen
UIT/SS 2009
5
5. Warum spricht man von einem Integrationsspaghetti?
Weil alle Systeme eines Unternehmens miteinander verbunden sind
Todgesagte leben länger: Legacy - Anwendungen
 Merkmale bestehender Legacy-Systeme
o Oberflächen veraltet, zeichenorientiert
o Systeme proprietär, heterogen, wenig ausbaufähig
o Bearbeitung sequentiell, umständlich, zeitintensiv
o Kommunikation, Replikationen, Mehrfacheingaben, Medienbrüche
o Wartung aufwendig, kompliziert, teuer
 Warum Legacy-Anwendungen beibehalten
o Legacy-Systeme stellen einen hohen Investitionswert dar
o sind in den Kernprozessen verankert
o enthalten erprobte Basis-Algorithmen und Funktionalitäten
o sind sehr stabil, sicher und weitgehend fehlerfrei
 Probleme bei Legacy-Anwendungen
o Legacy-Systeme benötigen oft 75% des IT-Budgets für Wartung und Anpassung
o Die administrative Abläufe sind komplex und nicht aktuell dokumentiert
o Hohe Redundanz in den Tätigkeiten
o unterschiedliche Systeme zur Bewältigung einer Tätigkeit
Resultat: Viele Schnittstellen  „Integrationsspaghetti“
Heterogene Systemlandschaft mit vielen Schnittstellen im Unternehmen:
Wiederholungsfragen
UIT/SS 2009
6
Lösung über Schnittstellen

In der Praxis ist diese Anzahl von theoretisch möglichen Schnittstellen natürlich nicht
realistisch. Nicht jedes System muss mit jedem anderen System verbunden werden.
 Allerdings zeigt sich, dass im Laufe der Zeit eine große Anzahl von Schnittstellen zwischen
Systemen in den Unternehmen verwirklicht werden.
Zu Bedenken ist auch, dass zwischen 2 Systemen mehrere Schnittstellen anfallen können, wie z.B.
Materialstamm, Kundenstamm, Aufträge, etc. zwischen CRM und ERP.
6. Was versteht man unter einer Legacy-Anwendung? Nennen Sie einige typische
Merkmale.


Genereller Begriff für betriebswirtschaftliche Anwendungen
Typische Merkmale:
o Probleme mit neueren Datenformaten
o Wartung der Anwendungen ist teuer und langwierig
o Meist nicht mal graphische Oberfläche
Beispiele: laufen meist über Großrechner, es sind keine offenen Schnittstellen vorhanden, Wartung
ist sehr aufwändig und teuer  siehe Frage Integrationsspaghetti!!
EAI
7. Was versteht man unter dem Best-of-Bread Ansatz? Warum ist er meist eine
Motivation für EAI?



Man holt sich von überall die
besten Anbieter man wählt von
jedem System das beste aus und
das von mehreren Anbieter
EAI-Plattform schafft die
Zusammenarbeit über die
Anwendungsgrenzen hinweg
Haben Motivation für EAI, da sie
unterschiedliche Datenbanken
haben und miteinander integriert
werden müssen und
Prozessübergreifendes Arbeiten
trotzdem gewährleistet werden
Wiederholungsfragen
UIT/SS 2009
7
muss
8. Warum entscheidet sich ein Unternehmen zur Implementierung einer EAI
Plattform? Nennen Sie einige Gründe?
Gründe:
 Die Einführung neuer Applikationen und diese zu integrieren  Einführung eines neuen
Systems, neuer Applikationen; Beziehung
 Zusammenarbeit mit externen Partnern verbessern
 Unternehmenszusammenschlüsse
Es ermöglicht:
 Kommunikation zwischen eigen-entwickelten Anwendungen und Standard-SoftwareSystemen,
 Austausch von Geschäftsdaten in Format und Inhalt
 Auch Informationsaustausch mit externen Geschäftspartnern
 Automatische Verarbeitung der Daten in allen beteiligten Systemen.
Business Anforderungen an eine Integrationsplattform:
 Unternehmen wollen Ihre interne EDV nahtlos an die Geschäftsprozesse ohne Medienbrüche
anpassen.
 Unternehmen gehen Partnerschaften ein und harmonisieren die Geschäftsprozesse mit ihren
Partnern.
 Geschäftsprozesse über Unternehmensgrenzen hinweg wird von einer flexiblen und leicht
anpassungsfähigen EDV Architektur unterstützt.
 Kunden und Lieferanten werden direkt über Webanwendungen (Webshops, Portale,
Marktplätze,…) in die Geschäftsprozesse integriert.
 Alte Legacy Anwendungen sollen mit den neuen Möglichkeiten des Internet verbunden
werden.
 Neue Technologien wie Notebook Computer, PDA, Mobiltelefonie oder Call- Center (CTI =
Computer-Telephony-Integration) sollen mit den Unternehmensanwendungen
kommunizieren können.
 Übernahmen, Zusammenschlüsse von Unternehmen erfordert Integration unterschiedlicher
Systemwelten
 Best of Breed - Ansatz statt monolithische Anwendung
9. Was versteht man unter EAI? Was ist EDI? Was ist der Unterschied zwischen den
beiden Begriffen, was haben sie gemeinsam?


Was versteht man unter EAI
o Enterprise Application Integration
o Verbindungsstück für alle Unternehmenssysteme
o Abbildung von Prozessen über Anwendungen hinweg
Was versteht man unter EDI
o Electronic Data Interchange
o Datenaustausch zwischen Unternehmen, zB. Bestellungen, Rechnungen
o Es gibt eine Syntax dahinter
o Es handelt sich um strukturierten Datenaustausch (im Gegensatz zu OfficeDokumenten, die unstrukturiert sind
o EDIFACT: Standardisiert, genormtes Format; zB. Austausch einer Datei per EDI mit
dem EDIFACT Format
Wiederholungsfragen
UIT/SS 2009
8

Was ist der Unterschied zwischen den beiden Begriffen, was haben sie gemeinsam?
o EAI ist eine Anwendung, EDI nicht
o Gemeinsamkeit: EDI stellt oft die Basis für EDI und für den Datenaustausch dar
EAI – Begriffsbestimmung





Integration von Daten, Funktionen, Prozessen in heterogener Anwendungslandschaft
Beibehaltung der logischen Entkopplung der Anwendungen
Wahrung/ Erhöhung der Flexibilität
Realisierung der Integration auf Basis von Middleware
Nutzung standardisierter Schnittstellen und Austauschformate
EDI- Voraussetzungen für eine unternehmensübergreifende Zusammenarbeit








Effiziente Zusammenarbeit zwischen Unternehmen, aber auch zwischen Standorten eines
Unternehmens, erfordert eine intensive EDV-Vernetzung
Verschiedene Möglichkeiten und Technologien zur Vernetzung
Früher nutzten Firmen eigene Netzwerke zur Kommunikation – WAN (Wide Area Networks,
Standleitungen), diese Technologie ist aber teuer und daher nur großen Unternehmen
zugänglich
Es gibt auch Drittanbieter solcher Netzwerke – VAN (Value Added Network), wodurch die
Kosten gesenkt werden können, da nach tatsächlichem Bedarf verrechnet wird.
Diese privaten Netzwerke oder auch Extranets gibt es auch heute noch in vielen Branchen,
z.B. Giro-Netz oder SWIFT im Bankenbereich
Erst mit der Verbreitung des Internet und dessen Technologie ermöglichte neue
kostengünstige Lösungen für die Datenübertragung zwischen Unternehmen
Aber neben den Netzwerken ist auch der Aufbau (Struktur) der Daten wichtig, damit Sender
und Empfänger die Information richtig interpretieren können (=> Nachrichten)
So sind zur effizienten Kooperation nicht nur die Nachrichten normiert (Standards), sondern
auch die Abläufe und Abfolge der einzelnen Kommunikationsschritte – Syntax und Semantik
– Regeln. Man spricht auch von einer „Choreographie“ der Nachrichtenübermittlung
Wiederholungsfragen
UIT/SS 2009
9
EDI – Überblick






EDI … Electronic Data Interchange
Austausch von Informationen zwischen Unternehmen. Genauer: Nicht Austausch von
irgendwelchen Daten, sondern von strukturierten Geschäftsdokumenten oder auch
Nachrichten (Messages) genannt. Bsp: Einkaufsbestellung, Rechnung, aber auch
Bestandsinformationen, etc.
Eigene Software erforderlich, um EDI mit Kunden oder Lieferanten zu verwirklichen (EDI
Server, oft auch EDI Connector genannt)
Ziel: Schnellere, günstigere, sicherere und fehlerfreie Geschäftsabläufe
EDI ist die Voraussetzung für Optimierung der Zusammenarbeit zwischen Unternehmen mit
Methoden wie z.B. ECR
Warum EDI und nicht einfach Filetransfers?
EDI basiert auf genormten Nachrichtenformaten (Standardisierung) und EDI-Nachrichten
zusammen mit EDI-Software gewährleisten, dass
o Struktur und Aufbau der Nachricht Normen entspricht und daher allgemein
verstanden wird
o Die Nachricht zum richtigen Adressaten gesendet wird
o Dort auch ankommt
o Vom EDV-System des Geschäftspartners auch verstanden wird
EDI – Begriffsdefinition




EDI (Electronic Data Interchange) ist der elektronische Austausch strukturierter Daten mittels
festgelegter Nachrichtenstandards zwischen den Computeranwendungen von
Geschäftspartnern (wie z. B. Bestellungen, Rechnungen,…), die auf unterschiedlichen und
meist lokal getrennten Rechnern laufen.
Diese Computersysteme gehören in der Regel zu unterschiedlichen Unternehmen (z.B. Kunde
und Lieferant), sind von unterschiedlichen Herstellern und bedienen sich unterschiedlicher
Betriebssysteme.
EDI ist also die elektronische Kommunikation zwischen IT-Systemen ohne manuellen Eingriff.
Dieser automatisierte Nachrichtenaustausch ist die Basis für eine automatische
Weiterverarbeitung von Geschäftsvorfällen bzw. Geschäftsnachrichten
EDI verwendet erprobte und bestehende Techniken (Datenverarbeitung und
Telekommunikation)
Wiederholungsfragen
UIT/SS 2009
10

EDI kann mit einem PC, einem Modem und einem Telefonanschluß als technische
Voraussetzung sowie einer EDI-Software betrieben werden (Minimalanforderung).
Die Softwareausrüstung für EDI ist prinzipiell auf zwei Arten möglich. Entweder wird ein
bestehendes Anwendungsprogramm (z.B. Bestellprogramm), das selbst keine EDISchnittstelle aufweist, mit einer speziellen EDI-Software verbunden (Schnittstellenlösung,
üblich) oder ein Anwendungsprogramm verfügt selbst bereits über eine EDI-Funktion
(Ausnahme)
10. Was versteht man unter EDIFACT?





EDIFACT ist eine von den Vereinten Nationen geschaffene weltweite, branchenübergreifende
Norm zum Austausch formatierter, strukturierter Daten
Ergebnis sind sehr generische Standards mit breiten Anwendungsmöglichkeiten, da viele
Gruppen mit ihren eigenen spezifischen Geschäftsanforderungen an der Entwicklung
beteiligt sind  EDIFACT-Standardnachrichten sind oft sehr komplex, mit Funktionalitäten
überladen und schwierig zu verstehen
Subsetbildung von EDIFACT-Nachrichten bedeutet, daß all jene optionalen (Kann-)
Bestandteile wegfallen können, die in den EDIFACT-Nachrichten enthalten sind, um sehr
spezielle Anforderungen abzudecken.
Nur die wirklich benötigten (Muß-) Bestandteile des Standards und jene optionalen
Elemente, die für die Geschäftsanwendung als notwendig erachtet werden, bleiben im
Subset erhalten.
Beispiel: EANCOM von EAN International (primär im Handel)
11. Beschreiben Sie EDI Lösungsmöglichkeiten für unterschiedliche Datenvolumen.
12. Was versteht man unter Middle-Ware?
Logische Middleware-Zwischenschicht zur konzeptuellen Informationsintegration
Wiederholungsfragen
UIT/SS 2009
11
Datenbankorientierte Middleware
Message orientierte Middleware (MOM)
Wiederholungsfragen
UIT/SS 2009
12
Middleware – komponentenbasiert
Dienstorientierte Middleware (SOA)
Grundprinzip:
Wiederholungsfragen
UIT/SS 2009
13
Enterprise Application Integration
Anbieter:
Wiederholungsfragen
UIT/SS 2009
14
Wesentliches Ziel:
13. Nennen Sie die wesentlichen Funktionsbausteine einer EAI Lösung und erklären Sie
ihren Zweck









Konsole ist meist außerhalb
Transformation Engine übernimmt das Routing und beinhaltet transaktionale Services
konsistente Daten sind wichtig
Prozess Management
Management um die Plattform zu überwachen
Transformation Engine
Connectivity
o Übertragung Kommunikation Sicherheit
Ressource Adapter
o Schnittstellen werden umgesetzt (Protokollumwandlung); zB. SAP-Adapter
Development
o Mapping zwischen den Schemas
14. Wann ist der Einsatz einer EAI Lösung kaufmännisch sinnvoll, wenn man an die
hohen Initialkosten für Hardware, Software und Implementierung denkt?


Je mehr Anwendungen ich habe, desto sinnvoller wird das EAI
Es hängt aber auch sehr stark von der Strategie ab und von den Anwendungen die ich habe
15. Warum ist im Zusammenhang mit EAI von Geschäftsprozessen die Rede? Wie kann
EAI Geschäftsprozesse unterstützen?

EAI soll die Geschäftsprozesse bestmöglich unterstützen

Sehr oft hat man bereits eine Workflow engine dabei, um die Geschäftsprozesse bestmöglich
zu unterstützen
Wiederholungsfragen
UIT/SS 2009
15
16. Welche Hauptaufgaben führt eine EAI Software mit den empfangen Nachrichten
durch?




Daten werden empfangen
Daten werden in einheitliches Format verwandelt
Daten werden so transformiert, dass sie austauschbar werden (in das Format das der
Empfänger benötigt)
Daten werden in ein eigenes Format umgewandelt
17. Welche Daten (nenne einige Bsp) werden bei EDI von wem und an wen übertragen
und wie werden diese Daten aufgrund ihres Formates genannt?


Daten: Headerdaten, Message
Häufigste Nachrichten: Rechnungen, Bestellungen, Lieferavis
BizTalk
18. Was ist der BizTalk Server?




Messaging System für Enterprise Anwendungen
Herstellung einer Verbindung unterschiedlicher Entitäten über eine zentrale Stelle
Anwenden von Geschäftsregeln auf Lieferantendaten
….BizTalk Server ist eine Sammlung von Komponenten mit dem Ziel der Integration
19. Aus welchen Hauptkomponenten besteht der BizTalk Server?


Messagingkomponente, die die Kommunikation mit einer Vielzahl anderer Programme
gewährleistet. Basierend auf austauschbaren Adaptern für unterschiedliche
Kommunikationsarten kann die BizTalk Server 2006 Engine eine Vielzahl von Protokollen und
Dateiformaten unterstützen.
Unterstützung für das Erstellen von grafisch definierten Prozessen, die Orchestrierungen
genannt werden. Die auf Messaging Komponenten der BizTalk Server 2006 Engine
basierenden Orchestrierungen implementieren die Logik, die den Geschäftsprozess oder
Teile davon steuert.
Wiederholungsfragen
UIT/SS 2009
16
20. Was tut der BizTalk Server  Schema
Nachrichten senden, empfangen, …  Message wird über Receive Port empfangen, über Pipelines
ins xml Format verwandelt, …
Message Flow
Orchestration macht die Nachrichten einheitlich verwendbar, egal aus welchem System sie kommen.
Webservices
21. Bestandteile von Webservices
Zentrale Web Service Techniken
SOAP (Simple Object Access Protocol)
• Aufrufprotokoll für Dienstzugriff
• Unterstützt unterschiedliche Transportprotokolle: HTTP, SMTP
 WSDL (Web Service Description Language)
• Beschreibung von Web Services über Meta-Daten
 UDDI (Universal Description, Discovery and Integration)
• Dienstbeschreibung und Auffindung
• universeller Verzeichnisdienst für Dienstleistungen
 XML

22. Was ist ein Webservice?





Web Services sind
verteilte,
lose gekoppelte und …
wieder verwendbare Software-Komponenten, auf die …
über Standard-Internetprotokolle
programmtechnisch zugegriffen werden kann
Web Service-Techniken
 sollen auf der Grundlage standardisierter Internetprotokolle den entfernten Zugriff auf wohl
definierte, gekapselte Anwendungsdienste (Web Services) ermöglichen . . .
 und damit als universelle Basis für die dynamische Kopplung global verteilter
Anwendungssysteme bzw. entsprechender Dienste dienen
Web Services zur Vermarktung von Softwarekomponenten !?
Wiederholungsfragen
UIT/SS 2009
17
Aufgaben des Bereitstellers von Web Services
Konstruktion von Web Services
Publizieren / Registrieren von selbst beschreibenden Web Services
• Schnittstelle, funktionale Spezifikation
• Randbedingungen der Nutzung von Web Services (technisch, organisatorisch, qualitativ)
 Betreiben des Web Services




Aufgaben des Nutzers von Web Services
Finden geeigneter Web Services
Zugriff auf Web Services
Übergreifende Anforderungen
 Abwicklung von Prozessabläufen
 Transaktionsmanagement / Fehlerbehebung
SOA
23. Was versteht man unter SOA?
Eine serviceorientierte Architektur (SOA) beruht auf der losen Kopplung wiederverwendbarer
Softwarebausteine (Services), die bestimmte Standards erfüllen. Applikationen sollen sich dadurch an
geänderte Anforderungen leichter und schneller anpassen lassen. Eine SOA strukturiert
Anwendungssoftware, doch auch Infrastrukturprogramme, Entwicklungs- und
Verwaltungswerkzeuge müssen darauf abgestimmt sein. Die Verbindung zu den geschäftlichen
Konzepten und Abläufen ist dabei essenziell.
Gegenüber EAI ist SOA in hohem Maße standardisiert und bietet auch die technischen Möglichkeiten
zur Abbildung eines fachlichen Geschäftsprozesses. Auch die Einbindung bestehender Systeme im
Sinne von EAI lässt sich mit einem dienstorientierten Ansatz realisieren. Gerade bei der Integration
von Anwendungen aus Altsystemen (sogenannte Legacy-Anwendungen) über Services lässt sich eine
Flexibilisierung von monolithischen Systemen erreichen. Auf diese Weise kann auch eine schrittweise
Migration großer Legacy Systeme erfolgen. Unternehmen benötigen nicht den gefürchteten BigBang, sondern migrieren Schritt für Schritt.
Welche Dienste nutzbar sind und wie sie angesteuert werden kann durch einen Verzeichnisdienst wie
UDDI in Erfahrung gebracht werden.
Wiederholungsfragen
UIT/SS 2009
18
Merkmale einer SOA
Verteiltheit: Dienste können auf unterschiedlichen Servern ablaufen
Verzeichnisdienst: Um Dienste finden zu können, müssen diese in einem Verzeichnis registriert und
eschrieben sein.
Standards: Offene Standards gewährleisten eine Kommunikation der Dienste verschiedener
Dienstanbieter untereinander.
Lose Kopplung: Bei Bedarf dynamische Suche nach Diensten (zur Laufzeit) und Anbindung.
Sicherheit: Sicherheit (bei verteilten Diensten) darf nicht vernachlässigt werden.
Prozessorientiert: Die Kommunikation zwischen mehreren Diensten läuft zu einem Großteil autark.
Grobe Abläufe können im Voraus modelliert werden. Durch Ereignisse, z.B. die Interaktion eines
Menschen, wird der Prozessablauf gesteuert.
SOA Prinzip
Wiederholungsfragen
UIT/SS 2009
19
SOA ist nicht gleichzusetzen mit Web Services!
 derzeit herrscht ziemlich viel Konfusion und Begriffsverwirrung
 dazu Yefim V. Natis im Gartner Report 2003:
"Web services are about technology specifications, whereas SOA is a software design principle.
Notably, Web services' WSDL is an SOA- suitable interface definition standard: this is where Web
services and SOA fundamentally connect."
 also:
• SOA ist ein Architekturmuster
• Web Services sind Dienste, die über einen Satz von Standards implementiert sind
• Web Services stellen somit eine Form der Umsetzung von SOA dar
• Der Vorteil einer Implementierung von SOA mittelsWeb Services ist der Plattform-neutrale
Ansatz verbunden mit hoher Interoperabilität, da immer mehr Anbieter immer mehr Web
Services veröffentlichen
24. Was ist ein WSDL?













Fragen, zu denen ein allgemeiner „Vertrag“ über einen Web Service Auskunft geben sollte:
Welche Operationen bietet der Dienst an?
Welche Parameter haben die Operationen?
• Struktur der Aufrufnachricht
• Struktur des Ergebnisses
• Rückgriff auf XML Schema
Wo und wie kann ich einen Dienst erreichen?
• Adresse
• Informationen über das Protokoll
- z.B. SOAP, auch mehrere Protokolle!
- verwendetes Transportprotokoll: HTTP, SMTP etc.
Web Service Description Language WSDL zur allgemeinen Beschreibung eines Dienstes
aber: keine semantische Dienstbeschreibung
Ein Web Service kann auf Anforderung eine Liste seiner Dienstfunktionen liefern
Er muss darauf in einem „allgemein verständlichen“ Format antworten
Web Service Description Language WSDL ist ein Standard-Format für die Beschreibung von XMLbasierten Web Services
Dadurch wird insbesondere die „automatisierte Kommunikation“ zwischen verschiedenen Web
Services ermöglicht
Port Type
• Menge von Methoden (Operations)
• „Messages“ gemäß Signatur der Methoden
(Aufruf- und Rückgabe-Parameter, XSD-Typ-System)
Binding
• konkrete Transportprotokolle und Nachrichtenformate
• z.B. „SOAP over HTTP“
Service
• Menge von Ports (Endpoints)
• Port: Binding + Netzwerkadresse
Wiederholungsfragen
UIT/SS 2009
20
WSDL Aufbau
25. Was ist UDDI?





Universal Description, Discovery and Integration UDDI
Universelle, zentrale E-Business-Suchmaschine mit verteilter Konzeption (UDDI Business
Registry)
• Informationen über Unternehmen abrufen (Description)
• Geschäftspartner auffinden (Discovery)
• Geschäftsprozesse über Unternehmensgrenzen hinaus beschreiben und nutzbar machen
(Integration)
Entwicklung begann im Frühjahr 2000
• Ariba, IBM, Microsoft
• Erste Registry im Mai 2001
• Heute von hunderten Unternehmen unterstützt
Verzeichnisdienst für Web Services
Selbst wieder ein Web Service
Ziel: Registrierung standardisierter und spezifischer Dienste
Wiederholungsfragen
UIT/SS 2009
21
Universeller Verzeichnisdienst
white pages: Informationen über Unternehmen (Namensregister, Details,
Kontaktinformationen)
 yellow pages: »Branchenbuch« - Ordnung der Unternehmen nach Technologiecodes,
Branchentaxonomienv oder geographischemOrt
 green pages: Geschäftsmodell, technische Informationen über Nachrichtenformate, Protokolle
(=> WSDL), Informationen über Geschäftsprozesse
 service type registrations: Referenzen auf Beschreibungen des jeweiligen Typs


Informationen über das anbietende Unternehmen
auch Taxonomie nach Branche o.ä. möglich
Beschreibung des angebotenen Dienstes
nicht nur für Web Services
Kategorisierung des Dienstes (Thesauri) nach
• Branche
• Art der Dienstleistung
• geographischer Ort
 Technische Schnittstelle (z.B. WSDL, aber auch natürlich sprachliche Beschreibungen)


Protokoll zum Veröffentlichen und Nachschlagen von Dienstinformationen
 Basis: SOAP
 verteilte Registries

Zwei APIs:
Inquire API für die Anfrage + Publish API für die Registrierung
26. Was sind Vor- und Nachteile von SOA?










Vorteile
Flexibilität (z.B. durch einfache Austauschbarkeit von Services),
Wiederverwendbarkeit von Services (höhere Produktivität) und Vermeidung monolithischer
Systeme (Reduktion der Komplexität),
Hohe Dynamik: schnelle Anpassung an neue Gegebenheiten und verbesserte Möglichkeiten zur
Restrukturierung, da die Softwarekomponente frei von der Geschäftslogik ist und diese statt
dessen in der Orchestrierung der Services zu einem Geschäftsprozess enthalten ist,
Kostengünstige Integration zentralisierter Dienste wie PKIs, Single-Sign-On oder Identity
Management
Verbesserte Nachhaltigkeit der IT einer Institution oder eines Unternehmens,
Verteilte Architektur (auch Redundanz) und
Optimale Anpassung an den abzubildenden Geschäftsprozessen – somit auch leicht zugänglich
für Management statt nur für Techniker.
Geringere IT Kosten
Agilität
Nachteile
SOA unterliegt zurzeit dem Begriffsmissbrauch durch Marketingabteilungen, die ihren Kunden
durch Einführung von SOA die Lösung aller bisherigen Probleme versprechen. Wie unter
Abgrenzung aber besprochen, ist SOA weder eine Lösung für fachliche Probleme in
Unternehmen, noch gibt es eine "standardisierte", die man einem Unternehmen als solches
verkaufen könnte. Sind fachliche Probleme vorhanden, wird die Einführung von SOA aus
genannten Gründen mit höchster Wahrscheinlichkeit scheitern.
Wiederholungsfragen
UIT/SS 2009
22




SOA generiert durch die Arbeit, die in die Entkopplung von Diensten gesteckt werden muss,
einen höheren Aufwand als bisherige monolithische Programmstrukturen.
SOA erzeugt im Code wesentlich komplexere Abläufe, was das Logging und Debugging deutlich
erschwert. Ebenso sind Tests zwangsläufig wesentlich komplexer.
SOA setzt für die beteiligten Entwickler ein erhebliches Know-How voraus. Somit sind Entwickler
auch nicht so einfach ersetzbar und die Abhängigkeit der Unternehmen von einzelnen
Entwicklern steigt deutlich.
SOA wird zumeist mit Diensten realisiert, die in irgendeiner Form per XML miteinander
kommunizieren, was vom hohen Standardisierungsgrad und der Plattformunabhängigkeit dieser
Technologie herrührt. Da XML für die Analyse und Nutzung im Programmablauf beim aktuellen
Stand der Technik aber deutlich mehr Rechenzeit in Anspruch nimmt als ein herkömmlicher
Funktionsaufruf, entsteht hier ein Overhead, der selbstverständlich Kosten verursacht.
27. Was will man mit SOA erreichen?






Kostenreduktion durch höheren Automatisierungsgrad der Geschäftsprozesse
Integrierte Prozesse beschleunigen insgesamt das Business
Sichere und zuverlässige Prozesse vermindern das Geschäftsrisiko
Synchronisierte Prozesse erhöhen die Reaktionszeit
Flexibles Prozess-Management hilft bei der zeitnahen Umsetzung von strategischen Zielen
Intelligente Prozesse helfen, Probleme zu lösen bevor sie auftreten
28. Was ist eine sinnvolle Verwendung, ein sinnvoller Aufbau von SOA?
Integration Stack
Informationsebene
Metadaten Management
 Meta Data
 Ziel: Informationen über Daten/ Informationen zur Verfügung stellen
 Kategrorien:
• Descriptivemetadata
• Structural metadata
• Administrative metadata
• Rights management metadata
• Preservation metadata
 explizit machen in so genannten Repositories
• geschäftsprozessspezifische Anteile
• technische Anteile (Datentypen, Feldlängen etc.)
• semantische Anteile
• Mapping/ Zusammenhänge
Wiederholungsfragen
UIT/SS 2009
23

Herausforderungen
• standardisierte Vokabulare
• semantisch abgestimmte Inhalte (z.B. über Ontologien)
• Werkzeuge und Verfahren zum verteiltenManagement (ontology sharing, mapping,
merging…)
Serviceebene
 SOA
 Web Services
Portalsebene
 „Virtuelle kollaborative Applikation“
 kollaborativen Teams gemeinsame Information, Funktionalität und Wissen im Kontext ihrer
gemeinsamen Prozesse bereitstellen
 stellt auch Werkzeugfunktionalitäten zur Verfügung
 personalisierte, auf den jeweiligen Kontext bezogene Sichten auf aggregierte Dienste und
Inhalte
Prozessintegrationsebene
 Geschäftslogik kontextunabhängig modelliert und organisiert
 Controller-Funktion typischerweise über Koordinationstechniken nachgebildet
 View muss i. d. R. komplett neu gestaltet werden
Wiederholungsfragen
UIT/SS 2009
24
Herunterladen