% ------------------------------------------------------------------ %
%                                                                    %
% Datei: valid.tex                                                   %
% Autor: Oliver Nietsch                                              %
%                                                                    %
% Universitaet Hamburg                                               %
% Fachbereich Informatik                                             %
% Arbeitsbereich DBIS                                                %
%                                                                    %
% Thema: Diplomarbeit: Die Modellierung und Validierung dynamischen  %
%                      Systemverhaltens am Beispiel von StP/OMT      %
%                      und Tycoon                                    %
%                                                                    %
% Inhalt: LaTeX-Dokument: Diplomarbeit,                              %
%                         Kapitel 5: Validierung dynamischen         %
%                                    Systemverhaltens, Teil 1/3      %
%                                                                    %
% Version vom 18. 4.1997                                             %
% ------------------------------------------------------------------ %

\chapter{Validierung dynamischen Systemverhaltens}
\label{Chap:Validierung}

Die Validierung eines spezifizierten dynamischen Modells dient zur "Uberpr"ufung, ob das modellierte Systemverhalten den Anforderungen und Erwartungen des Anwenders entspricht. Eine Methode zur Analyse von Systemen und hierbei speziell zur Validierung des modellierten Systemverhaltens ist die Simulation auf der Basis charakteristischer Anwendungsszenarios \cite{gut91}. Die szenariobasierten Validierungsexperimente werden am Modell des dynamischen Systemverhaltens durchgef"uhrt, um R"uckschl"usse auf das zuk"unftige Verhalten des zu realisierenden Anwendungssystems ziehen zu k"onnen. Bei einer korrekten Abbildung des antizipierten Verhaltens des zu spezifizierenden Realsystems auf das zu validierende Modell lassen sich die Abl"aufe des realen, dynamischen Systems im Modell nachvollziehen und Kenntnisse "uber das Modellverhalten sammeln, die in Grenzen R"uckschl"usse auf das Verhalten des zu entwickelnden Anwendungssystems in seiner realen Systemumgebung erlauben \cite{krueger74}.\\

\begin{figure}[hbt]
  \begin{center}
    \ 
    \epsfig{figure=valid.eps,width=11.5cm}
  \end{center}
  \caption{\label{Fig:Analyse} Systemanalyse durch Validierung}
\end{figure}

Das Vorgehen bei der Validierung von Systemen ist in der Abbildung~\ref{Fig:Analyse} dargestellt. F"ur das Verhalten des zu entwickelnden Systems wird, wie in Abschnitt~\ref{SubSec:Dynam} vorgestellt, ein dynamisches Modell aller relevanten Zust"ande und Zustands"uberg"ange erstellt. Daraufhin wird die Validierung an diesem dynamischen Modell durchgef"uhrt, um zu Validierungsergebnissen zu gelangen, mit deren Hilfe Aussagen "uber das Verhalten des Modells getroffen werden k"onnen. Eine anschlie"sende Interpretation dieser Aussagen "uber das dynamische Modell erm"oglicht Schlu"sfolgerungen "uber das reale Systemverhalten. Diese k"onnen dann, wie in Abschnitt~\ref{Sec:Einordnung} dargestellt, in den Softwareentwicklungsproze"s einflie"sen, um anhand der Validierungsergebnisse eine mit dem Anwender zusammen entwickelte optimale Gestaltung des dynamischen Modells zu erreichen.

Validierungsmodelle k"onnen in unterschiedliche Kategorien eingeteilt werden \cite{page91}:

\begin{itemize}
  \item Erkl"arungsmodelle, welche die Struktur des zu realisierenden Anwendungssystems so detailliert wiedergeben, da"s sie zur Erkl"arung des antizipierten Systemverhaltens herangezogen werden k"onnen.
  \item Prognosemodelle, um zuk"unftige Systemzust"ande des zu realisierenden Anwendungssystems unter gegebenen Annahmen abzusch"atzen.
  \item Gestaltungsmodelle als Entscheidungshilfen beim Entwurf von Systemen.
  \item Optimierungsmodelle zur Ermittlung und Realisierung optimaler Systemzust"ande und Zustands"uberg"ange.
\end{itemize}

Innerhalb dieser Arbeit wird die Validierung eines dynamischen Modells sowohl als eine Prognose-, Gestaltungs- und Optimierungsmethode betrachtet, um das endg"ultige System den Anforderungen der Anwender entsprechend realisieren zu k"onnen, als auch als Erkl"arungsm"oglichkeit zwischen Entwicklern und Anwendern innerhalb eines Softwareentwicklungsprojekts, um f"ur beide Rollen eine Durchschaubarkeit des zu entwickelnden Systems zu erreichen.

Eine in diesem Kapitel vorgestellte Validierungstechnik ist die in Abschnitt~\ref{SubSec:DynVal} dargestellte szenariobasierte Simulation eines dynamischen Modells, das entweder in einer textuellen Repr"asentation vorliegt (vgl. {\sl Television} Statechart in Anhang~\ref{Ann:TVschnitt}) oder welches als Validierungsprototyp aus seiner StP/OMT Repr"asentation generiert wird. Beide Wege f"uhren zu einer Tycoon Repr"asentation des dynamischen Modells, wie sie in Kapitel~\ref{Chap:Harel} beschrieben ist. Dabei k"onnen an die Tycoon Repr"asentation des dynamischen Modells eines Systems, wie in Abschnitt~\ref{SubSec:ExternDienst} erl"autert, externe Dienste angebunden werden, welche als Ereignisausl"oser und -empf"anger eine interaktive Simulation erm"oglichen.

\section{Einordnung in den Softwareentwicklungsproze"s}
\label{Sec:Einordnung}

Die in Abschnitt~\ref{Sec:OOMod} dargestellte \engl{Software Engineering} Methode OMT deckt alle Phasen des Softwarelebenszyklus ab \cite{rumb91}. Im Rahmen der Validierung dynamischen Systemverhaltens liegt der in dieser Arbeit untersuchte Bereich innerhalb der Methode OMT ausschlie"slich in ihrer Analysephase, da als Ziel der Validierung des dynamischen Modells am Ende der Analysephase ein valides dynamisches Modell existieren soll, welches als stabile Grundlage f"ur die nachfolgenden Phasen eines Softwareentwicklungsprojekts gilt.

Ziel der Analyse ist es, die zu erstellende Anwendung und die Dom"ane, in der sie zum Einsatz kommen soll, zu verstehen und zu modellieren.\\

\begin{figure}[hbt]
  \begin{center}
    \ 
    \epsfig{figure=valproc.eps,width=12cm}
  \end{center}
  \caption{\label{Fig:ValProc} Einordnung der Validierung in den Modellierungsproze"s}
\end{figure}

In der Abbildung~\ref{Fig:ValProc} ist der Proze"s der Validierung des dynamischen OMT Modells in die Analysephase der OMT Methode in der Notation des funktionalen OMT Modells dargestellt. Ausgehend von einer Problembeschreibung, die in einer informellen Art vorliegt und die Anforderungen der Anwender und Entwickler umfa"st, aber auch Vorgaben von Entscheidungstr"agern beinhaltet, wird neben dem hier nicht als relevant betrachteten Objektmodell und dem funktionalen Modell ein dynamisches Modell erstellt. Dieses Teilmodell des gesamten Analysemodells stellt eine pr"azise und formalisierte Repr"asentation des in der Problemstellung formulierten Systemverhaltens dar, auf dessen Basis in der anschlie"senden Entwurfsphase eine globale Probleml"osungsstrategie f"ur die Implementierung des Systemverhaltens entwickelt wird \cite{rumb91}. Neben dem in Abschnitt~\ref{Sec:OOMod} erl"auterten OMT Objektmodell und dem funktionalen OMT Modell wird in dieser Arbeit haupts"achlich das dynamische OMT Modell untersucht.

Eine Entwicklung gro"ser Modelle geschieht auf iterativem Wege. Zun"achst wird nur eine Untermenge des kompletten Modells erstellt, die dann  solange erweitert und komplettiert wird, bis alle operationalen Aspekte der Problemstellung innerhalb des dynamischen Modells ihre Entsprechung finden. In diesem Zusammenhang wird die Validierung mit Hilfe des Anwenders in den Proze"s der Analyse eingef"uhrt, wobei das Validierungsergebnis im n"achsten Iterationsschritt beim Erstellen der n"achsten Version des dynamischen Modells vom Entwickler ber"ucksichtigt wird. Die so erstellte Folgeversion des dynamischen Modells wird mit Hilfe des Anwenders wiederum einer Validierung unterzogen.

Dieser Validierungszyklus innerhalb der Analysephase zwischen dem Anwender und dem Entwickler ist in der Abbildung~\ref{Fig:ValZyc} dargestellt.\\

\begin{figure}[hbt]
  \begin{center}
    \ 
    \epsfig{figure=modzyc.eps,width=12cm}
  \end{center}
  \caption{\label{Fig:ValZyc} Validierungszyklus}
\end{figure}

Hierbei wird ein entwickeltes dynamisches Modell auf seine Validit"at untersucht. Validit"at bezeichnet die Zul"assigkeit der Modellstruktur und -logik vor den Anforderungen des Anwenders \cite{heni84}. Im Rahmen der Validierung des Systemverhaltens wird speziell die operationale Validit"at eines Modells "uberpr"uft, die im Gegensatz zur Datenvalidit"at ausschlie"slich das Modellverhalten betrachtet. Entspricht die Validit"at des dynamischen Modells den Erwartungen des Anwenders, so wird das erstellte und nach einigen Iterationsschritten endg"ultig validierte dynamische Modell als Grundlage f"ur das weitere Vorgehen in der Entwurfsphase des Softwarelebenszyklus genommen.

Modellvalidierung kann also als ein Proze"s betrachtet werden, der erg"anzend zum eigentlichen Modellierungsproze"s innerhalb der OMT Analysephase eines Anwendungsentwicklungsprojekts abl"auft, um f"ur den Entwurf ein ausreichend validiertes Modell zur Verf"ugung zu stellen.

\section{Validierungstechniken}
\label{Sec:ValVer}

Dem Systemanalytiker und Anwender stehen mehrere Techniken zur Verf"ugung, um ausgehend von einem dynamischen Modell G"ultigkeitsnachweise f"ur die Erwartungskonformit"at des zu entwerfenden Systems durchzuf"uhren. Diese G"ultigkeitsnachweise im Rahmen der Validierung befassen sich im Gegensatz zur Verifikation von formal beweisbaren Modelleigenschaften (\engl{``Are we building the product right?''} \cite{boehm79}) mit den folgenden Problemstellungen:

\begin{itemize}
  \item \engl{``Are we building the right product?''} \cite{boehm79}
  \item Ist die Spezifikation des dynamischen Systemverhaltens anwendergerecht?
  \item Kann eine Erwartungshaltung des Anwenders dem Systemverhalten gegen"uber mit Hilfe der Systemspezifikation befriedigt werden?
\end{itemize}

Da das Untersuchungsgebiet der Validierung nicht in mathematisch beweisbarer Form vorliegt \cite{neufeld93}, kann eine Untersuchung hinsichtlich der Erwartungskonformit"at des Anwenders nur dadurch erreicht werden, da"s der Anwender, wie in Abschnitt~\ref{Sec:Einordnung} dargestellt, in den Validierungsproze"s einbezogen wird.

Ausgehend vom CASE Werkzeug StP/OMT mu"s festgestellt werden, da"s dieses keinerlei Validierungsmethodik f"ur eine mit den StP/OMT Modelleditor f"ur das dynamische OMT Modell entwickelte Spezifikation des Verhaltens eines Systems zur Verf"ugung stellt. F"ur die "Uberpr"ufung der operationalen Validit"at eines so entwickelten dynamischen Modells werden die folgenden Techniken unter Verwendung des Tycoon Systems als Basistechnologie zur Implementierung vorgestellt:

\begin{itemize}
  \item Generierung eines Tycoon Validierungsprototypen aus einem vorliegenden StP/OMT dynamischen Modell.
  \item Interaktive Simulation auf diesem generierten Tycoon Validierungsprototypen durch den Anwender. Hierzu ist es m"oglich, externe Dienste an diese Tycoon Modellrepr"asentation anzubinden, welche in einer ereignisausl"osenden oder ereignisaufnehmenden Beziehung zum generierten Tycoon Validierungsprototypen stehen.
  \item Analyse von Ereignispfaden ausgehend von einem OMT Ereignispfaddiagramm (vgl. Abschnitt~\ref{SubSec:Dynam}).
\end{itemize}

Sowohl die interaktive Simulation inklusive der Anbindung externer Dienste als auch die Analyse von Ereignispfaden k"onnen ebenfalls unabh"angig von der Generierung einer Tycoon Repr"asentation aus dem dynamischen StP/OMT Modell anhand eines innerhalb der Tycoon Modellierungsumgebung {\sl StatechartEnv} separat entworfenen dynamischen Modells erfolgen. Daf"ur stellt die in Anhang~\ref{Ann:SchnittStatechartenv} wiedergegebene Modellierungsumgebung {\sl StatechartEnv} die entsprechenden Operationen zur Verf"ugung.

\subsection{Generierung validierbarer Prototypen}
\label{SubSec:Prototyp}

Ein Ziel dieser Arbeit ist die automatische Generierung eines Validierungsprototypen aus einem vorliegenden dynamischen StP/OMT Modell. Dieses modellbasierte \engl{Prototyping} \cite{glinz93}, also die Generierung eines Prototypen aus der in der Form eines dynamischen Modells vorliegenden Spezifikation des Systemverhaltens, hat gegen"uber der expliziten Programmierung eines Prototypen die folgenden Vorteile:

\begin{itemize}
  \item Ein Modell beschreibt die Strukturen und Zusammenh"ange in einem System. Ein programmierter Prototyp kann hingegen nur indirekt "uber die Analyse seines Verhaltens Aussagen "uber den Systemaufbau bieten.
  \item Modelle sind weniger aufwendig "anderbar als Programmkode.
  \item Nach Abschlu"s des modellbasierten \engl{Prototyping} unter Durchlaufen des in Abschnitt~\ref{Sec:Einordnung} erl"auterten Validierungszyklus zwischen Anwender und Entwickler steht mit dem Modell eine komplette und abstrakte Vorgabe f"ur die Realisierung des Anwendungssystems in den nachfolgenden Entwicklungsphasen zur Verf"ugung.
  \item Ein durch modellbasiertes \engl{Prototyping} erzeugter Prototyp realisiert ausschlie"slich die im Modell ber"ucksichtigten Anforderungen.
\end{itemize}

In der Abbildung~\ref{Fig:Generg} ist der Pfad von einem StP/OMT dynamischen Modell zu einem validierbaren Tycoon Prototypen im Rahmen des modellbasierten \engl{Prototyping} dargestellt.\\

\begin{figure}[hbt]
  \begin{center}
    \ 
    \epsfig{figure=stp2tyc.eps,width=14cm}
  \end{center}
  \caption{\label{Fig:Generg} Modellbasiertes Prototyping}
\end{figure}

Ausgangspunkt ist hierbei eine mit dem StP/OMT Diagrammeditor f"ur das dynamische OMT Modell entwickelte Verhaltensspezifikation eines zu entwerfenden Systems. Wie in Abschnitt~\ref{SubSec:Dynam} vorgestellt, k"onnen Zust"ande dieses dynamischen Modells mit Hilfe des StP/OMT Tabelleneditors z.B. um Eingangs- und Ausgangsaktionen erg"anzt werden. Diese OMT Objekte eines dynamischen StP/OMT Modells, wie zum Beispiel Objekte vom StP/OMT Anwendungsdatentyp {\tt OMTState} (Zust"ande), {\tt OMTConcurrentState} (ODER-Zust"ande), {\tt OMTTransition} (Zustands"uberg"ange), {\tt OMTAction} (Aktionen), {\tt OMTActivity} (Aktivit"aten) etc. werden mit Hilfe der in Abschnitt~\ref{SubSec:Sicht} erl"auterten StP Abbildungsdatei {\tt omt.app.types} auf die vom StP Repository verwendeten StP PDM Datentypen in einer relationalen Struktur abgebildet. Eine Tabelle, welche die Beziehungen zwischen Objekten eines dynamischen OMT Modells und ihren entsprechenden StP/OMT Anwendungsdatentypen und deren Abbildung auf die mit ihnen assoziierten StP PDM Datentypen zeigt, ist in \cite{StPmod93} aufgef"uhrt.

Beispielsweise entspricht ein Zustand (vgl. Abschnitt~\ref{Sec:Zustand}) innerhalb eines mit dem CASE Werkzeug StP/OMT erstellten dynamischen OMT Modells dem StP/OMT Anwendungsdatentyp {\tt OMTState}, welcher bei der Speicherung im Repository auf ein Tupel vom StP PDM Datentyp {\tt node} abgebildet wird.\\

\begin{table}[hbt]
\begin{center}
\begin{tabular}{|c|c|c|c|c|}
\hline
\vdots & \vdots & \vdots & \vdots & \vdots\\
\hline
{\bf {\tt Node}} & {\bf {\tt Type}} & {\bf {\tt Name}} & {\bf {\tt ScopeId}} & \ldots\\
\hline
\vdots & \vdots & \vdots & \vdots & \vdots\\
{\tt 102} & {\tt OMTState} & {\tt Television} & {\tt 0} & \ldots\\
{\tt 106} & {\tt OMTState} & {\tt Power\_Off} & {\tt 102} & \ldots\\
{\tt 108} & {\tt OMTState} & {\tt Power\_On} & {\tt 102} & \ldots\\
\vdots & \vdots & \vdots & \vdots & \vdots\\
\hline
\end{tabular}
\end{center}
\caption{Abbildung von Zust"anden auf das StP Repository}
\label{Tab:RepNode}
\end{table}

In der Tabelle~\ref{Tab:RepNode} ist ein Ausschnitt der relationalen StP Repositorystruktur f"ur Tupel des StP PDM Datentypen {\tt node} exemplarisch dargestellt. Die Verfeinerung eines Zustands erfolgt auf dieser relationalen Abstraktionsebene mit Hilfe des Attributs {\tt ScopeId}, welches angibt, zu welchem direkten Vorfahrzustand die einzelnen {\tt node} Tupel zugeordnet werden. Ein Wurzelzustand auf h"ochster Abstraktionsebene (hier: Zustand {\sl Television}) besitzt als {\tt ScopeId} den Wert {\tt 0}. In der Tabelle~\ref{Tab:RepNode} ist der in der Abbildung~\ref{Fig:StChart1Abstrkt} verfeinert dargestellte Zustand {\sl Television} als Tupel des StP PDM Datentyps {\tt node} wiedergegeben, welcher als Nachfahrzust"ande die Tupel {\tt Power\_On} und {\tt Power\_Off} umfa"st.

Die Ablage der StP/OMT Anwendungsdatentypen des dynamischen StP/OMT Modells im StP Repository wird, wie in Abschnitt~\ref{SubSec:Basis} gezeigt, mit Hilfe des StP Object Management Systems realisiert. Hierbei werden die Diagrammelemente und die Elemente der zugeh"origen Zustandstabellen vor der Speicherung auf das Erf"ullen von Konsistenzkriterien und Integrit"atsbedingungen gepr"uft.

Innerhalb der Tycoon Modellierungs- und Validierungsumgebung dynamischen Systemverhaltens kann ein Programmierer eine Tycoon Repr"asentation eines dynamischen StP/OMT Modells zwecks nachfolgender Validierung mit der TL Funktion {\sl generateStatechart} automatisch generieren lassen:

\begin{xple}
     \k{import} stp2Tycoon

     \k{let} projdir = "{}/local/dbis11/software/StP/project"{}
     \k{let} system = "{}nietsch"{}
     \k{let} rootState = "{}Television"{}

     \k{let} tv = stp2Tycoon.generateStatechart(projdir system rootState)
\end{xple}

F"ur die Generierung eines Tycoon Validierungsprototypen {\sl TV}, gebunden an den TL Bezeichner {\sl tv}, aus den innerhalb des StP Repositorys abgelegten Objekten eines dynamischen StP/OMT Modells m"ussen im Rahmen der TL Funktion {\sl generateStatechart} die folgenden Schritte durchgef"uhrt werden:

\begin{enumerate}
  \item Die StP Repositoryobjekte des zu validierenden dynamischen StP/OMT Modells m"ussen aus der Menge aller im StP Repository abgelegten Modellierungsobjekte s"amtlicher StP/OMT Modelle unter Verwendung der Operationen des in Abschnitt~\ref{Sec:Modellierg} dargestellten StP \engl{Gateways} anhand ihres Wurzelzustands (\engl{Root State}) transitiv identifiziert werden. Dazu geh"oren Repositoryobjekte vom StP PDM Datentyp {\tt node}, {\tt link} und {\tt item}, welche die oben erl"auterten Objekte eines dynamischen StP/OMT Modells repr"asentieren.

\begin{xple}
            \k{let} rootNode = getOnly(omsCollection.create(... omsQuery.new(
              "{}node$[$name = $\setminus$'"{} $<$$>$ rootState $<$$>$ "{}$\setminus$'"{} $<$$>$ "{} \&\& scope\_node\_id = 0$]$"{})))
            ...
            \k{let} stateCollection = buildScopedCollection(... rootNode ...)
            ...
            \k{let} transitionCollection = omsCollection.create(... omsQuery.new(
              "{}item$[$value != NULL \&\& type = 501701$]$"{}))
            ...
\end{xple}

Mit Hilfe der in Abschnitt~\ref{SubSec:ZugriffRep} dargestellten StP OMS Anfragen gelingt es, eine Kollektion ({\sl stateCollection}) aller transitiv erreichbarer Zust"ande eines Wurzelzustands eines dynamischen StP/OMT Modells zu erstellen. Ebenso wird eine Kollektion aller Zustands"uberg"ange ({\sl transitionCollection}) zwischen diesen Zust"anden angelegt (vgl. StP PDM Datentyp Identifikator {\tt 501701} in Abbildung~\ref{Fig:appTyp} auf Seite~\pageref{Fig:appTyp}).
  \item Die identifizierten StP Repositoryobjekte eines dynamischen StP/OMT Modells m"ussen mit Hilfe der in Kapitel~\ref{Chap:Harel} dargestellten TL Funktionen zu einer Tycoon Statechart Repr"asentation vom Tycoon Datentyp {\sl statechart.Chart} (vgl. Tycoon Schnittstelle {\sl Statechart} in Anhang~\ref{Ann:ModulStatechart}) zusammengef"ugt werden, welche dem Anwender zur Validierung des dynamischen Systemverhaltens ausgehend von dieser Tycoon Repr"asentation eines dynamischen StP/OMT Modells die in  Abschnitt~\ref{Sec:Vorgehen} vorgestellten Validierungsoperationen zur Verf"ugung stellt (modellbasierter Validierungsprototyp).

\begin{xple}
            \k{let} allStates(...) = buildAllStates(stateCollection)
            ...
            iter.forEach(... allStates \k{fun}(state ...) :\k{Ok}
              \k{if} basicState(state) \k{then}
                ...
                statechart.createBasicState(stateLabel inActions ...)
              \k{end})
            ...
\end{xple}

F"ur alle Zust"ande innerhalb der Kollektion {\sl stateCollection} wird eine Tycoon Statechart Repr"asentation eines dynamischen StP/OMT Modells unter Verwendung der innerhalb der Tycoon Modellierungsumgebung {\sl StatechartEnv} exportierten Funktionen aufgebaut. Beispielsweise werden Basiszust"ande innerhalb der Kollektion {\sl stateCollection} mit Hilfe der in Abschnitt~\ref{SubSec:Basis} erl"auterten TL Operation {\sl createBasicState} generiert.

Auf diese Art werden ebenfalls Zustands"uberg"ange, Aktionen und Aktivit"aten eines dynamischen StP/OMT Modells in eine Tycoon Statechart Repr"asentation "uberf"uhrt.
\end{enumerate}

Solch ein automatisch generierter Tycoon Validierungsprototyp dient als Grundlage der in Abschnitt~\ref{Sec:Vorgehen} dargestellten Vorgehensweise zur modellbasierten Verhaltensanalyse von spezifizierten Systemen im Rahmen der Analysephase der OMT Methode.

"Uber den in Abbildung~\ref{Fig:Generg} dargestellten Pfad von einem StP/OMT dynamischen Modell zu einem validierbaren Tycoon Prototypen im Rahmen des modellbasierten \engl{Prototyping} k"onnen mit Hilfe des StP/OMT Tabelleneditors Tycoon Kodefragmente mit Aktionen von Zust"anden eines dynamischen Modells assoziiert werden. Zu diesem Zweck werden die mit dem StP/OMT Tabelleneditor in der Form von Zeichenketten spezifizierten und anschlie"send im StP Repository abgelegten TL Anweisungen bei der Prototyp Generierung auf der Tycoon Ebene aus dem Repository gelesen (vgl. Operationen des StP Object Management Systems f"ur den StP Repositoryzugriff in Abschnitt~\ref{Sec:Transfer}). Der Tycoon \engl{Compiler} "ubersetzt zur Generierungszeit des Prototypen die aus dem Repository gelesenen Zeichenketten in Tycoon Funktionen. Anschlie"send erfolgt zur Laufzeit eine reflektive Einbindung \cite{atkinson91} der vom Tycoon \engl{Compiler} generierten Tycoon Funktionen in den Validierungsprototypen an den im StP/OMT Tabelleneditor spezifizierten Eingangs- und Ausgangsaktionen der entsprechenden Zust"ande des dynamischen Modells.

Dieser Vorgang der Reflektion ist auschlie"slich als Erweiterungsm"oglichkeit des modellbasierten \engl{Prototyping} vorgesehen und kein Untersuchungspunkt dieser Arbeit.

\newpage
\input{valid2}
