%&tex
\chapter{Design Method Evaluation}
    \label{chap:reflection}

    \section{Factorizing features}
        During the course of this study, the concepts of specifications, components and functions are added to the design method.
        As explained in the background chapter, having an approach to determine specifications is a crucial concept of a design process.
        Because \ac{ridm} did not include such an approach, a \ac{se} approach was added.
        The aim of the \ac{se} approach is to deliver a set of features to be used in the \ac{ridm}.
        To be more specific, the set of features was expected to be the result of the feature definition step.
        Contrary to that expectation, multiple attempts for this step did not produce a satisfactory definition of features.
        As explained in \autoref{sec:case_featuredefinition}, there was a clear discrepancy between the expected and resulting features.
        It was expected to get features in the form of components that can be developed during the design process.
        However, the resulting features came off as functions of the system.
        In the end, a solution was found in the RobMoSys approach.
        Even though the RobMoSys approach was too comprehensive for this case study, it provided the basis for the split between functions and components.
        Furthermore, it resulted in the hierarchical structure of functions and sub-functions as shown in \autoref{fig:robmosys}.

        \begin{figure}
            \centering
            \includegraphics[width=85mm]{graphics/functional_relation.pdf}
            \caption{Relations and elements within a feature. \autocite{kordon_model-based_2007}}
            \label{fig:functional_relation}
        \end{figure}

        Creating a hierarchy for the functions and a separate set of components allowed for the continuation of the case study.
        There were still a number of challenges with this approach.
        For example, it was almost impossible to divide the specifications between components and functions.
        Furthermore, the roll of electronics did not fit in the current approach either.
        In reviewing the literature, the approach used in this case study shows clear resemblances with \ac{mbed} \autocite{kordon_model-based_2007}.
        \ac{mbed} introduces explicit relations between the requirements, components and functions, as shown in \autoref{fig:functional_relation}.
        Additionally, the paper includes a layout for the hierarchy of requirements, functions and components.
        Based on this, the approach by \textcite{kordon_model-based_2007} further supports the idea of dividing features into specifications or requirements, functions, and components.

        What is interesting about this new insight is that it helps to understand the difference with the case study performed by \textcite{broenink_rapid_2019}.
        The hardware components used by Broenink and Broenink was a mini-segway, which was designed for a student project.
        The requirement of this mini-segway is that has to balance, drive, and steer.
        Causing the requirements and components to be implicitly defined in their case study.
        Therefore, the function that needs to be implemented, fits very well within the definition of a feature.

    \section{Information Flow}
        %% Aanknopen op het vorige verhaal?
        Although team members improve the information flow within a design team, it does not guarantee that all information is available.
        Throughout the case study, more and more information becomes available.
        During the initial design, new insight was gained that would have been useful during the problem description and the specifications step.
        And while making the tests, it became clear that the specifications were incomplete.
        It is possible to review the specifications step, but the succeeding steps have to be redone as well. 
        During the case study, I decided to continue with the design due to the scope of the research, namely the development design cycle was.

        Dealing with these design changes is a known weakness of the waterfall model.
        Many publications give credit to \textcite{royce_managing_1970}, for the concept of the waterfall model.
        Where they refer to the simple 5 to 8 step design concept, similar to the one in \autoref{sec:SE}.
        What these publications fail to address is that \textcite{royce_managing_1970} says: "I believe in this concept, but the implementation described above is risky and invites failure."
        Followed by multiple steps of improving the waterfall model.
        Royce adds a complete design step, loads of intermittent testing and documentation, and the instruction to "Do it twice".
        On initial thought this feels as a disproportionate amount of extra work.
        Especially since the current design plan already includes small feedback cycles.
        However, the small feedback cycles only apply to the current design, and do not provide information about the current design direction.
        Thus, the current level of detail might work, passing the tests of the current cycle does not guarantee a successful implementation of the design.
        Based on the evaluation, it was often difficult to justify the design decisions as there was insufficient information.
        A simple proof of concept would improve the information about the direction of the design, required resources and the feasibility of the project.
        Although this requires additional work, it is very likely that it improves the projects feasibility and thus reducing the risks of the project.

    \section{Development Cycle}
        \subsection{Design and model}
            Prior to the case study I expected the model to be the design.
            So when the level of detail of the design is increased, this is achieved by expanding the model with more detail or components.
            Resulting in different versions of a single model where each version has more detail than the previous one.
            However, during this development a 2D dynamics model, 3D dynamics model and a 3D component model.
            Although these models have components in common, they are not compatible.
            Therefore, adding detail to the design requires two or three models to be updated.

            Furthermore, the step from 2D to 3D physics was in no means a small increment in detail.
            The first four levels of detail, as describe in the previous section, all were implemented in with two dimensions.
            As the later details required a third dimension, all the detail was directly converted from 2D into 3D.
            This is a large amount of work, introducing a high cost when the conversion fails.
            Moreover, it creates a new 3D physics model, parallel to the 2D physics model instead of adding detail to the latter.
            Alternative approaches for 3D model physics could be:
            \begin{itemize}
                \item Ignore 2D and start implementation in 3D modelling.
                \item Retrace all incremental detail steps of the 2D model in a 3D model.
            \end{itemize}
            Both options are not ideal, the first one does not allow a simple basic model and the second approach redoes work.
            The advantage of starting with 3D is that allows for a continuous development of one model, instead of switching the complete model.


    \section{Models}
        Where I assumed to end up with one model of one design, the result is a design based on four models.
        One model is the CAD drawing and another one models the dynamic behavior.
        However, during the development the dynamic behavior has evolved through three different modeling approaches.
        Switching to a new modeling approach becomes unavoidable, when the newly added detail cannot be represented in the current approach.
        In the case of the SCARA, to model the first levels of detail a 2D physics approach on a single plane sufficed.
        Later in the design, the end-effector, which moved on the plane, had to be moved perpendicular to that 2D plane.
        Moving the end-effector in this third dimension also moves the center of mass out of the plane.
        Taking into account that the SCARA would be suspended with wires inside of this 2D plane, moving the mass out of this plane could result in unwanted rotation of the SCARA.
        Based on that, I decided that a 3D physics model is required to represent that behavior.
        To make this switch the dynamics of the SCARA, which have been modeled in 2D, must be implemented into a 3D model as well.
