% the test architecture.

% Develop a test environment or test architecture which will be used 
% for model-based testing of your SUT. Give a sketch of the test 
% architecture, i.e., the positioning of the SUT, test tool(s), 
% adapter(s), logging tool(s), ..., and their connections and 
% interfaces; explain your choices. Try to reuse (parts of) the 
% test-execution automation environment that you developed during the 
% second assignment.

To test the SUT the tool needs to be able to communicate with the adapter, in
this case a Python program. The Python programs listens to a TCP port and
according to the commands received it sends TCP packets using Scapy. As said
before the adapter abstracts away from all the technicalities such as sequence
numbers. Essentially reducing each segment to only its flags (SYN,
ACK, FIN, etc.).

The adapter connects via the SUT to a Java echo server. Thus via TCP the
echo server and the adapter connect. The adapter is an adaptation of the
framework developed for the first part of the assignment. This architecture is
displayed in Figure~\ref{fig:arch}. The tool always does the logging and test
generation.

\begin{figure}[H]
	\centering
	\includegraphics[scale=0.75]{arch.eps}
	\vspace{5mm}
	\caption{Testing architecture}\label{fig:arch}
\end{figure}
