3 The requirement prioritization is ordered following the MoSCoW prioritization method. The MoSCoW approach originated from the RAD methodology~
\cite{clegg_case_1994
}. MoSCoW is used to sort the MarsRover features into priority order based on the importance. In this way, the developers are able to understand what feature is essential to be done. The term MoSCoW itself is an acronym derived from the first letter of each of four prioritization categories (Must have, Should have, Could have, and Would like but won't get). The first letters are used to descibe the priority in the following table:
5 \begin{longtabu
}to
\linewidth{llX
}
7 \rowfont\bfseries Code & Priority & Description\\
11 \multicolumn{3}{c
}{\ldots}\\
17 \multicolumn{3}{l
}{Functional requirements
}\\
19 CR1 &
\textsc{M
} & Do not fall of the planet.\\
20 MR1 &
\textsc{M
} & Find and identify lakes by the
color.\\
21 MR2 &
\textsc{M
} & Find rocks.\\
22 MR3 &
\textsc{M
} & Avoid rocks.\\
23 MR4 &
\textsc{M
} & Measure rocks and lakes.\\
24 MR5 &
\textsc{M
} & Push away rocks.\\
25 MR6 &
\textsc{M
} & Be able to perform multiple missions autonomously\\
26 MR7 &
\textsc{S
} & Park robot in a garage.\\
27 MR8 &
\textsc{S
} & Remember where the lakes are after the robot found
29 ER1 &
\textsc{C
} & SLAM
\footnote{Simultaneous localization and mapping
}
30 and be able to navigate with the map.\\
31 ER2 &
\textsc{C
} & Sounds playing to notify the viewers.\\
32 ER3 &
\textsc{M
} & Display diagnostic information on the screen at all
36 \multicolumn{3}{l
}{Non-functional requirements
}\\
37 NR1 &
\textsc{M
} & The code should be generated by a DSL.\\
38 NR2 &
\textsc{S
} & Finish the entire mission set within the
40 NR3 &
\textsc{S
} & Be able to function in lesser light.\\
41 NR4 &
\textsc{S
} & Be able to cope with lesser sensor data.\\
42 NR5 &
\textsc{C
} & If due bugs the sensors do not boot up the robot
43 should restart the program.\\