A new reusable software component that handles sensor management has been developed. It will be used in manufacturing processes that work at SIL 2 and avionics systems where failure could lead to a "major" incident. The code contains no loops but does contain decisions with multiple conditions. Which of the following would be the BEST structure-based testing option for the new software?
Context of the Problem:
The software component handles sensor management.
It is used in manufacturing processes that work at SIL 2 and avionics systems.
Failure could lead to a 'major' incident.
The code contains decisions with multiple conditions and no loops.
Safety Integrity Level (SIL) 2:
SIL 2 indicates that the software must adhere to stringent safety standards.
Avionics systems also require high safety standards due to the potential consequences of failure.
Testing Options:
MC/DC (Modified Condition/Decision Coverage):
MC/DC is essential for high-integrity and safety-critical systems like avionics.
Ensures each condition in a decision has been shown to independently affect the outcome.
Required by standards such as DO-178C for avionics software at certain levels.
API Coverage:
Focuses on testing the interfaces between components.
Important but not sufficient alone for high-integrity, safety-critical systems.
Decision Coverage:
Ensures that each decision point (i.e., if statements) is evaluated as both true and false.
Less comprehensive than MC/DC for safety-critical applications.
Statement Coverage:
Ensures that each statement in the code has been executed at least once.
Basic level of coverage, insufficient for safety-critical systems like those at SIL 2.
Best Option:
Given the high safety requirements (SIL 2, major incident potential), MC/DC coverage is the best option. It provides a thorough level of testing needed to meet safety standards.
Currently there are no comments in this discussion, be the first to comment!