SuperGuard
SuperGuard Library Safety Qualification Suite
The SuperGuard Library Safety Qualification Suite is a requirements-based test suite for the C and C++ standard libraries with full traceability between the requirements derived from the ISO C and C++ language definitions and the individual library tests. It is designed to support the qualification of implementations of the C and C++ standard libraries for safety-critical applications, both for third-party (COTS) and for self-developed or maintained library implementations.
SuperGuard qualification suite focuses on ensuring the safety of standard libraries for C and C++ and ensures that the standard library meets its requirements.
Requirements-Based Testing
SuperGuard provides a detailed breakdown of the ISO C and C++ library specifications into the requirements that must be met by an implementation of the library. These requirements are linked to test specifications that describe how a test verifies the requirements. In turn, the test specification is linked to tests in SuperGuard. In this way, a detailed path is created from the specification to the tests that is easy to comprehend and verify, so that it can be used to create confidence in the compliance of the C and C++ library implementations with their specifications.
High Structural Code Coverage
SuperGuard is built to achieve high structural code coverage of the target library implementation. In addition to requirements traceability, this provides a second path to demonstrate the completeness of the test suite.
Reporting Tool
The suite comes with a software tool that reports the requirements that are met, and which are not met, by C and C++ library implementations as verified by a run of the test suite for a specific use case or configuration.
SuperGuard includes many more unique features that are not found in other qualification suites:
• Compliance with the requirements of functional safety standards
• Very easy and quick installation and configuration
• Parallel testing automatically splits validation runs into a preconfigured number of threads to speed up the validation
• Full control over test sets
• Easy addition of your own specific tests
• Excellent professional support
Functional Safety
Functional safety is one of the most important aspects of many embedded systems today, especially in sectors such as automotive, railway, industrial automation and medical. SuperTest and SuperGuard can be used to qualify compilers and libraries for functional safety.
Compiler qualification is the process that can be used to develop the required confidence in the compiler. Compiler testing against the language specification is the proper method for this. SuperTest, with its traceability from the C and C++ language standards to the test, is the best test suite for compiler qualification.
Library qualification is even more critical because the library contains code that is linked into the application and loaded onto the target device. If a library component is defective, the functional safety of the entire application is therefore jeopardized. SuperGuard can be used to support qualification of standard library implementations for safety critical applications.
There are different functional safety standards for which you can use SuperTest and SuperGuard to qualify your compiler and library.
ISO 26262
ISO 26262 is the functional safety standard for electrical and electronic systems in series production passenger cars and other automotive categories. It requires qualification of all (electrical and electronic) components with respect to safety. The qualification process is described in the standard.
IEC 61508
IEC 61508 is the international umbrella standard for functional safety. This standard and other standards derived from it are used in all kinds of industries with requirements on reliability and safety, for example process industries, nuclear power plants and railway control systems.
EN 50128/EN 50716
EN 50128/EN 50716 are European standard for safety related software in railway applications.
IEC 62304
IEC 62304 is the international standard which specifies life cycle requirements for the development of medical software and medical devices.