| |
5
Neue Konzepte für das Management verteilter Systeme, Hauptseminar, LMU München WS 00/01
· Grobkörniger: Objekte sind klein. Ihre Größe wird durch Überlegungen zur
Implementierung diktiert, die Komponentengröße richtet sich nach der Funk-
tionalität, die erbracht werden soll.
· Nicht vererbbar: Erstens erhöht Vererbung die Kommunikation zwischen
Komponenten, was z.B. in verteilten Systemen nicht immer wünschenswert ist,
da sie Zeit und Ressourcen kostet. Zweitens entstehen zusätzliche Abhängig-
keiten, die das Versionsmanagement verkomplizieren. Insbesondere könnten
minimale Änderungen am Schnittstellenvertrag einer Oberklasse zum Zu-
sammenbruch
des
Schnittstellenvertrags
von
Unterklassen
führen.
Komponenten-Schnittstellen sind jedoch vererbbar, um ist-ein-Beziehungen
zu unterstützen (Äpfel und Birnen können z.B. über ihre Eigenschaft als Obst
auf gleiche Weise behandelt werden.)
· Programmiersprachenunabhängig: Objekte können an Programmiersprachen
gebunden sein, Komponenten nicht. Sie sind je nach Architektur sogar platt-
form-interoperabel.
1.3.
Anforderungen an eine Komponentenarchitektur
Komponentenorientierung ist zum einen ein Programmierparadigma zur Wieder-
verwendbarkeit. Für gewisse Komponenteneigenschaften (z.B. Konfigurierbarkeit)
ist zum anderen eine technische Spezifikation von Komponenten erforderlich. Ei-
ne solche Komponentenarchitektur muss folgendes festlegen:
· Gleiches Aussehen aller Komponenten: Der Zugriff auf jede Komponente
erfolgt auf genau gleiche Weise.
· Gleiche Laufzeitumgebung aller Komponenten: Je zwei beliebig gewählte
Komponenten sollen in der gleichen Umgebung leben können. Man beachte
die sehr abstrakte Verwendung des Begriffes Laufzeitumgebung, gerade im
Middleware-Bereich. Gemeint ist die Menge der Ressourcen, die den Kompo-
nenten zur Laufzeit zur Verfügung stehen. Im Idealfall soll die Komponenten-
architektur für jeden denkbaren Ressourcentyp die Zugriffsweise spezifizieren
im verteilten System eine besondere Herausforderung.
· Konfiguration der Komponenten: Die Komponenten müssen konfigurierbare
Attribute auf einheitliche Weise zugänglich machen.
· Meta-Informationen/Deployment-Deskriptor: Da zum einen die Laufzeitum-
gebungen von Komponenten nie genau gleich sein werden und zum anderen
unterschiedliche Komponenten unterschiedliche Umgebungen erfordern, kann
die Komponente über einen Beipackzettel Anforderungen an ihre Umge-
bung stellen. Mögliche Meta-Informationen sowie ihre Form müssen festgelegt
sein.
|  |
|
| |
|
|