Lesson 5 of 6 · Software testing and recovery
Test normal work and the path back from failure
8 minute lesson · 3 checks along the way
Your goal for this lessonConnect software evidence to the exact version and system behavior.
In this lesson 3 sections · 3 checks
Using archive links & definitions
Follow a linked name to explore its archive card. “Back to your lesson” brings you to the same part of the reading.
Words with a dotted underline open a short definition right here in the lesson.
Read & understand
A test needs a requirement and expected result
A useful test specifies its starting state, inputs, action and observable outcome. Component tests can isolate a calculation; integrated tests examine interfaces and timing with other parts of the system. Both matter because locally correct software can still interact incorrectly with hardware or another subsystem.
NASA’s software testing guidance includes requirements-based testing, representative platforms and regression checks. The point is not simply to accumulate a large number of passing tests. The evidence must address the behavior the mission requires, including relevant limits and unexpected conditions.
Check 1 of 3
10 pointsUse the reading above. You can try again without losing points.
Read & understand
Exercise the recovery path
For a fictional instrument controller, normal operation reads a valid sensor and produces a bounded output. A fault test might provide a stale reading and check that the defined fallback occurs. Another might interrupt power during a state update and inspect whether restart preserves a consistent state.
These are conceptual test scenarios, not instructions for operating real flight hardware. Each test should state what the simulator or testbed actually represents. Injecting a software error in a model does not necessarily reproduce the physical timing or electrical effects of every hardware fault.
Wheels are installed on Mars 2020 Perseverance at Kennedy Space Center on March 30, 2020. The ground assembly illustrates hardware that later had to work with sensors, control software and operational commands. It is not a photograph of an autonomous driving decision.
Look closely
What evidence would demonstrate that the integrated driving software respects a safety constraint?
See what to notice
Tests and operational records must exercise the relevant sensor inputs, software version, timing and commanded behavior. A wheel-installation photograph does not measure the integrated decision process.
Check 2 of 3
10 pointsUse the reading above. You can try again without losing points.
Read & understand
Keep the released version tied to its evidence
After a change, checks that relevant previously working behavior still meets its requirements. A repair can affect shared interfaces, resource use or timing. The exact software and configuration used in the tests must be identified so the results apply to the intended release.
A fictional patch corrects a sensor conversion but increases processing time beyond a control deadline. It fixes one problem while introducing another required behavior failure. Evaluate the resulting system, including recovery and update procedures, rather than judging the patch only by the one example it was written to repair.
Check 3 of 3
10 pointsUse the reading above. You can try again without losing points.
Put it together
Your lesson progress
Each check connects to a part of the story. Complete all 3 to earn your 25-point lesson bonus.
Explore further · Optional
Go to the source
Explore the evidence behind this lesson. These optional readings and videos open in a new tab.
- Read: NASA software handbook: software testingCompare the explanation and its assumptions with the worked example in this lesson.
- Read: NASA software handbook: fault recoveryCompare the explanation and its assumptions with the worked example in this lesson.
- Read: NASA software handbook: reliability and maintenanceCompare the explanation and its assumptions with the worked example in this lesson.