Scenario-Based Software Testing for Satellite Reliability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional software testing methods for satellite software are inadequate as they fail to consider a large number of possible scenarios, leading to untested scenarios and potential failures due to the inability to cover all extreme conditions, which is critical due to the high reliability and safety requirements in space missions.
Innovation Solution
A method using scenario-based programming that simulates internal subsystems and environmental conditions, generating a large number of relevant test scenarios through Behavioral Programming (BP), allowing for the creation of dependent and derived scenarios that align with system requirements, using a hardware board, interfacing cards, data acquisition modules, and an execution engine.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional testing methods use predetermined fixed scenarios, then testing cost and time are reduced, but the number of covered scenarios is limited and many possible scenarios remain untested
Solution Approach 1:
The patent applies preliminary action by pre-defining a limited set of atomic scenarios that represent fundamental system behaviors. These atomic scenarios are then automatically combined through interleaving to generate a vast number of composite test scenarios, eliminating the need to manually create and test every possible scenario combination while ensuring comprehensive coverage
Solution Approach 2:
The patent implements dynamics by using an execution engine that dynamically interleaves atomic scenarios at runtime based on system state and requirements. This dynamic combination generates dependent and derived scenarios adaptively, allowing the testing system to cover a large number of scenario combinations without requiring static pre-definition of all test cases
2Reliability
If all possible scenario combinations are tested manually, then complete scenario coverage is achieved, but testing becomes extremely expensive and time-consuming
Solution Approach 1:
The patent uses copying by creating virtual representations of system scenarios through software simulation rather than physical testing. The execution engine generates and executes virtual test scenarios by interleaving atomic scenario templates, effectively copying and combining scenario patterns to achieve comprehensive coverage without manual intervention for each case
Solution Approach 2:
The patent applies parameter changes by systematically varying scenario parameters through automated interleaving. The execution engine changes scenario combinations by dynamically selecting and sequencing atomic scenarios with different parameters, generating a vast number of test variations from a limited set of base scenarios, thereby achieving complete coverage efficiently
3Ease of operation
If developers manually select predetermined scenarios for testing, then testing focuses on obvious cases, but crucial scenarios that developers may not consider are missed
Solution Approach 1:
The patent implements self-service by enabling the testing system to automatically generate and execute test scenarios without continuous human intervention. The execution engine autonomously interleaves atomic scenarios based on system requirements and current state, allowing the system to self-generate comprehensive test cases that cover scenarios developers might not anticipate, while maintaining simplicity through automated scenario management
Data Source
AI summary
A method for testing operating software of a system consisting of a plurality of internal subsystems operating in an environment and controlled by a hardware board using electronic signals and an operating software. The signals are translated into a computer readable format by an interfacing card for each internal subsystem and simulating the internal subsystems by data acquisition modules by a simulating computer, which simulates the environmental conditions to which each module is currently exposed. A scenario based test software module generates a plurality of possible independent test scenarios using Behavioral Programming (BP) and the independent scenarios are interleaved at run time by an execution engine, to thereby automatically create a larger number of dependent and derived scenarios representing only possible combinations which are relevant to the operating conditions and states of the system.


