-
Inwiefern tragen die im Kurs vorgestellten Middleware-Techno-logien (RMI, .NET-Remoting) zur Betriebsunabhängigkeit von miteinander gekoppelten Anwendungssystemen bei?
Wo liegen die Grenzen dieser Technologien im Sinne der Betriebsunabhängigkeit? Begründen Sie Ihre Antwort.
- Betriebsunabhängigkeit:
- durch den Einsatz von Namensdiensten wird eine Ortstrans-parenz erreicht
- ermöglicht Wechsel zu einem alternativen Ziel-AWS, wenn ein bestimmtes System ausfällt, ohne dass die miteinander ge-koppelten Anwendungssysteme angepasst werden müssen
- Grenzen:
- Es existieren keine Maßnahmen, die Nachrichten konser-vieren, die an ein System gesendet werden, das nicht erreichbar ist.
-
Wie wird Ortstransparenz in RMI realisiert?
RMI-Registry (Namensdienst): verteilte Objekte werden mit einem Namen assoziiert.
Name eines Objektes wird in die Adresse der Virtuellen Maschine übersetzt + eindeutige ID des Objektes
-
Zur Realisierung welches Subsystems der Kopplungsarchitek-turen leisten die im Kurs vorgestellten Middleware-Technologien einen Beitrag? Begründen Sie ihre Antwort.
- Kommunikationssubsystem:
- *Dienste zur Serialisierung von zu übertragenden Daten
- *physischen Identifikation eines Ziel-AWS
- *Aufbau, Kontrolle und Abbau von Verbindungen->Abstraktion von der Verwendung von Sockets
-
Warum sind traditionelle RPC-Aufrufe weniger zur Verteilung eines objektorientierten Softwaresystems geeignet?
- RPC wurden als verteilte prozedurale Aufrufe entwickelt (unab-hängig vom objektorientierten Paradigma)
- fehlende Objektidentität
- Freigabe von entfernten Objekten nicht möglich, da unklar bleibt, ob ein Objekt weiterhin verwendet wird
- Serialisierung von Daten nicht oder nur rudimentär unterstützt
-
Warum benötigt eine Client-Anwendung ein Stub-Objekt? Zu welchen Vorteilen führt die Anwendung von Stub-Objekten aus der Sicht der Entwicklung von Clientanwendungen?
- *repräsentiert die vom Server angebotene Funktionalität im Adressraum der Clientanwendung
- *Clientanwendung ruft Methoden des Stubs auf, ohne auf die Aspekte der Verteilung näher eingehen zu müssen (Ausnahme: Fehlerbehandlung)
- *Client wird gegen die Klassendefinition des Stubs kompiliert
- ->syntaktische Prüfung der Verwendung der Serverfunktionalität möglich
-
Betrachten Sie die folgende Methode:
Decimal Order:getBrutto( Decimal netto, float MWST );.
Gehen Sie davon aus, dass diese Methode von einem entfernten Objekt angeboten wird. Beschreiben sie den groben Ablauf, wenn die Methode von einem Client auf einem Stub-Objekt aufgerufen wird.
- * Serialisierung der Daten nicht erforderlich
- 1. Identifikation der physischen Adresse des verteilten Objektes
- 2. Socketverbindung zum entfernten Objekt herstellen
- 3. Nachrichten zum Aufruf des entfernten Objektes über Socketverbindung senden
- 4. Terminierung des Funktionsaufrufs abwarten und Ergebnisse empfangen
- 5. interpretieren des empfangenen Ergebnisses (Umwandeln der Zeichenkette in eine Dezimalzahl)
- 6. Funktionsaufruf des Stub-Objekts terminiert: empfangenes Ergebnis wird an die aufrufenden Funktion zurückgegeben
-
Welche Aufgabe übernimmt die Workflowkomponente im Rahmen von dienstorientierten Informationssystemen? Wieso existiert in herkömmlichen AWS keine ausgewiesene Workflowkomponen-te? Was sind die Vorteile, die sich aus der Verwendung einer ausgelagerten Workflowkomponenten ergeben?
- übernimmt Ablaufsteuerung in dienstorientierten Informationssystemen
- herkömmliche AWS:
- *Ablaufsteuerung fest in der Anwendungslogik integriert
- *Dialogschritte und Benutzertransaktionen fest vorgegeben
- ->Nachteil: Geschäftsprozess muss am System ausgerichtet werden
- Vorteil der ausgelagerten Workflowkomponente:
- *leichtere Anpassbarkeit auf hohem Abstraktionsniveau unter Verwendung von Beschreibungssprachen (BPEL)
-
Webservices stellen ein Konzept zur Realisierung von verteilten Systemen zur Verfügung. Welche Fähigkeiten sind seitens einer Anwendung erforderlich, die Webservices nutzen möchten?
(Hinweis: Diese Fähigkeiten stehen in den meisten höheren Programmiersprachen wie Java oder C# bereits innerhalb von Klassenbibliotheken zur Verfügung).
- Generierung eines Stubs anhand der Service-Beschreibung des aufzurufenden Webservice
- Serialisierung der Parameter
- Übertragung des Methodenaufrufs und der Parameter zum Web-serivce unter Verwendung eines in WSDL definierten Protokolls
- Warten auf Antwort vom aufgerufenen Webservice
- Deserialisierung der als Ergebnis des Aufrufs übermittelten Daten
-
Die Hauptaufgabe einer Verteilungsplattform besteht darin, die in verteilten Systemen vorhandene Heterogenität zu verbergen. Erläutern Sie verschiedene Ausprägungen dieser Heterogenität.
- (technische) Heterogenität:
- resultiert aus der Anwendung unterschiedlicher
- –Rechnerarchitekturen
- –Betriebssysteme
- –Programmiersprachen.
- => Vielzahl von Ausprägungen, die aber durch die Anwendung von (geeigneter) Middleware weitestgehend eliminiert werden können
|
|