VWL in Heidelberg

Einträge werden als ‘xml’ kategorisiert

Verteilte Systeme Wirtschaftsinformatik Weinmann SS 2006 Teil 1

April 11, 2007 · Kommentar schreiben

Wirthschaftsinformatik III : Computergestützte Planungsverfahren und Applikationssysteme

IS- Entwicklung:
- Geschäftsprozessmodellierung
- Requirements Engineering
- Systementwurf
- Implementierung
- Test
- Change Management

IS- Phasen:
- Konzeption
- Umsetzung
- Einführung

Software:
- Softwarearten:
o Systemsoftware
o Entwicklungssoftware
o Anwendungssoftware: Standard- und Individualsoftware
o Anwendungssoftware, Entwicklungssoftware, Systemsoftware
o Siehe Hansen, 2001, Wirtschaftsinformatik S. 151f
- Softwarekomponenten
o Definition
o Kategorien
 Infrastrukturkomponenten
 Anwendungskomponenten
 Branchenkomponenten
o Vorteile
- Open Source Software
o Definition
o Vorteil
o Beispiele

- Client Server Architektur
o 3 Arten
o Definition:
Unter der Client-Server-Architektur ( engl.: client-server architecture) versteht man eine kooperative Form der Informationsverarbeitung, bei der sich ergänzende Softwarekomponenten auf unterschiedliche Rechner aufgeteilt werden. Die verschiedenen Rechner sind über ein Rechnemetz verbunden. In einem solchen Netzwerk bieten einige Softwarekomponenten Dienste an (eng.: server), die von anderen Komponenten (engl.: clients) bei Bedarf in Anspruch genommen werden.
o von H. R: Hansen, G. Neumann im Buch Wirtschaftinformatik I (1978) im Text Planung, Entwicklung und Betrieb von Informationssystemen

3 Arten:
1. Client: Repäsentations/Oberfläche, Anwendungsfunktionen, Dezentrale Datenhaltung  Server: Zentrale Datenhaltung

2. Client: Repräsentation/Oberfläche, Anwendungsfunktionen  Server: Datenhaltung

3. Client: rerpäsentation/Oberfläche  Server: Anwendungsfunktionen, Datenhaltung

Verteilung der Schichten:
o Single Tired
o Two Tired
o Three Tired
o N-Tired

Verteilte Softwarekomponenten:
- Motivation
- Arten der Kommunikation
o Synchrone Kommunikation
o Asynchrone Kommunikation
- Middleware Techniken
o RPC (Remote Procedure Call)
o COBRA (Common Object Request Broker Architecture)

Das tier (engl. Schicht, Stufe)

- Das Tier kennzeichnet einen unabhängigen Prozessraum innerhalb einer verteilten Anwendung
- Die tier dient als Grundlage für n-tier Architekturen
- N.tier Architekturen sind eine Erweiterung /Verfeinerung des Client Server Architekturmodells
- Eine n tier Architektur legt fest, wie viele unterschiedliche Client Server Prozessräume es innerhalb einer Verteilten Anwendung gibt
- Das n gibt an, wie viele Prozessräume beteiligt sind
- Ein Prozessraum kann, muss jedoch nicht (!), einem physikalischen Rechner entwprechen (Nicht bei Grid, Pervasive usw…)
- Die Verwendung von n-tier Architekturen macht vor allem für Informationssysteme Sinn:
o Verteilung der Software zur Reduktion der Komplexität
o Interaktive Mensch Machine Schnittstelle
o Dezentriertes Vorgehen

- Das Tier Modell:
o Typischen Aufgabenstellungen in einem Informationssystem:
 Präsentation – Schnittstelle zum Anwender
 Anwendungslogik – Bearbeitung der Anfragen
 Datenhaltung – Speicherung der Daten in einer Datenbank
o Im Tier Modell wird jede dieser Aufgaben der Anwendungskomponente einer einzelnen Tiers zugeordnet
- Die Art der Zuordnung macht den entscheidenten Unterschied der verschiedenen n- Tier Architekturen
- Welche n-Tier Architekturen gibt es?
o 2 Tier
o 3 Tier
o 4 und mehr Tier Architekturen

- 2 Tier Architektur
o Das Modell unterstützt 2 Tier: Client und Server
 Zuordnung von Aufgaben zu Tiers:
• Präsentation – Client Tier
• Anwendungslogik – Client Tier und/oder Server Tier
• Datenhaltung – Server Tier
o Die Verteilung der Anwendungslogik auf Client und Server Tier kann variieren

- erstes und ältestes Verteilungsmodell
- Wird häufig im Zusammenhang mit stored Procedures und 4gl eingesetzt:
o 4gl = fourth language generation
 Unterstützt direkt Sprachelemente zum zugriff auf die Datenbank
 Stored Procedures sind vordefinierte SQL Statements, die in der Datenbank abgelegt und zur Laufzeit aufgerufen werden
- Vorteile:
o Einfach und schnell umzusetzen
o Performant
- Probleme:
o Schwer wartbar
o Schwer skalierbar
o Software Update Problem

3 Tier Architekturen

- Das Modell unterstützt 3 Tiers:
o Client – Tier
o Middle – Tier
o Server – Tier
- Zurodnung von Aufgaben zu Tiers:
o Präsentation  Client Tier
o Anwendungslogik  Middle Tier
o Datenhaltung  Server Tier
- Ist das Standardverteilungsmodell für einfache Webanwendungen:
o Client Tier = Browser zur Anzeige
o Middle Tier = Webserver mit Servlets/ASP/Anwendung
o Server – Tier

4- Tier und mehr Tier Architekturen

- Unterschied zur 3-Tier Architekturen: Die anwendungslogik auf der Middle Tier wird auf mehrere Tiers verteilt
- Motivation:
o Minimierung der Komplexitiät (Divide and Conquer)
o Besserer Schutz einzelner Anwendungsteile
o Verwendung mehrerer Anwendungsprozesse (Webserver, Application Server)
o Viele verteilte Informationssysteme liegen auf 4 Tier und mehr Tier Architekturen verteilt vor

- Eine typische 4 Tier Web-Anwednung
o Webclients  Firewall – SMZ/Webserver  Firewall – Webserver (Tier 2), Anwendungsserver (Tier 3)– Datenbankserver (Tier 4)

Ultra-Thin Client /Thin – Client / Fat-Client Architekturen

- Thin – und Fat Client Architekturen sind Verfeinerungsmodelle für die Zuordnung der Anwendungslogik
o Ultra Thin Client Architekturen: Die Präsentation auf der Client Tier beschränkt sich auf reine Anzeige von Dialogen
o Präsentationskomponente ist ein Browser
o Thin – Client- Architekturen: Die Präsentation auf der Client- Tier beschränkt sich auf Anzeige von Dialogen und die Aufbereitung der Daten zur Anzeige
o Fat-Client Architekturen: Teile der Anwendungslogik liegen zusammen mit der Präsentation auf der Client Tier

- Ultra Thin Client Architekturen sind ausschließlich bei 3 und mehr Tier Architekturen möglich
- Thin und Fat LCient Architekturen sind bei allen n-Tier Architekturen möglich
- In der Regel sind 2 tier Architekturen FAT Client Architekturen

Was ist EAI?
- EAI = Enterprise Application Intergration
- Konglomerat an Konzepten und Technologien, die in ihrer Gesamtheit die Integration vollständiger Anwendungen unterstützen
- Ziel: Integration einfacher Anwendungen zu komplexen neuen Anwendungen (Anwendungsintegration)

Abgrenzung zu Middleware und verteilten Anwendungen
- Kommunikation zwischen vollständigen Anwendungen, nicht innerhlab einer verteilten Anwendung
- Kopplungsgrad der Anwendungen eher gering (bei Middleware und verteilten Systemen eher hoch)
- Unterschiedliche Technologien wahrscheinlich (bei Middleware und verteilten Systemen eher weniger)
- Middlewaretechnologien eignen sich auch zur Anwendungsintegration, sie decken jedoch bei weitem nicht alle Anforderungen ab.
- Hierzu sind spezielle EAI Werkzeuge sowie Konzepte notwendig
- EAI ist nicht Thema der Vorlesung, wird jedoch immer wieder eine Rolle am Rande spielen

 Weiterführende Literatur empfohlen für Verteiluingen, Client Server, EAI

Übungsaufgaben

Vorlesungsagenda:
- Grundlagen kommunikationsorientierter Middleware
o Programmiermodelle
 Remote Procedure Call
 Remote Methood Invocation
 Nachrichtenorientierte Middleware
o Middleware Technologien
 SUN RP
 Java RMI
 Web services
 Nachtichtenorientierte Middleware

Grundlagen anwendungsorientierter Middleware

Ein Rückblick: Webanwendungen der 1. Generation:
Html Seiten
- Am Webserver liegen statische html Seiten
- werden über http in den Browser geladden
- ca. Mitte/Ende der 80er Jahre
- Mensch – Maschine Kommunikation

Webanwendungen der 2.Generation: dynamische HTML Seiten, CGI, Servlets

- Webseiten werden dynamisch (abhängig von Anfrageergebnissen) aufgebaut. Zugriff auf Daten ist möglich
Beispiele für Technologien:
- CGI (Common Gateway Interface); Prozessbasierende Bearbeitung von http Requests über Skripten (Perl, C)
- Servlets/JSP; threadbasierte Bearbeitung von http-Requests (nur Java)
- Mensch –Maschine Kommunikation

Webanwendungen der 3.Generation: Einführung von 4-und mehr Tier Architekturen

- Erweiterung der dynamischen Webseiten um Funktionalität im Anwendungsserver
- Anwendungsserver sind Laufzeitumgebungen auf der Middle Tier
- Der Webserver leitet die Aufrufe an den Anwendungsserver weiter
o Bearbeitet die Request
o Schickt Ergebnisse an den Webserver zurück
o Ergebnisse werden in http Response verpackt und an den Browser zurückgeschickt
- Vorteile: Skalierbarkeit
- Mensch Maschine Kommunikation

Webanwendungen der 4.Generation: Web Services
o Anwendungen(auf Webservern) kommunizieren unabhängig vom Anwender
o Vision Automatisierung
 Anwendungen suchen sich automatisch Dienste im Web, die sie zur Bearbeitung einer Anfrage benötigen.
 Die Kommunikation bleibt transparent
 Maschine Maschine Kommunikation
Browser- webserver –xml/Web – Webserver – AS – DB
Was sind Web Services?

- Ermöglichen webbasierte RPCs
- Sind einer der Hypes der letzten Jahre
- Sind eine sehr junge Technologie (kamen ca. 2000 auf im Zusammenhang mit MS .net)
- Sind nichtsdestotrotz eine vielversprechende Technologie der Zukunft
- Die Weiterentwicklung der Standards rund um Web Services wird Hauptsächlich vom W3C vorangetrieben

Ein visionäres Beispiel …
Clientanwendung – Internet – ReiseService
 HotelService (Webservices)
 Flugbuchungsservice (Webservice)
 Autobuchungsservice (Webservice)

Die Basiskomponenten von WebServices
- XML (extended MarkupLanguage): Erweiterbares Textformat für den Austuasch von strukturierten Daten
- SOAP (Simple Object Access Protocol): Realisiert Entfernten Prozedurabruf (RPC), Transportiert XML Nachrichten beispielsweise über http
- WSDL: web Service Description Language: XML Notation zur Beschribung von web Services
- UDDI: Universal Description, Discovery and Intergration: Verzeichnisdiesnt zur Veröffentlichung von WebServices

XML:
- Bietet die Möglichkeit komplexe Datenstrukturen innerhalb eines Dokuments darzustellen
- Die Darstellung erfolgt als Text mit Angabe des verwendeten Zeichensatzes (z.B. UTF-8)
- Ist beliebig zwischen Systemen und Plattformen austauschbar
- Breite Industrieunterstützung. Viele Werkzeuge arbeiten mit XML
- Viele Open Source Werkzeuge zum Lesen und zur Manipulation von XML Dateien stehen zur vErfügung

Struktur eines XMl Dokuments

]>

Sehr geehrte/r &Kunde;,

Hier steht irgendetwas. Verlieren Sie keine Zeit, liebe/r &Kunde;!

Im Kopf stehen die Version der vewendeten XML Spezifikation und der benutze Zeichensatz
Danach folgt der Datenbereich. Er enthält Daten in strukturierter Form

S.2 der Vorlesung Webservices

Kategorien: SOA · client server · dr dieter weinmann · sommer 2006 · verteilte systeme · web 2.0 · wirtschaftsinformatik · xml

Verteilte Systeme Wirtschaftsinformatik Weinmann SS 2006

April 11, 2007 · Kommentar schreiben

Peer to Peer Systeme
P2P- Kommunikationssystem bei dem jedem

Verteilte Systeme:
Def:
- Unter einem verteilten System versteht man ein zusammenhängendes Rechnersystem, dass aus einer Menge unabhängiger kooperierender Rechner besteht, die über ein Netzwerk verbunden sind.
- aus Sicht des Anwenders erscheint das verteilte System als ein gemeinsames System.
- Serverprogramme, Klientprogramme, die Dienste in Anspruch nehmen.

Transparenz

-wichtige Forderung!, meint eher unsichtbar
- Orts Transparenz
- Fehlertransparenz
- Zeitransparenz

Schnittstellenbeschreibungssprache
- syntaktisch vollständig
- implementierungsneutral
- interoperabel
Interoperabilität und Portabilität
- zb. Java, das leicht portiert werden kann
- JavaVM

Skalierbarkeit:
- die Leitungsfähigkeit eines Systems kann bei höheren Anforderungen schrittweise erweitert werden.
- Erhöhung der Arbeitsteiligkeit
- Replikation
- Asynchronität
- verteilte Systeme sind Verwaltungsintensiver, da sie über viele Teilsysteme bestehen

Robustheit
- partielles Versagen
- vollständiges Versagen
- Fehlertoleranz
Kommunikation zwischen verteilten Systemen:
- Adressierung
- Blockierung
o Synchroner oder asynchroner Datenverkehr
- Puffering
- Kommunikationsmuster
o Mitteilung
-  Mitteilungs- oder auftragsorientierte Kommunikation

Fehlersemantik

Architektur von verteilten Systemen:
- Schichten und Stufen –> layer und tier
- 1-4 tier architecture
- Mit Präsentationsschicht, Anwendungsschicht, Datenschicht
- Ab 3 tier, Middleware
- 4 tier mit Klient: Webbrowser  Präsentationsschicht: Webserver , html Filter,  middleware: Anwendungsschicht Datenschicht
Schichten zur Reduktion der Komplexität
Stufen bezeichnen verteilte Komponenten, müssen über einen Kommunikationsdienst verbunden sein, wenn sie auf verteilten Rechnern liegen

1 Stufe: Großrechner
2 Stufen: Client Server
- client Server, kann geteilte oder serverbasierende Anwendungslogik haben

3 Stufen: wohl am weitesten verbreitet
- passiver Server mit zentraler Datenhaltung
Datenbankserver – Webserver – Klientprogramm

N tier architecture:
- Erweiterung durch spezialisierte Server z.B. für workfolw Kooperation, oder Web service Integration

Middleware:

Def.:
- Middleware bildet die kommunikationstechnische Infrastruktur zur Entwicklung verteilter Anwendungen und ermöglicht dem Entwickler dadurch Konzentration auf die Umsetzung der Anwendungslogik.
- Entsprechend werden allgemeine Softwarekomponenten, die von konkreten Realisierungen von Kommunikationsprotokollen abstrahieren und auf die Erleichterung der Interaktion zwischen verteilten Systemen abzielen, als Middleware bezeichnet..

- Kommunikation über Sockets (Kommunikationspunkte)
- Entfernte Datenaufrufe: RPC – Remote Procedure Call
o Def.: Über ein RPC kann ein Klientprogramm eine Funktion vom Serverprogramm aufrufen, das unter Umständen auf einem anderen Rechner installiert ist.
o Oft synchroner entfernter Dienstaufruf
o Z.B.: RPC Socket  TCP, UDP  IP
o Hier dann z.B. ist die RPC Bibliothek die Middleware die sich um die Kommunikation kümmert – Verbindungsaufbau, Rücksendung des Ergebnisses- wie die Post halt.

- Marhsalling: Zusammenstellung von Daten in einem bestimmten Format bevor diese in einem Netzwerk an potenziell heterogene Systeme versendet werden.
- Serialisierung

Formen von Middleware:

Middleware ist komplexe Softwareinfrastruktur zur verteilten Verarbeitung
- Schnittstellendefinition
- Übersetzung der Schnittstellensprache
- Programmbibliotheken für RPC

- Transaktionsorientierte Middleware
- Älteste Form: Transaktionsmonitore
o Commit, rollback
o Stored procedures
o Transaktionsmonitor zur Realisierung der Tranksaktionssicherheit

- Objektorientierte Middleware
o Aufruf von Methoden von entfernten Objekten
o COBRA
o Sind fast alle Middlewaresysteme

- Meldungorientierte Middleware
o Asynchrone Prozeduraufrufe, das sogenannte MESSAGE-Queuing-Systeme
 Aufrufe kommen in Warteschlange
o Abk.: MOM
o Wichtig: IBM Webspehre MQ series
o Message Broker sind noch wichtig: Transformation und Filterung von Daten

SOA

Def.: ist eine Form einer verteilten Informationsarchitektur, deren Fokus auf der Ankündigung, dem Auffinden, und dem dynamischen aufrufen von hoch stehenden, anwendungsnahen und in sich abgeschlossenen Diensten liegt.

SOA kann rein technisch den RPC komplett übernehmen, aber bei Middleware ist Funktionsaufruf effizienter

Verzeichnisdienst: sog. Broker

DCE : Distributed Computing Environment
- Zwischenschicht zwischen Betriebssystem, Netzwerkdienst und einer verteilten Anwendung

COBRA = Common Object Broker Request

Def.: Standard zur Entwicklung objektorientierter Anwendungen in verteilten und heterogenen Systemen
Wichtigste Bestandteile: ORB-Object request Broker, stellt die Kommunikationsinfrastruktur zwischen verteilten Systemen bereit, eine Schnittstellenbeschreibungssprache mit Programmiersprachenanbindungen, eine Sammlung von Basisdiensten und Anwendungskomponenten

- dazu gehören beidseitige Sicherheitsdienste, Namensdienste, Persistenzdienste oder Tranksaktionsdienste
- unterschiedliche spezifikationen für vertical industries und horizontalen Anwendungsbereich( vertikal: einzelhandel, horizontal: Benutzerschnittstelle für Workflowmanagement)
- Klientobjekt  Methodenaufruf  Serverobjekt
- Proxy = stellvertreter, bevollmächtigter
- Kommunikationsmuster: synchroner Dienstaufruf, Einwegdienstaufruf, aufgeschobener Dienstaufruf

Web Services:

 junge Technologie, die eigens für SOA auf Basis der Internet Architektur entwickelt wurde

Def.:
- unter Web Service versteht man lose gekoppelte, verteilte Dienste, die über Internet basierte Protokolle und XML Nachrichten in einer SOA veröffentlicht, lokalisiert und aufgerufen werden können.
- 3 Kernstandards: SOAP, WSDL, UDDI (und halt XML)
- Sollen ähnliche Kostensenkung im B2B Bereich bringen wie der web Browser im B2C Bereich gebracht hat
- Nach außen Blackbox Funktionalität
- Dynamisches Binden ohne Mehraufwand
- Web Services basieren auf Nachrichten die auf Basis von XML Dokumenten zwischen Client und Server ausgetauscht werden.
- Format der Nachricht wird durch SOAP festgelegt
- WSDL definiert auf einheitliche Art den Web Service
- Die Beschreibungen werden über den Verzeichnisdienst UDDI veröffentlicht
- BPEL 4 WS = Business Process Execution Language for Web Services
o Damit können komplexe Abfolgen von WS als Geschäftsprozesse abgebildet werden
- auf Basis der Standards kann eine SOA realisiert werden

Übersicht:
Prozess und Kompositionsschicht BPEL 4WS, BPML…
Veröffentlichungsschicht UDDI
Beschreibungsschicht WSDL
Meldungsschicht SOAP
Übertragungsschicht http, smtp…
 Schichtenmodell für web Services

Dienstanbieter
 veröffentlichung von der Dienstbeschreibung
 beim UDDI Verzeichnisdienst
Dienstnachfrager
 sucht beim UDDI
 bekommt WSDL Beschreibung
 Dienstaufruf über SOAP beim Dienstanbieter

SOAP:

Def.:
- ist ein Protokoll zum Austausch von strukturierter Information zwischen Softwarekomponenten in verteilten Systemen
- SOAP Spezifikation definiert ein XML Nachrichtenformat für zustandslose Einwegkommunikation.
- Eine SOAP Nachricht ist ein XML Dokument, das von der SOAP Spezifikation vorgegebenen Struktur entspricht
Übertragung über 3 SOAP Knoten: Sender, Empfänger, Intermediär

WSDL:

- eine Schicht höher als SOAP.
- Beschreibt, welche Web S angeboten werden, bildet somit ein Metadatenformat für SOAP

Def.:
- ist eine XML basierende Scriptsprache, zur Beschreibung von WS.
- Diese Beschreibung definiert unter anderem, welche Funktionen von den beschriebenen Web Services bereitgestellt werden und wie ein Klientenprogramm möglichst automatisiert auf die WebS zugreifen kann

-beschreibt ex post die WS textlich und formal
- zur Lokalisierung z.B.
WSDL Beschreibung:
WS, darin eine Protokollanbindung, daran dockt der SOAP Endpunkt an – Verbindung über http oder so – verbindet die SOAP Nachrichten dann

WSDL Schema umfasst:
1. Definition von dienstspezifischen Argumenttypen
2. Definition von Nachrichtentypen
3. Schnittstellenbeschreibung
4. Protokollbindung
5. Dienstbeschreibung

WS werden also mit WSDL in ihren Funktionen definiert und in ihrer Nutzung dokumentiert

UDDI Dienstverzeichnis
- definiert einen Verzeichnisdienst für Web Services. Definiert ein Datenmodell für die Beschreibung von Web Services und deren Anbietern

 dient zum Auffinden von WS von unterschiedlichen Anbietern für bestimmte Problem oder Aufgabenbereiche
 die Beschreibungen im UDDI sind eigentlich auch im WSDL enthalten, aber jetzt zusätzlich auch, wer die WS überhaupt anbietet
 wie Telefonbuch, gelbe Seiten oder so

- UDDI ist somit eine konkrete Realisierung eines Verzeichnisdienstes in einer SOA
- ZIEL: Kategoriesierung der Information, genaue Identifizierung mit den Geschäftspartner, den Anbietern der Services
- Firmennummer: DUNS
- , GLN, oer EAN (alles nur bei übergriefender Nutzung)

UDDI selbst ist ein WebServices, der für suchen und finden der WS verantwortlich ist
- unterstützun ovn umfangreichen Sicherheitseinstellungen
- eierbestlungsbeispiel
o nummer im UDDI. Bäcker sucht eierlieferant anhand einer nummer u kann eierbestellformular in den eigenen BP implementieren, bei vielen anbietern kann bäcker direkt im formular den blligsten auswählen (ja ja )

Geschäftsprozessmodellierung mit BPEL 4WS

- Web Service Orchestration
- BPM Initiative BPML  OASIS industriekonsortium

Zusammenfasssung:

- durch lose gekoppelte Web services erhofft sich die Wirtschaft eine Reihe von Vorteilen gegenüber den eng gekoppelten Middleware Systemen
o einfache und unaufwändige Implementierung von Informationssystemen
o Die Bereitstellung von Internetbasierten Diensten für Dritte
 ASP= Application service Provision
 Achtung bei MS heißt Asp Active Server Pages
o Interoperabilität
o Just in Time
o Kapselung und Abstraktion
o IT Herstellerunterstützung: weite Verbreitung von XML Standards

Gegenüberstellung von Middlewaresystemen wie COBRA, DCE und WebServices

- RP = Remote Programming. Dadurch ist es möglich nicht nur Programmteile sondern ganze Programme zum client zu ladn und dort auszuführen
- Mobiler Code braucht also eine Laufzeitumgebung JAVA!!!
- Auch Softwareagent genannt

EAI = Enterprise Application Integration

Def.:
- unter einer branchenübergreifenden Anwendungsintegration versteht man die Integration von heterogenen, autonomen Anwendungssystemen, die entweder innerhalb eines Betriebs, oder zwischen Betrieben stattfinden
- Die Anwendungsintegration wird durch lose Kopplung von Anwendungssystemen wesentlich vereinfacht
- Wird vor allem beim ERP gebraucht!!!
o Da sonst nur standardmäßige Teillösungen
- getrennt entwickelte systeme zu einem ganzen zusammenführen
- Automatisierung von funktionsübergreifenden Geschäftsprozessen
- Betriebsübergreifende Informationssysteme entang der Wertschöpfungskette
-  bei Nutzung von verschiedenen Standardprodukten verschiedener Hersteller entstehen Integrationsprobleme der Teilsysteme

Unterscheidung von mehreren prinzipiellen Integrationsarten:
- Persistenzschicht
- Anwendungsschicht
- Präsentationsschicht

1. Persistenzschicht

- Def.: Integration von Anwendungen über (zwischen-)gespeicherte Daten
- (AI on persistence layer)
- Weiterhin wird unterschieden:
o Informationsaustausch über Dateien
 Wird bei EDI eingesetzt
o Informationsaustausch über heterogene Datenbanken
 Heterogenes MultiDB system
 Es bestehen lokale Schemata
 Sollen in globales Schema integriert werden
 Heterogenität in:
• Der Plattform
• Ebene von Syntax und Struktur
• Auf semantischer Ebene

 Benutzerschnittstelle gemeinsames globales Schema _ Mediator  lokales schema 1, 2 oder 3 (alles DBen)

2. Anwendungsschicht

Def.: es werden in den beteiligten Applikationen Schnittstellen geschaffen, damit die laufenden Anwendungen direkt miteinander kommunizieren können.–> dies erfolgt odt durch MIDDLEWARE!!!

- nachrichtenbasierte Integration
o Austausch von Nachrichten zwischen den Applikationen
o Weiterentwicklugn von persistenzschicht
o Middleware wickelt jetzt alles ab

- RPC basierende funktionale Integration
o Stellen Anwendungen Funktionen wecheslseitig zur Verfügung

Oft auch integration der WS, da im betrieb sicherheit zweitranig

Integration auf Präsentationsschicht
3. Präsentationsschicht

Def.:
- es werden die bestehenden Benutzerschnittstellen eines Anwendungssystems genutzt, um automatisiert mit weiteren Anwendungssystemen Daten auszutauschen. Diese Integrationsform eignet sich auch für Programme, die nur in ausführbarer Form (als BLACK Box) vorliegen
- Screen Scraping
- Web Scraping

XML:

Def.:
- eine Auszeichnungssprache ist eine Sprache, die Regeln zur Auszeichnung von Textelementen bereitstellt. Beliebigen Textelementen können auf deklarative Weise eigenschaften zugewiesen werden, wodurch deren Bedeutung ausgedrückt werden kann (Semantik).
- Die Txtelemente werden durch eine Startmarkierung eingeleitet, die die Art der enthaltenen Daten bestimmt, und von einer Endmarkierung abgeschlossen
- XML:
o Ist eine Metasprache für die Definition von anwendungsspezifischen Auszeichnungssprachen.
o Mittels XMl können somit Markup Sprachen für beliebige anwendungen maßgeschneidert werden, die anwendungsspezifische Datenstrukturen beschreiben.
o Mittels XML können Dokumenttypen definiert werden, die eine Klasse von XML Docs. In ihrem aufbau und ihrem Inhalt
o XML Docs sind auchohn e anwendungsspezifische Werkzeuge für den Menschen intuitiv verständlich und sind zudem relativ einfach maschinll weiterverarbeitet

Eigenschaften: wohlgeformtes XML
- entsprechen den syntaktischen rEgeln von XML
- DTD
- XMl Namensräume
- Transformation von XML Dokumenten: XSLT
o Style sheet transforamtion
o Grafische Aufbereitung: RDF, Metadaten

Kategorien: client server · verteilte systeme · web 2.0 · xml