MOIS Writer
Writer is the MOIS tool used for creating, modifying and displaying the Operations Procedures and timelines required for a space mission.
Writer supports a flexible method of creating and maintaining Operations Procedures. It allows customisation of procedure layouts through user-defined rules, with the possibility of defining different display formats within the same mission for different uses, e.g. timeline display or procedure display. It provides a linearised view of the procedure, its steps, and the associated functions to be performed within each step. Writer is applicable to any mission having a Mission Control System (MCS) or EGSE defined by a spacecraft database, which requires a pre-written, verifiable and maintainable Operations Plan. Writer can be used to create procedures and timelines that can be executed manually, or directly by an automatic system within the MCS.
Writer provides an intuitive and graphical interface to the elements of the MCS associated with procedure production such that the information used to construct the elements of a procedure are as complete and accurate as possible. It checks that the contents of a procedure remain consistent with the MCS, reporting inconsistencies in a detailed and analytical fashion.

Figure 2 MOIS Writer
MOIS currently supports a number of operations language output, such as ELISA, PLUTO, STOL, TOPE/TCL, TAO and UCL.
Procedure Consistency Checking
Writer provides interactive facilities for checking the consistency of a procedure. The aim of this is to highlight a variety of syntax and logic errors prior to actually executing the procedure, thereby minimising the time spent debugging during execution.
There are two types of checks performed:
- DB Syntax Check, which checks syntax and consistency with the spacecraft database
- Execution Check, which checks execution logic.
The DB syntax check searches for inconsistencies within each step or statement, such as validity of parameter types and values with respect to their definitions in the spacecraft database. It also checks the format of any time information associated with steps or statements.
An execution check is concerned with the logic of the procedure - the order of the steps and statements. It also checks that any time information is resolvable as a self-consistent set of absolute times. It includes checks specific to the selected export language or environment.