% Studienarbeit von Markus Breilmann
%
% Universitaet Hamburg
% Fachbereich Informatik
% Arbeitsbereich DBIS
%
% Kapitel 6: Bewertung und Ausblick


%\cleardoublepage

\chapter{Zusammenfassung und Ausblick}
\label{Kap. Zusammenfassung und Ausblick}


\section{Zusammenfassung und Bewertung der Portabilit"at}
\label{Abs. Zusammenfassung}

Die Portierung des Tycoon-Systems auf Apple Macintosh wurde durch die eingesetzten Konzepte weitgehend unterst"utzt. Anpassungen blieben aufgrund der starken Modularisierung auf einige Teile beschr"ankt. Als "uberwiegendes Problemfeld stellte sich die Datenein- und -ausgabe im weiteren Sinne heraus.

Das Macintosh-Betriebssystem nimmt im Zusammenhang mit der Entwicklungsumgebung MPW eine Sonderstellung bez"uglich der Textein- und -ausgabe ein. Das Konzept von Streams wird nicht unterst"utzt, die Kommunikation mit dem Benutzer wird "uber ein Textfenster realisiert. Ein solches Fenster wurde aus einer Apple-Beispielapplikation abgeleitet, in die Tycoon-Applikation integriert und seine Funktionalit"at an die von Streams unter Unix angepa"st. Die umfassende Unterst"utzung des Programmierers bei der Erstellung der Benutzerschnittstelle durch Betriebssystemfunktionen f"uhrt zu einer konsistenten und f"ur den Benutzer gewohnten Oberfl"ache. Die Verwaltung des Ein-/Ausgabefensters durch die Tycoon-Applikation erlaubt den Zugriff auf Benutzer- oder Betriebssystemereignisse. Dieser Aspekt kann in zuk"unftigen Tycoon-Versionen gr"o"sere Bedeutung erlangen und w"urde dann eine "ahnliche L"osung f"ur andere Betriebssysteme wie Windows95/Windows NT und OS/2 erfordern. Die daf"ur notwendigen Funktionen m"ussen in separaten Modulen gehalten werden, da hier keine Portabilit"at unter den Betriebssystemen zu erwarten ist.

Die Unterschiede zwischen den Dateisystemen unter Unix und MacOS erzwingen eine Anpassung von Dateinamen. Dies trifft auch f"ur das Windows-Betriebssystem zu, so da"s eine L"osung auf TL-Ebene sinnvoll erscheint. Die Einf"uhrung einer allgemeinen Namens- und Pfadkonvention mit automatischer Anpassung in Abh"angigkeit vom zugrundeliegenden Betriebssystem kann in TL flexibel realisiert werden. Die besondere Verwaltung von Verzeichnisstrukturen f"uhrt auf dem Macintosh zu einer Einschr"ankung der Funktionalit"at des Moduls {\sf directory}. Dies kann durch den Einsatz der GUSI-Bibliothek umgangen werden, eventuell beheben andere Entwicklungsumgebungen diesen Mangel.

Die Coroutinen-Implementation ist auf dem Macintosh-Betriebssystem sehr stabil. Die Ab\-h"angigkeit der Funktionen von der zugrundeliegenden Prozessorarchitektur f"uhrte zu Anpassungen sowohl f"ur 68k- als auch f"ur PowerPC-Modelle. Das Konzept k"onnte auf bestimmten Rechnerarchitekturen zu erh"ohtem Anpassungsaufwand f"uhren.

Die Kommunikation mit anderen Rechnern "uber Sockets ist in der Portierung umgesetzt worden. Da auf eine Drittl"osung zur"uckgegriffen werden mu"ste und keine entsprechenden Funktionen durch das Betriebssystem bereitgestellt werden, bleibt dieser Bereich vorerst instabil. Eine neue Version der eingesetzten Bibliotheken ist angek"undigt und k"onnte Abhilfe schaffen.

Ein nicht unbedeutender Anpassungsaufwand ist auf Besonderheiten der MPW-Entwick\-lungsumgebung zur"uckzuf"uhren. Es handelt sich meist um abweichende Funktionsnamen oder Umsetzungen des C-Sprachumfanges. Die Unterst"utzung f"ur Unix-Funktionen fehlt g"anzlich. Ein gro"ser Nachteil sind lange "Ubersetzungszeiten. Die Erfahrungen in dieser Arbeit deuten darauf hin, da"s andere Entwicklungsumgebungen besser f"ur die Portierung von Unix-Applikationen geeignet w"aren. 
 
Als Ergebnis der Portierung steht die Sprache Tycoon Language und die Funktionalit"at aus den zugeh"origen TL-Standardbibliotheken zur Verf"ugung. Die Konzeption des Tycoon-Systems hat sich trotz zum Teil grundlegender Unterschiede in den Betriebssystemen be\-w"ahrt. "Anderungen wurden vielfach nicht durch Eigenheiten Tycoons, sondern durch die Kombination MacOS/MPW verursacht. Ein Bruch ist f"ur den Objektspeicher TYMEM festzustellen, der nicht auf Funktionen des Runtime-Systems zur"uckgreift.

\section{Ausblick}
\label{Ausblick}

F"ur die Verbesserung der Portabilit"at steht eine einheitliche L"osung f"ur die Behandlung von Datei- und Pfadnamen aus. Durch eine C-Funktion, die das zugrundeliegende Betriebssystem der TL-Ebene mitteilt, w"are eine flexible L"osung m"oglich. An die C-Funktionen f"ur das "Offnen von Dateien w"urden dann bereits korrekte Zeichenketten "ubergeben.

Die Eignung von TL als Skriptsprache legt eine Koppelung von Tycoon mit den Skriptfunktionen des Macintosh-Betriebssystems nahe. Dadurch w"urde die Steuerung von Macintosh-Applikationen aus Tycoon m"oglich. Dies entspricht der Funktionalit"at, die f"ur Gesch"aftsprozessmodellierung und -verwaltung notwendig ist. Bei einer solchen Koppelung w"urde zwangs\-l"aufig Tycoon als Systemprogrammiersprache eingesetzt werden m"ussen.

In K"urze wird f"ur beide Macintosh Prozessorarchitekturen der Code-Fragment-Manager verf"ugbar sein. Dadurch wird der Einsatz von dynamischem Binden von Funktionen auch unter MacOS sinnvoll und kann realisiert werden.
