浏览代码

Add background

tags/0.2.0-analysis
父节点
当前提交
50801d69ec
共有 5 个文件被更改,包括 112 次插入4 次删除
  1. +0
    -3
      content/analysis.tex
  2. +68
    -0
      content/background.tex
  3. +25
    -0
      graphics/design_flow.tex
  4. +16
    -0
      graphics/waterfall.tex
  5. +3
    -1
      report.tex

+ 0
- 3
content/analysis.tex 查看文件

@@ -1,3 +0,0 @@
%&tex
\chapter{analysis}
\label{analysis}

+ 68
- 0
content/background.tex 查看文件

@@ -0,0 +1,68 @@
%&tex
\chapter{Background}
\label{chap:background}
The \ridm by \textcite{broenink_rapid_2019} only describes a partial design method.
To create a complete design plan, a waterfall model is used as a basis for the design plan.
The techniques of the \ridm are incorporated on top of the waterfall model.
This chapter will analyse the basics of a waterfall model, and analyse what the \ridm provides.

\section{Waterfall}
\begin{marginfigure}
\centering
\includegraphics[width=2.9cm]{graphics/waterfall.pdf}
\caption{Minimalistic implementation of waterfall model.}
\label{fig:waterfall}
\end{marginfigure}
One of the most basic design method for development is the waterfall model introduced by Royce
\footnote{Interestingly, \textcite{royce_managing_1970} never called it waterfall himself, he also notes that it never worked for large software development efforts.}
in 1970 \autocite{blanchard_systems_2014}.
The simplest implementation has five steps as shown in \autoref{fig:waterfall}.
Methods like the V-model or spiral model give significant advantage over the waterfall model, as they incorporate more evaluation and feedback, but are not as simple as the waterfall.
This simplicity makes changing and adding design steps to the waterfall model possible.

\section{Rapid Iterative Design Method}
The \ridm by \textcite{broenink_rapid_2019} describes a methodology using two core components for the implementation: the rapid development cycle and the variable detail approach.
The design method also describes the preparation steps that are required prior to this implementation.
In short, the preparation prepares a list of features.
These features are implemented one by one with in the rapid development cycle using the variable detail approach.
This section discusses each of these three parts and how they fit in the waterfall model.

\subsection{Rapid Development}
The rapid development cycle consists of multiple iterations, where each iteration implements and tests one feature, that was defined during the preparation.
Each iteration of the rapid development incorporates the following steps:
\begin{enumerate}
\item Design new feature and the corresponding tests.
\item Implement and test that feature.
\end{enumerate}
The first step is to create an initial design and tests that are used to verify the requirements of the current feature.
During the second step, the initial design will developed into a detailed design of the feature.
This detailed design of the feature is develop with the variable detail approach, in which the level of detail is stepwise incremented.
When the second step is completed, the implemented feature contains all the required details and passes all the tests as defined in the first step.
From this point the rapid development cycle is repeated for the next feature, or, when no features are left, finish the development.

\subsection{Variable Detail Approach}
The variable detail approach starts with a low-detailed model and increases the detail discretely over multiple iterations.
The low-detailed model is for example a single transfer function of the system.
In the following iteration, the detail of the model is increased by adding, for example, non-linearity, non-continuity or parasitic elements.
The tests, as specified in the first step of the rapid development cycle, are performed after each addition of detail.
If the tests show that the added detail is not conform the specifications, the added detail is reviewed or redesigned.
When the added detail passes the tests, the process is repeated to add more detail.
The variable detail approach is finished when all the tests are passed and all the detail is added.

\subsection{Preparation}
Although the \ridm does not specify the complete steps for the preparation, it does state some requirements.
The rapid development cycle requires a list of features that can be implemented one by one.
These features are gained by splitting the system into individual subsystems, where each subsystem can be implemented and tested individually.
About the order of implementation, the \ridm states that critical features should be implemented first, as these features have an increased chance of invalidating the complete design.
Would such a feature fail, the investment loss is limited, because the development is still in an early stage.

\subsection{Combination}
\begin{marginfigure}
\centering
\includegraphics[width=6cm]{graphics/design_flow.pdf}
\caption{Combined design plan, based on the \ridm and the Waterfall model.}
\label{fig:design_flow}
\end{marginfigure}
As the \ridm integrates the implementation and testing steps together, it replaces these steps in the waterfall model.
The first three steps as seen in \autoref{fig:waterfall} are unchanged and the last two steps are replaced by the \ac{ridm}.
A combined design flow of the both design methods is shown in \autoref{fig:design_flow}.

+ 25
- 0
graphics/design_flow.tex 查看文件

@@ -0,0 +1,25 @@
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary {arrows.meta,graphs,graphdrawing} \usegdlibrary {layered, trees}
\tikzset{nodes={text height=.7em, text width=2.8cm, align=center,
draw=black!50, thick, font=\footnotesize, fill=white},
>={Stealth[round,sep]}, rounded corners, semithick}

\begin{document}


\begin{tikzpicture}
\draw[fill=lightgray] (-1.7,0.5) rectangle (5, -2.8);
\draw[fill=lightgray] (-1.7,-3) rectangle (5, -5.5);
\draw (3.4,0) node[draw=none, fill=none] (wf) {Waterfall};
\graph [layered layout, level distance=1.2cm, sibling sep=.5em, sibling distance=3.4cm, component order=by first specified node] {
pd [as=Problem Description,grow=down] -> "Specifications" -> "Initial Design" -> "Feature Separation" -> {Rapid Development ->[bend right] Variable Approach};
{Rapid Development <-[bend left] Variable Approach};
{Rapid Interation Design Method[draw=none, fill=none] ->[draw=none] Variable Approach};
{ [same layer] Feature Separation, Rapid Interation Design Method};
%-> tree[fill=none, minimum height=3cm, minimum width=6cm] // [tree layout] {Rapid Development -> Variable Approach};
{ [same layer] Variable Approach, Rapid Development };
};
\end{tikzpicture}
\end{document}

+ 16
- 0
graphics/waterfall.tex 查看文件

@@ -0,0 +1,16 @@
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary {arrows.meta,graphs,graphdrawing} \usegdlibrary {layered}
\tikzset{nodes={text height=.7em, text width=2.8cm, align=center,
draw=black!50, thick, font=\footnotesize, fill=white},
>={Stealth[round,sep]}, rounded corners, semithick}

\begin{document}

\begin{tikzpicture}
\graph [layered layout, level distance=1.2cm, sibling sep=.5em, sibling distance=1.5cm, sweep crossing minimization] {
pd [as=Problem Description] -> "Specifications" -> "Initial Design" -> "Implementation" -> "Testing";
};
\end{tikzpicture}
\end{document}


+ 3
- 1
report.tex 查看文件

@@ -1,6 +1,8 @@
\documentclass[english,titlepage,nomath,nopackage,oneside]{siltex-book}
\include{include/preamble}

\newcommand{\ridm}{\ac{ridm} }

\title{Title}
\subtitle{Thesis Report}
\course{}
@@ -23,7 +25,7 @@
\input{summary}
\tableofcontents
\input{introduction}
\input{analysis}
\input{background}
\input{case_method}
\input{case_experiment}
\input{case_evaluation}


正在加载...
取消
保存