\section[Software]{Die Software TOPCASED}
\frame{ \frametitle{TOPCASED}

  \begin{block}{Bedeutung}
    Steht f\"{u}r Toolkit in Open Source for Critical Applications \& Systems Development.
  \end{block}

  \pause
  \begin{block}{Verwendung}
    Zur Anforderungsanalyse, Modellierung, Simulation, Implementierung, Test, Validierung und Projektmanagement \dots

  \pause
  \begin{itemize}
        \item Luft- und Raumfahrttechnik
    \end{itemize}
  \end{block}
}

\section[Vorgehen]{Vorgehensmodell}
\frame{ \frametitle{Vorgehensmodell}

  \begin{block}{Ansatz}
    \begin{description}
      \item[MDSD] Model Driven Software Development
    \end{description}
  \end{block}

  \pause
  \begin{block}{}
    \begin{enumerate}
      \item Modellierung
      \item Transformation
      \item Codegenerierung
    \end{enumerate}
  \end{block}

  \pause
  \begin{block}{}
    \begin{itemize}
      \item In TOPCASED enthalten, daher auch \textbf{\textit{integriertes Werkzeug}} des MDSD
    \end{itemize}
  \end{block}
}

\frame{ \frametitle{Beispiel}

  \begin{columns}[<c>]
    \begin{column}{2cm}
        \structure{Modell}
    \end{column}
    \begin{column}{6cm}
      \begin{figure}
        \centering
        \includegraphics[height=2.5cm]{pics/modell_class.png}
      \end{figure}
    \end{column}
  \end{columns}

  \begin{columns}[<c>]
    \begin{column}{2cm}
        \structure{Code}
    \end{column}
    \begin{column}{6cm}
      \begin{figure}
        \centering
        \includegraphics[height=4cm]{pics/quellcode.png}
      \end{figure}
    \end{column}
  \end{columns}
}

\section[Generierung]{Generierung von Code}
\frame{ \frametitle{Codegenerierung}

  \begin{block}{Was?}
    Ist die auto. Erzeugung von Quellcode in einer best. Programmiersprache
  \end{block}

  \pause
  \begin{block}{Wie?}
    Ein \structure{Codegenerator} \"{u}bersetzt ein Modell
  \end{block}

  \pause
  \begin{block}{Generator?}
    Ein Computerprogramm f\"{u}r die Softwareentwicklung.
    \begin{itemize}
      \item Input: Modelle in einer Meta-Sprache (wie UML, ..)
      \item Output: Eine Programmiersprache (wie Java, ..), also Quellcode
    \end{itemize}
  \end{block}
}
