Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.

Ähnliche Präsentationen


Präsentation zum Thema: "Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit."—  Präsentation transkript:

1 Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit Software: abweichende Betriebssysteme, unterschiedliche Programmiersprachen Programmierung (Entwicklung): Viele Funktionen müssen global verfügbar sein.

2 Was versteht man unter Component Software? Relativ kleine d.h. überschaubare Komponenten (Software Module) sind beliebig kombinierbar. standardisierte Schnittstellen unabhängig von Implementierungsdetails (Plattform, OS, Programmiersprache, Netzwerk, …)

3 Welche Möglichkeiten bietet Objekt-Technologie um die Komplexität der realen Welt abzubilden und welche Probleme können so überwunden werden? Leistungs/Funktionserweiterung: Ge-kapselte Objekte sind relativ unabhängig Wartung/Verwaltung: Objekte sind übersichtlicher als das Ganze Zeit/Kosten: Leichte Wiederverwendung, einfache Erweiterung

4 Was versteht man unter einem Objekt und unter einer Objektklasse? Objekt: besteht aus bestimmten Daten und den Methoden diese zu bearbeiten. Es ist eine reale Instanz einer bestimmten Objektklasse. Objektklasse: ist eine Vorlage. Sie definiert welche Daten ein Objekt enthält und welche Methoden darauf zulässig sind.

5 Wie wird Objektinteroperabilität in CORBA konzeptionell erreicht? Information über die Methoden und Parameter eines Objektes Definition des Nachrichtenformats. eindeutige Bezeichnung eines Objekt (Handle, Objekt Referenz) Definition erfolgt durch IDL (Interface Definition Language) Zusammenarbeit über ORBs

6 Skizzieren Sie die Object Management Architecture (OMA). Erkären Sie kurz Application Objects, CORBAfacilities und CORBAservices. Application Objects: greifen auf Services und Facilities über standardisierte Schnittstellen zu. Services: bieten Low-Level Funktionen die fast jedes Objekt benötigt. Facilities: Interessant für Anwendungen, Horizontal und Vertikale Strukturierung.

7 Welchen Nutzen bringt CORBA sowohl für Entwickler als auch für Anwender? Plattformunabhängigkeit Objektorientierung Nahtlose Integration bestehender Anwendungen (IDL + Wrapper) CORBA/OMA stellt effiziente Umgebung dar. (Services) Wiederverwendung: Einfache Wiederverwendung und Erweiterung bestehender Komponenten. Unterschiedliche Technologien (Sprachen) möglich standardisiert leicht an die Hardware und Anforderungen der Anwender anzupassen. (modular)

8 Was macht die Object Management Group (OMG)? OMG ist ein Konsortium aus Hard- und Softwarefirmen. Es wird durch die OMG keine Software erstellt - nur Spezifikationen. Diese sind für alle interessierten Parteien frei und unentgeltlich erhältlich. Mehrere Treffen pro Jahr. Jedes Mitglied kann Vorschläge abgeben. Arbeitsgruppen erarbeiten Anforderungsprofile und machen ebenfalls Vorschläge. Überarbeitung der Vorschläge: Letzendlich erfolgt offizieller Beschluß (Konsens wichtig). Realisierungspflicht innerhalb eines Jahres.

9 Skizzieren Sie wie ein Request eines Clients an die Objekt-Implementation über den ORB weitergeleitet wird. IDL versteckt Client und Object Implementierung. Request läuft immer über einen ORB. Es gibt keinen Unterschied ob es sich um ein lokales oder remote Objekt handelt. ORB (Object Request Broker) StubSkeleton ClientObject IDL

10 Was versteht man unter einem CORBA-Objekt? Erklären Sie die Schlüsselkonzepte: Kapselung, Vererbung und Polymorphismus. Kapselung: Schnittstelle vs. Implementierung. Vererbung: Objektklassen können erweitert werden. Polymorphismus: Methoden auf mehrere Klassen anwendbar. Interface Definition in OMG-IDL. Charakteristika:

11 Beschreiben Sie kurz das Konzept der Interface Definition Language (IDL) Der Client sieht welche Methoden aufgerufen werden können. Für das Objekt wird festgelegt welche Methoden (in einer beliebigen Program- miersprache) implementiert werden müssen. Die Schnittstelle jedes CORBA Objektes wird durch IDL definiert. (Methoden, Parameter, Fehlerbehandlung)

12 Erläutern Sie wie ein Corba-Objekt gebildet wird. Gehen Sie dabei sowohl auf die Objekt Implementation als auch die Client Seite ein. Analyse und Design: Benötigte Methoden, Parameter, Resultate, Fehler Wahl einer Programmiersprache für die Implementierung. Auswahl des ORB (+ IDL Compiler) Client verwendet den erzeugten Stub Code. IDL ORB Verbindung ist proprietär.

13 Zeigen Sie den Unterschied zwischen der Funktionalität eines ORB und der von RPC. Gehen Sie dabei auf Referenzen, IR und DII ein. Lokalisierung der Objekte: Eindeutige Objektreferenz, Transparent für den Client Eventuelle Konvertierungen: IDL ist streng typisiert, alle Definition werden vom ORB im IR (Interface Repository) gespeichert. Nicht statisch: DII (Dynamic Invocation Interface) ermöglicht es neue Objekte und deren Definition zur Laufzeit zu finden.

14 Wie wird auf ein Objekt auf einem Remote ORB zugegriffen? Kein Unterschied zu einem Zugriff auf ein lokales Objekt. Es werden nur lokale Aufrufe durchgeführt. Die Details werden immer dem ORB überlassen. Die Verbindung zu Remote-Objekten findet über eine ORB-to-ORB Kommunikation statt.

15 Wie wird ein bestehendes Objekt in die eigene Software integriert? Ein Client benötigt nur die jeweilige IDL- Definiton und eine Objekt-Referenz um auf ein neues Objekt zugreifen zu können. Bei der Installation des Objekts auf dem Server wird die Objekt-Referenz erzeugt. Ein verfügbarer ORB und IDL-Compiler erzeugt den für den Client wichtigen Stub Code.

16 Beschreiben Sie die wichtigsten CORBAservices. Lifecycle: Erzeugen, Löschen, Kopieren und Verschieben von Objekten Relationsship: Gruppierung von Objekten Naming: Erfragen von Objektreferenzen Persistant Externalization Event Object Query, Object Properties, Object Transaction Concurrency Licensing Trader: Suchen nach Objekten (Anforderungen) Security: Verschlüsselung, Zugriffskontrolle Secure Time Object Collection, Object Startup


Herunterladen ppt "Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit."

Ähnliche Präsentationen


Google-Anzeigen