Hasso-Plattner-Institut
Hasso-Plattner-Institut
  
Login
 

Heutige Softwaresysteme erlangen ihren vollen Nutzen häufig erst dann, wenn sie exakt an ihren späteren Verwendungszweck angepasst wurden. Diese Anpassung kann aufgrund der Komplexität heutiger Systeme vielfach nur noch durch Programmierung erreicht werden. Gerade in diesem Bereich bietet der Einsatz virtueller Maschinen viele Vorteile. Einerseits kann dadurch der Aufwand für die Entwicklung solcher Programme gesenkt werden, andererseits wird damit die Abhängigkeit von einer speziellen Hardwareplattform vermieden. Obwohl die Integration virtueller Maschinen in bestehende Systeme eine große Praxisrelevanz aufweist, wird dieses Thema in der Literatur nur unzulänglich behandelt. Dies ist besonders nachteilig, weil viele im Zusammenhang mit der Integration zu treffenden Entscheidungen
"trade off" Entscheidungen sind. Über diese kann nur dann sinnvoll entschieden werden, wenn man einen Überlick über das Spektrum möglicher Lösungen hat.

Diese Arbeit verfolgt daher das Ziel, solche Zusammenhänge aufzuzeigen, die zur Beurteilung der bei einer Integration zu fällenden "trade-off" Entscheidungen von Bedeutung sind. Die Mitarbeit an einem Forschungsprojekt innerhalb der SAP AG ermöglichte es dem Autor, die Problematik der Integration virtueller Maschinen an einem realen Praxisbeispiel kennenzulernen. Neben diesen gewonnenen Erfahrungen diente die Literatur als Informationsquelle für weitere Integrationsbeispiele sowie zur Auseinandersetzung mit der Thematik der Konstruktion virtueller Maschinen. Die Darstellung der für die Integration relevanten Zusammenhänge geschieht unter Verwendung der im Umfeld des Autors etablierten Fundamental Modeling Concepts (FMC). Der Stand der Technik auf dem Gebiet der Konstruktion virtueller Maschinen wird anhand der JAVA VM vorgestellt. Hierzu wird einerseits das in der Spezifikation definierte Funktionsprinzip der JAVA VM modelliert. Andererseits wird auf typische Konstruktionsmerkmale leistungsfähiger JAVA VM Implementierungen eingegangen. Da es aufgrund der großen Vielfalt unterschiedlicher Integrationsszenarien nicht möglich schien, alle dabei auftretenden Probleme in ein generelles Referenzmodell einzuordnen, beginnt die Diskussion der eigentlichen Integrationsproblematik mit der Darstellung der im Rahmen des Forschungsprojektes durchgeführten Integration einer JAVA VM in den SAP R/3 Application Server. Im Anschluss an dieses sehr umfangreiche Beispiel wird kurz auf weitere in der Literatur beschriebene Integrationsprojekte eingegangen. Dabei zeigt sich, dass die anhand des SAP Beispiels diskutierten Probleme keineswegs einzelfallspezifisch sind, sondern auch in anderem Kontext immer wieder auftreten. Des Weiteren wird deutlich, dass die in bestehende Systeme integrierten virtuellen Maschinen häufig dazu benutzt werden, zeitgleich mehrere "Programme" auszuführen und dass viele aktuelle virtuelle Maschinen sich nur bedingt für einen solchen "Mehrprogrammbetrieb" eignen, weil dies beim Entwurf der entsprechenden Maschinen nicht berücksichtigt wurde. Eine wichtige Erkenntnis dieser Arbeit ist, dass diese mangelhafte Unterstützung für einen solchen "Mehrprogrammbetrieb" oft eines der Hauptprobleme bei der Integration darstellt. Dementsprechend wird dieses Problem im weiteren Verlauf der Arbeit besonders intensiv untersucht.

Die Leistung dieser Arbeit besteht in erster Linie darin, die Vielzahl an Problemstellungen, die bei der Integration von virtuellen Maschinen in bestehende Systeme auftreten können, so in einen Gesamtkontext einzuordnen, dass die aus diesen Problemen resultierenden Konsequenzen deutlich werden. Diese Einordnung der verschiedenen Problemstellungen richtet sich dabei speziell an Personen, die vor der Aufgabe der Integration einer virtuellen in ein bestehendes System stehen und soll ihnen den für ihre Entscheidungen notwendigen Überblick vermitteln.

Dowload der Dissertation (pdf-Format)