Traceable Automation with Remote Display and Interruptible Scheduler (TARDIS) is a software set designed for use in ground operations. TARDIS is a multi-mission automation framework that supports seamless integration of manual and automatic processing. It was developed to automate mission design and navigation (MDN) procedures, but is general enough to automate many other kinds of procedures as well. It allows users to define the tasks to run and the circumstances under which to run them. Thereafter, TARDIS watches the entire host computer and automatically runs the corresponding tasks as conditions change. It also watches the tasks as they run and logs their results. It provides a graphical user interface (GUI) front end, so users can monitor and control system state and task progress from any Web browser. As a result, many complex procedures can be completed more quickly, under controlled conditions, and without human intervention or error.

TARDIS allows users to define arbitrarily complex circumstances under which to run each task. These circumstances include (a) time-based events, e.g. twice per hour on every weeknight; (b) file-based events, e.g. whenever at least three new files appear with names matching some desired pattern; (c) task-based events, e.g. whenever another task named “XYZ” has completed; and (d) arbitrarily complex combinations of any or all of those kinds of events, e.g. whenever J and K both happen OR L and M both happen, OR three Ks and two Ms all happen.

It allows users to connect tasks together into higher-level procedures, running different sequences of tasks according to the actual state of the host computer, whether various tasks pass or fail, what inputs become available at different times, and more. It also allows users to intervene for any tasks in a procedure, e.g. to keep correcting errors and rerunning a task until it completes successfully. These manual interventions may occur at any time, after which the user may tell TARDIS to continue automatic processing from that point forward. All the while, TARDIS can perform automatic processing of other, unrelated tasks in any procedure.

It can salvage and optionally restart interrupted tasks, even if the entire host system crashes without warning and is rebooted later. Processing continues with whichever tasks were running when the host system crashed. In addition to its command line user interface (CLUI), TARDIS provides a GUI to allow users to monitor and control the state of the host computer and the progress of every task. Because its GUI is Web-based, users can run it in any browser from any computer.

This work was done by Richard M. Kelly, Ian M. Roundhill, Jae H. Lee, and Ahlam A. Attiyah of Caltech for NASA’s Jet Propulsion Laboratory. This software is available for license through the Jet Propulsion Laboratory, and you may request a license at: https://download.jpl.nasa.gov/ops/request/request_introduction.cfm . NPO-49507


NASA Tech Briefs Magazine

This article first appeared in the June, 2016 issue of NASA Tech Briefs Magazine.

Read more articles from this issue here.

Read more articles from the archives here.