previous next Up Title Contents Index

5.3 Konzeption


Gemäß Voraussetzung 1 stellt das folgende Konzept eine Programmierschnittstelle für Bausteine der ObjectBase dar.
Grundsätzlich muß ein Baustein der ObjectBase von einer der Bausteinklassen
* Generator (Datenquelle),
* Evaluator (Auswertungsmethode),
* Simulator (Simulationsmodell) oder
* Recorder (Datensenke)
abgeleitet werden (vgl.[Müg97]).
Der Java-seitige Teil eines Bausteins ist in der Abb. 22 [14]

Abb. 2[276]

. mit (1) beschriftet Er wird durch den Local Communication Manager desselben Rechners gestartet.
Damit nicht nur Daten mit dem GIS ausgetauscht werden können, sondern auch Operationen im GIS auf diesen Daten erfolgen können, muß die Programmierschnittstelle die Funktionalität der Programmiersprache Avenue bereitstellen. Dies wird so umgesetzt, daß ein zum Java-seitigen Baustein korrespondierendes Avenue-Script (2) im GIS ArcView gestartet wird. Nach Abschluß der Übertragung der Daten von (1) nach (2) und vor der Rückübertragung können in ArcView alle Aktionen, die keine Benutzerinteraktion erfordern, ausgeführt werden. Das Erfordern von Benutzerinteraktion würde dem Leitgedanken des MOBILE-Konzepts widersprechen, daß mit der Experimentspezifikation alle notwendigen Angaben zum Experiment gemacht sind. Weitere Restriktionen in der Verwendung von Avenue-Sprachelementen sowie Namenskonventionen sind im Abschnitt Realisierung (S. 87) und im Leitfaden Programmierschnittstelle für Bausteine mit ArcView-Kopplung (S. 119) genannt.

Abb. 22: Konzept der Programmierschnittstelle.
Erläuterung der Ziffern im Text

Von einem Baustein mit ArcView-Kopplung unmittelbar verwendet werden die Java-Klassen (3) bzw. Avenue-Scripte (4) der Programmierschnittstelle. Die übrigen Komponenten (5), (6) und (7) dürfen nicht direkt, sondern ausschließlich über die Programmierschnittstelle genutzt werden. Komponente (6) sorgt für die Konvertierung der Daten in ein für ArcView lesbares Format, (5) stellt über die Kontrollschnittstelle ArcViews die Kontrolle über das GIS her, so daß das korrespondierende Avenue-Script (2) gestartet werden kann. Unter der Kontrolle des korrespondierenden Avenue-Scripts werden dann zunächst über (4) und (7) die durch (6) bereitgestellten Daten in eine mit Avenue verarbeitbare Form konvertiert, um anschließend GIS-Operationen auszuführen. Nach deren Abschluß wird mittels anderer Avenue-Scripte aus (4) die Rückkonvertierung durch Scripte aus (7) durchgeführt und die Kontrolle an (1) zurückgegeben.
Während der Ausführung eines Bausteins kann (1) den Aufruf von (2) mehrfach durchführen oder auch verschiedene korrespondierende Avenue-Scripte ausführen.
In Abb. 22 ist weiterhin zu sehen, daß der Baustein über den Mobile Communication Manager auch mit Bausteinen auf anderen Plattformen kommunizieren kann (weitere Bausteine sind zur Vereinfachung der Grafik weggelassen), ebenso wie es möglich ist, mit anderen Bausteinen auf demselben Rechner zu kommunizieren. Sie wird über die Eingabe- und Ausgabeports der Kommunikationsschnittstelle der Bausteine durch den Austausch von MSL-Daten-Objekten vollzogen (vgl.[Müg97]). So kann die Kopplung eines Simulationsmodells mit dem GIS ArcView auf zweierlei Weise hergestellt werden:
1. direkt durch Verwendung der Programmierschnittstelle oder
2. indirekt über einen Baustein, der die Programmierschnittstelle verwendet.
Die zweite Möglichkeit ist typisch für Datenquellen und Auswertungsmethoden, die ein Simulationsmodell mit Daten versorgen oder sie zunächst noch aufbereiten bzw. anschließend analysieren.
In der folgenden Abbildung werden die prinzipiellen Möglichkeiten der Kopplung von Bausteinen mit ArcView aufgezeigt und auf ihre Konformität mit dem Mobile-Konzept hin überprüft.

Abb. 23: Mögliche Kopplungen zwischen Mobile-Kernsystem und ArcView

Nicht alle prinzipiell möglichen Verbindungen sind im MOBILE-System auch sinnvoll. Die Pfeile bezeichnen den Datenfluß und sind zur Unterscheidung durchnumeriert. Der Datenfluß kann entlang der Pfeilpaare 4 und 5, 8 und 9 sowie 12 und 13 beim Aufruf eines Avenue-Scripts stattfinden. Daten können zum korrespondierenden Avenue-Script hin und nach dessen Ende zurückübertragen werden.
Der Datenfluß entlang der Pfeilpaare 2 und 3, 6 und 7 sowie 10 und 11 müßte zur Instantiierungszeit stattfinden, was aber nicht mit dem Mobile-Konzept konform geht. Statt dessen wird das Konzept der ArcView-Datenreferenzen vorgeschlagen, das die Ausführung des Datentransfers bis zur Ausführungszeit der Bausteine verzögert (vgl. die Abschnitte zu ArcView-Datenreferenzen, S. 83 und S. 139).
Die Pfeile 1 und 14 kennzeichnen einen möglichen Datenfluß, wie er für einen Prototypen verwendet werden kann: statt durch enge Kopplung könnten die Klassen und Avenue-Scripte, die der Konvertierung dienen, auch für lose Kopplung benutzt werden. GIS-Daten würden dann in Objekte der Objektbase überführt und umgekehrt, ohne daß unmittelbar die Ausführung eines Experiments folgt bzw. vorausgeht.


[14] weitere Nummern in Klammern in diesem Abschnitt beziehen sich ebenfalls auf [, (S. )


previous next Up Title Contents Index