12. Glossary¶
Term |
Definition |
|---|---|
Plateau |
The rectangular grid on Mars within which rovers operate. Defined by its upper-right corner |
Rover |
An autonomous vehicle deployed on the plateau. Holds a position |
Position |
A coordinate pair |
Heading |
The cardinal direction a rover is facing: |
Command |
A single instruction sent to a rover. Valid values: |
Command String |
A sequence of commands for a single rover, e.g. |
Turn Left (L) |
Rotate the rover 90° counter-clockwise without moving. |
Turn Right (R) |
Rotate the rover 90° clockwise without moving. |
Move Forward (M) |
Advance the rover one grid step in its current heading direction. Ignored if the move would leave the plateau. |
Safe-Stop |
The behaviour where a rover ignores a move command that would take it outside the plateau (or into an obstacle), remaining at its current position. |
Obstacle |
(Optional extension) A cell on the plateau that a rover cannot enter. Triggers a safe-stop before the blocked cell. |
Mission |
The complete execution of all command strings for all rovers on a given plateau. |
Operator |
The human (or system) that provides the plateau definition, rover starting positions, and command strings. |
InputParser |
The adapter component responsible for converting raw stdin text into domain objects ( |
OutputFormatter |
The adapter component responsible for converting final |
MissionController |
The application-layer component that orchestrates a mission — iterating over rovers and applying their command sequences. |
Hexagonal Architecture |
An architectural style (also called Ports & Adapters) that isolates the domain from I/O by placing all external concerns in adapter classes. |
ADR |
Architecture Decision Record — a short document capturing a significant design decision, its context, and its consequences. |
arc42 |
A lightweight, pragmatic template for software architecture documentation with 12 standardised chapters. |
C4 Model |
A hierarchical diagramming approach (Context → Container → Component → Code) for visualising software architecture. |
PlantUML |
A text-based diagramming tool used to author C4 diagrams in this project. |