% ------------------------------------------------------------------ %
%                                                                    %
% Datei:        einleitu.tex                                         %
% Autor:        Oliver Nietsch                                       %
%                                                                    %
% Universitaet Hamburg                                               %
% Fachbereich Informatik                                             %
% Arbeitsbereich DBIS                                                %
%                                                                    %
% Thema: Studienarbeit: "Gateway zwischen dem StP-Repository         %
%                        und Tycoon"                                 %
%                                                                    %
% Inhalt: LaTeX-Dokument: Studienarbeit,                             %
%                         Kapitel 1: Einleitung                      %
%                                                                    %
% Version vom  19. 3.1996                                            %
% ------------------------------------------------------------------ %

\chapter{Einleitung}
\label{Chap:Einl}

Die heutige professionelle Softwareerstellung ist dadurch gekennzeichnet, da"s eine Entwicklungsmethode ohne die Unterst"utzung durch computerbasierte Werkzeuge kaum noch durchf"uhrbar beziehungsweise handhabbar ist. Diese Problematik ist um so st"arker ausgepr"agt, je komplexer der Softwareentwicklungsproze"s sich darstellt. Die Nachfrage nach immer leistungsf"ahigeren Anwendungssystemen erfordert daher stetige Verbesserungen im eigentlichen Proze"s der Systementwicklung, sowohl in quantitativer als auch in qualitativer Hinsicht.

Innerhalb des \engl{Computer Aided Software Engineering} (CASE) versucht man, diesen Anforderungen durch den Einsatz geeigneter Softwarewerkzeuge nachzukommen \cite{balzert93}. Die Integration der CASE-Werkzeuge in den Anwendungserstellungsproze"s erfolgt auf der Basis einer gemeinsamen Entwicklungsdatenbank, dem \engl{Repository}, welches als ein zentraler Bestandteil einer computerunterst"utzten Entwicklungsumgebung gilt.

Um flexibel, problemad"aquat und sicher auf die hohe Anzahl der von den CASE-Werkzeugen angelegten persistenten Modellierungsobjekten in der Entwicklungsdatenbank zugreifen zu k"onnen, ist eine geeignete Klasse von Softwaresystemen erforderlich. Zur Entwicklung solcher Systeme, der sogenannten persistenten Objektsysteme, bietet das Tycoon\footnote{Tycoon: Typed Communicating Objects in open Environments}-System als integrierte Programmierumgebung am Arbeitsbereich DBIS der Universit"at Hamburg einen geeigneten sprachlichen und architektonischen Rahmen, der unter anderem Konzepte der Erweiterbarkeit, Offenheit, Modularit"at, Typisierung und Polymorphie umfa"st \cite{matthes92}.

\section{Motivation}
\label{Sec:Motiv}

Den Hintergrund dieser Arbeit bildet die im Kapitel~\ref{Chap:CASE} beschriebene CASE-Umgebung {\sf Software through Pictures (StP)}, auf deren Basis die implementierte Softwareentwicklungsmethode {\sf OMT} \cite{rumb91} unter anderem sogenannte \engl{Harel State Charts} enth"alt. Hierbei handelt es sich um Zustandsautomaten zur Proze"sbeschreibung, die dem Anwendungsentwickler im Rahmen der dynamischen Systemmodellierung als Erg"anzung zu Beschreibungsmethoden des statischen Systemaufbaus dienen. Die persistente Ablage der grafischen Beschreibung dieser Zustandsdiagramme erfolgt im {\sf StP Repository}.

Aufbauend auf dieser Arbeit soll auf der Tycoon-Ebene eine Modellierungs- und Simulationsbibliothek entwickelt werden, welche f"ur die Systementwicklung Werkzeuge zur Animation und Simulation der auf der {\sf StP/OMT} Seite grafisch entwickelten Proze"sbeschreibungen zwecks Entwurfsvalidierung bietet.

Diese Animationskomponente soll in die dem Softwareentwicklungsproze"s zugrundeliegende Entwurfsmethode integriert werden. Somit kann die Simulation des dynamischen Systemverhaltens als Erg"anzung zur statischen und dynamischen Modellierung von Anwendungssystemen gelten. Eine Erweiterung des Werkzeugs auf die Simulation, Animation und Implementierung von \engl{Workflow}-Modellen ist ebenfalls geplant.

\section{Problemstellung}
\label{Sec:Problem}

Eine Voraussetzung f"ur die Realisierung der Animationskomponenten auf der Tycoon-Ebene ist die M"oglichkeit zur "Ubernahme der gesamten, im {\sf StP Repository} abgelegten Modellierungsdaten auf die Tycoon-Ebene.

Inhalt dieser Arbeit ist, Zugriffsm"oglichkeiten auf Objekte der Entwicklungsdatenbank zu erkunden und zu bewerten, inwieweit diese unter dem Blickwinkel des zu realisierenden Repositoryzugriffs aus dem Tycoon-System heraus benutzbar sind.

Desweiteren soll auf der Tycoon-Ebene eine Bibliothek erstellt werden, die den Zugriff auf alle Repositoryobjekte bietet. Diese Umgebung ist hinsichtlich unterschiedlicher Kriterien wie zum Beispiel Flexibilit"at, Typsicherheit, Wartbarkeit etc. zu bewerten. Au"serdem sollen die der Implementierung zugrundeliegenden Aspekte dokumentiert und erl"autert werden.

\section{Struktur der Arbeit}
\label{Sec:Struktur}

Dieser Einleitung anschlie"send folgt im Kapitel~\ref{Chap:CASE} ein kurzer "Uberblick "uber computerunterst"utzte Anwendungsentwicklung vor dem Hintergrund der Benutzung von {\sf Software through Pictures} und die Integration von CASE-Werkzeugen innerhalb der {\sf StP} Umgebung. Desweiteren werden Dienste und Merkmale der CASE-Umgebung {\sf StP} dargestellt.

Kapitel~\ref{Chap:Repos} vermittelt eine "Ubersicht "uber das {\sf StP Repository}. Eine besondere Betrachtung erf"ahrt das Objektmanagement. Hierbei ist das Informationsmodell, das \engl{Persistent Data Model} (PDM), nach dem das Repository implementiert ist, f"ur die Typisierung der {\sf StP} Bibliothek auf der Tycoon-Ebene von Bedeutung. Ferner wird betrachtet, wie eine Abbildung von Anwendungsdatentypen auf Repositorytypen erfolgt.

Im Kapitel~\ref{Chap:Zugriff} werden werkzeugunabh"angige Zugriffsm"oglichkeiten auf Objekte der {\sf StP} Entwicklungsdatenbank exemplarisch umgesetzt und anschlie"send bewertet. Dabei handelt es sich um ein {\sf StP Query and Reporting Language (QRL)} Skript und ein C-Programm, in welches Funktionen des {\sf StP Application Program Interface (API)} integriert sind.

Die Anbindung des Tycoon-Systems an die {\sf StP} Umgebung wird im Kapitel~\ref{Chap:Anbindung} beschrieben. Dabei wird das Tycoon-System als eine in das {\sf StP} Produktumfeld integrierte Entwicklungsumgebung dargestellt. Der funktionale Umfang der Realisierung des Repositoryzugriffs wird aufgef"uhrt, modelliert und auf Tycoon-Funktionalit"at abgebildet.

Anschlie"send wird im Kapitel~\ref{Chap:Bewertung} eine Bewertung der entwickelten Tycoon-Anbindung an die {\sf StP} Umgebung vorgenommen. Der Zugriff aus dem Tycoon-System auf Repositoryobjekte wird hinsichtlich unterschiedlicher Kriterien bewertet.

Diese Arbeit findet ihren Abschlu"s im Kapitel~\ref{Chap:Zusammen} mit einer Zusammenfassung und einem Ausblick auf eventuell noch zu ber"ucksichtigende Aspekte in Zusammenhang mit dieser Untersuchung.

\clearemptydoublepage
