\documentclass[fontsize=12pt,draft=false]{scrartcl}

%%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath, amssymb}
\usepackage[inline]{enumitem}
\usepackage[hidelinks]{hyperref}
\usepackage{tabularx} % used for better table formatting see: https://en.wikibooks.org/wiki/LaTeX/Tables#The_tabularx_package
\usepackage[table]{xcolor}
\usepackage{float} % used to allow the [H] option for tables, etc.
\usepackage{verbatim}	% makes multiline comments possible via 

%%% SETTINGS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{parskip}  % makes end of paragraphs use an empty line
\setlength\parindent{0pt} % no indentation

\def\arraystretch{1.0} % extra padding in tables

\definecolor{light-gray}{gray}{0.85}

%%% COMMANDS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\tabHead}[1]{\parbox{0.14\textwidth}{\medskip\textbf{#1}\medskip}}
\newcommand{\tabBody}[1]{\parbox{0.81\textwidth}{\medskip        #1 \medskip}}

%%% META INFORMATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\title{Hochautomatisiertes Fahren}
\subtitle{Funktionstestplan}
\author{Gruppe A}

%%% DOCUMENT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
  
\maketitle
\tableofcontents

\clearpage

\section{Beschreibung}
In diesem Dokument werden Tests spezifiziert, die \"uberpr\"ufen, ob das System die im Lastenheft spezifizierten Usecases implementiert.

\section{Testcases}
\subsection{FT - 01 Status ausgeben}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 01 Status ausgeben} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Laptop \"uber WLAN mit dem Fahrzeug verbinden
      \item Monitoring-Funktion aktivieren.
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Interne Daten (Geschwindigkeit, Position, Kolonnendaten) werden am Laptop angezeigt.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 01 Status ausgeben} \label{tab:FT - 01 Status ausgeben}
\end{table}

\subsection{FT - 02 Spur halten}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 02 Spur halten} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Fahrbahn mit Kurven durch 2 weiße Streifen markieren.
      \item Fahrzeug auf die Strecke stellen.
      \item Fahrzeug booten.
      \item Laptop mit Fahrzeug.
      \item Sollgeschwindigkeit von 5m/s an Fahrzeug \"ubertragen.
      \item Nach 10s eine Sollgeschwindigkeit von 0m/s an Fahrzeug \"ubertragen und Test beenden.
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Das Fahrzeug f\"ahrt mit 5m/s. W\"ahrend der gesamten Fahrt bleibt das Fahrzeug innerhalb der Fahrbahn. Wenn die Sollgeschwindigkeit von 0m/s \"ubertragen wird, h\"alt das Fahrzeug an.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 02 Spur halten} \label{tab:FT - 02 Spur halten}
\end{table}

\subsection{FT - 03 Adaptive Cruise Control}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 03 Adaptive Cruise Control} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Strecke mit 2 weißen Streifen markieren.
      \item Fahrzeug 1 auf die Strecke stellen.
      \item Fahrzeug 2 5m vor Fahrzeug 1 auf die Strecke stellen.
      \item Fahrzeuge booten.
      \item Laptop mit Fahrzeug 1 und 2 verbinden.
      \item Sollgeschwindigkeit von 5m/s an Fahrzeug 1 \"ubertragen.
      \item Sollgeschwindigkeit von 3m/s an Fahrzeug 2 \"ubertragen.
      \item Nach 10s eine Sollgeschwindigkeit von 0m/s an Fahrzeug 2 \"ubertragen.
      \item Fahrzeug 2 von der Strecke entfernen.
      \item Nach 5s eine Sollgeschwindigkeit von 0m/s an Fahrzeug 1 \"ubertragen und Test beenden.
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Beide Fahrzeuge fahren zun\"achst mit den ihnen \"ubertragenen Geschwindigkeiten. W\"ahrend der gesamten Fahrt bleiben die Fahrzeuge innerhalb der weißen Streifen. Wenn Fahrzeug 1 Fahrzeug 2 bis auf $???$m Sicherheitsabstand einholt, \"reduziert Fahrzeug 1 die Geschwindigkeit, um den Sicherheitsabstand konstant zu Fahrzeug 2 zu halten. Wenn Fahzeug 2 die Geschwindigkeit auf 0m/s setzt, f\"ahrt Fahrzeug 1 bis zum Sicherheitsabstand an Fahrzeug 2 an und h\"alt auch an. Nachdem Fahrzeug 2 von der Strecke entfernt wird, f\"ahrt Fahzeug 1 seine Sollgeschwindigkeit von 5m/s. Wenn die Sollgeschwindigkeit von 0m/s an Fahrzeug 1 gesendet wird, h\"alt Fahzeug 1 und der Test ist beendet.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 03 Adaptive Cruise Control} \label{tab:FT - 03 Adaptive Cruise Control}
\end{table}

\subsection{FT - 04 Kolonne erstellen}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 04 Kolonne erstellen} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Fahrzeug 1 hinstellen.
      \item Fahrzeug 2 hinter Fahrzeug 1 stellen  
      \item Fahrzeuge booten.
      \item Laptop mit Fahrzeug 1 und 2 verbinden.
      \item Create-Platoon Befehl an beide Fahrzeuge senden. 
      \item Status beider Fahrzeuge auslesen.
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Beide Fahrzeuge sind in einer Kolonne. Fahrzeug 1 ist Leader Vehicle und Fahrzeug 2 ist Follower Vehicle. Fahrzeug 1 hat eine Mitgliederliste der Kolonne, in der die IDs von Fahrzeug 1 und Fahrzeug 2 sind.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 04 Kolonne erstellen} \label{tab:FT - 04 Kolonne erstellen}
\end{table}

\subsection{FT - 05 Kolonne beitreten}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 05 Kolonne beitreten} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Mit 2 Fahrzeugen den Test ``Kolonne erstellen'' durchf\"uhren.
      \item Fahrzeug 3 hinter die ersten beiden Fahrzeuge stellen.
      \item Fahrzeug 3 booten.
      \item Fahrzeug 3 mit Laptop verbinden.
      \item Join-Platoon Befehl an Fahrzeug 3 senden.
      \item Status der Fahrzeuge auslesen. 
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Alle drei Fahrzeuge sind in einer Kolonne. In der Mitgliederliste der Kolonne sind die IDs aller 3 Fahrzeuge.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 05 Kolonne beitreten} \label{tab:FT - 05 Kolonne beitreten}
\end{table}

\subsection{FT - 06a Kolonne verlassen}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 06a Kolonne verlassen} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Mit 3 Fahrzeugen den Test ``Kolonne beitreten'' durchf\"uhren.
      \item Leave-Platoon Befehl an Fahrzeug 3 senden.
      \item Status der Fahrzeuge auslesen.
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Fahrzeuge 1 und 2 sind in einer Kolonne. In der Mitgliederliste der Kolonne sind die IDs von Fahrzeug 1 und 2. Fahrzeug 3 ist in keiner Kolonne. } \\ \hline
    
  \end{tabularx}
  \caption{FT - 06a Kolonne verlassen} \label{tab:FT - 06a Kolonne verlassen}
\end{table}

\subsection{FT - 06b Kolonne verlassen}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 06b Kolonne verlassen} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Mit 3 Fahrzeugen den Test ``Kolonne beitreten'' durchf\"uhren.
      \item Leave-Platoon Befehl an Fahrzeug 2 senden.
      \item Status der Fahrzeuge auslesen.
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Kolonne wird aufgel\"ost, also keins der Fahrzeuge ist in einer Kolonne.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 06b Kolonne verlassen} \label{tab:FT - 06b Kolonne verlassen}
\end{table}

\subsection{FT - 06c Kolonne verlassen}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 06c Kolonne verlassen} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{\begin{enumerate}[leftmargin=*]
      \item Mit 2 Fahrzeugen den Test ``Kolonne erstellen'' durchf\"uhren.
      \item Leave-Platoon Befehl an Fahrzeug 2 senden.
      \item Status der Fahrzeuge auslesen.
    \end{enumerate}} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Kolonne wird aufgel\"ost.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 06c Kolonne verlassen} \label{tab:FT - 06c Kolonne verlassen}
\end{table}

\subsection*{FT - 07 Cooperative Adaptive Cruise Control}
\begin{table}[H] \centering
  \rowcolors{1}{light-gray}{white}
  \begin{tabularx}{\textwidth}{|c|X|} \hline
    \tabHead{Id} & 
    \tabBody{FT - 07 Cooperative Adaptive Cruise Control} \\ \hline
    
    \tabHead{Ablauf} &
    \tabBody{Siehe Akzeptanztest.} \\ \hline
    
    \tabHead{erwartetes Ergebnis} &
    \tabBody{Siehe Akzeptanztest.} \\ \hline
    
  \end{tabularx}
  \caption{FT - 07 Cooperative Adaptive Cruise Control} \label{tab:FT - 07 Cooperative Adaptive Cruise Control}
\end{table}

\section{Zeitplan}
Nach der vollst\"andigen Entwicklung des Gesamtsystems.

\end{document}