%&tex
\chapter{Introduction}
\label{introduction}
\section{Context of this Thesis}
    \ac{cps} integrate computation and physical components as an engineered system.
    Automobiles, robots, medical devices and even the smart grid are examples of \ac{cps}.
    The complexity of systems has gone from a embedded system that improved the fuel consumption of a car engine to a fully self-driving vehicle.
    One of the most interesting and complex \ac{cps} today, is the autonomous landing rocket build by SpaceX.
    A problem is that the increasing complexity causes increasing development cost and decreasing reliability.
    Within the research topics, that focus on \ac{cps}, lies the development of new design methods that deal with this complexity problem.
    The \emph{design method} by \textcite{broenink_rapid_2019} is one of these new design methods and focusses on the rapid development of embedded control software.
    One of these design methods is posed by \textcite{broenink_rapid_2019}, which focusses on the rapid development of embedded control software.
    Their main design technique is to split the development into individual steps, which can be implemented and tested separately.
    The testing makes it possible to receive feedback on a short interval, thus improving the quality.
    As part of the research by Broenink and Broenink, they performed a small case study.
    In this case study they designed a controller in software for a physical off-the-shelf system.
    However, developing \ac{cps} incorporates both the computational software side, as well as the development of the physical dynamic side, but the latter is not covered by Broenink and Broenink.
    For this design method to be suitable for a complete design of \ac{cps} it has to be applicable to the physical part as well.
    
    %%In this thesis, the proposed design method is applied and evaluated in the context of the physical part of a \ac{cps}.
    %%This is done in a case study, where a \ac{cps} is designed from scratch.
\section{Research Objective}
    To ensure that the proposed design method is a competent approach for developing the different aspects of \ac{cps}, the design method has to be applied and evaluated in the context of the physical part of a \ac{cps}.
    Directly from the start of this research it was clear that a direct copy of the design method is not possible.
    It is necessary to analyse which design techniques cannot be used and thus how to replace or improve them.
    The research is summarized in the following two research questions:
    \begin{itemize}
        \item Which design techniques of the design method by \textcite{broenink_rapid_2019} can be applied in developing the physical part of \ac{cps}?
        \item Which adaptations are required to make the design method by \textcite{broenink_rapid_2019} such that it is suitable for developing the computation and physical part of \ac{cps}?
    \end{itemize}

\section{Approach}
    This research revolves around performing a development process according to the design method in the form of a case study.
    However, there are a couple of steps required prior to the start of the case study (see \autoref{fig:approach}).
    The first step is to produce a concrete \emph{design plan} based on the design method.
    The concrete design plan improves the evaluation of the design techniques.
    The design method is presented in an abstract form which leaves room for interpretation.
    This uncertainty hampers the evaluation process, because it is impossible to point out flaws in something that was not specific in the first place.
    Therefore, the design method is assessed and detail is added to get a concrete design plan.
    However, the design method focusses on the rapid development principles and modelling techniques, and does not cover the design steps outside of that focus.
    These steps, like problem definition and system specifications, are a crucial part of the design process and are added to create the concrete design plan.
    The added steps are based on the steps in a \ac{se} approach.
    \begin{figure}
        \centering
        \includegraphics[width=9cm]{graphics/approach.pdf}
        \caption{A graph that shows the interconnection of the different steps that are required to prior to the start of the case study.}
        \label{fig:approach}
    \end{figure}

    With a design plan to use in the case study there are two steps left.
    With one step being an evaluation plan to ensure complete and consistent feedback during the case study.
    The design plan consists of multiple design steps that are performed in succession.
    The evaluation plan consists of a list of questions that have to be evaluated for each design step.
    There are specific questions that evaluate the definition, or the execution of the design step.
    The other step is to provide the \emph{subject of design} to develop in the case study.
    Normally, the design process focusses on delivering the end product in the most effective manner.
    However, the goal of this research is to use the design process to evaluate the design method, not to develop a product.
    A possible pitfall is that during the design process a simple solution is found, such that the design techniques to deal with the increased complexity are left untouched.
    Choosing to develop a very complex subject would ensure that all the design techniques are used, except that the limited time budget of a master's thesis does not allow that.
    One of the requirements for the possible subjects is therefore a minimum level of complexity, forcing the developer to not go with the simplest solution.
    Some other requirements, based on practical decisions like budget, tools, and time were defined as well.
    Based on these requirements, the subject of choice is "Writing a tweet on a whiteboard".
    
    With something to develop, a method to develop, and a method to evaluate, the case study is executed.
    Even though the case study was terminated due to the limited amount of time available, it resulted in a partial prototype of a whiteboard writer and a significant amount of evaluation.
    The results made it possible to propose improvements to the design method, not only for the physical part of \ac{cps} but also the cyber part.

\section{Structure}
    The refinement of the design method and adding design steps is done in \autoref{analysis} to define a concrete design plan.
    The evaluation plan and subject of design is defined in \autoref{case_method}.
    The case study is executed in \autoref{case_experiment}, based on the design plan, evaluation plan and subject of design.
    The execution of the case study is evaluated in \autoref{case_evaluation}.
    In \autoref{reflection} the evaluation of the case study and the results are reflected back on the design plan.
    Based on the reflection and the evaluation, an improved design method is proposed in \autoref{improved_design}.
    And finally, the research is concluded in \autoref{conclusion}.
