90 likes | 247 Views
Verification and Validation of Spacecraft Embedded Software. Presented by Mike Rennie Director of Real-Time Systems DEIMOS Space S.L. (Madrid, Spain). V&V of Spacecraft Embedded SW. Contents. Parent-Child Object Integration Tests Single Thread Integration Tests
E N D
Verification and Validation of Spacecraft Embedded Software Presented by Mike Rennie Director of Real-Time Systems DEIMOS Space S.L. (Madrid, Spain)
V&V of Spacecraft Embedded SW Contents • Parent-Child Object Integration Tests • Single Thread Integration Tests • Multiple Thread Integration Tests • Software Validation on a Real-Time Test Bench
V&V of Spacecraft Embedded SW Parent-Child Object Integration Tests • Incremental, bottom-up integration of parent-child object hierarchy • Test cases described using UML sequence diagrams, showing the call from test driver to parent to child operations:
V&V of Spacecraft Embedded SW Single Thread Integration Tests • Execution invoked at thread’s root, verifying that it follows the expected path and that all objects and operations along that path collaborated correctly • Each thread tested in isolation of all the other concurrent threads: • Compile modules that are within the call tree of the thread • Stub out all synchronization calls and rendezvous with other threads • Test driver calls visible operations to control the execution • Other objects needed only to compile and link the main programme are also stubbed • Stubs write “trace” messages to standard output • First and last statement of every operation in the SW-under-test is a call to a “marker” function, that gives a trace of the call sequence
V&V of Spacecraft Embedded SW Structure of a Test Programme for Single-Thread Integration
V&V of Spacecraft Embedded SW Call Tree Coverage Analysis for Single-Thread Integration • Intended code coverage depicted by displaying the thread’s call tree with the operations that were intended to be exercised in green, stubs in grey, and untested calls in white:
V&V of Spacecraft Embedded SW Multiple Thread Integration Tests • Objective to verify real-time behaviour of concurrent tasks co-operating together to implement a major functionality. In particular, exchange of data between control flows. Thus, selection of test cases relies on identifying communication paths between threads.
V&V of Spacecraft Embedded SW Communication Path via a Protected Object in HRT-HOOD
V&V of Spacecraft Embedded SW Software Validation on a Real-Time Test Bench • A real-time test bench typically consists of: • Onboard computer (or emulation) • Emulation of the communications (telecommand/telemetry) link between Ground and Spacecraft • Simulation of the environment surrounding the onboard computer (actuators, sensors, space environment) • Hardware-in-the-loop, i.e. real sensors and/or actuators • Example (PACS):