Systems based on mikroprocessors in safety technology are state-of-the-art today. Different to hardware no wearout failures have to looked upon with software. Basically systematic failures arise already in the specifications, respectively during the development phase. This means that the Software failure can always be existent from the beginning of a program, even if they are apparent far later under certain conditions.
The implementation of a sufficient quality standard under consideration of the entire software life cycle and the safety integrity of all safety functions is an essential characteristic for the requirements to develop safety related software. The software development process and the usage of methods and failure avoidance measures are herbeby indicated in safety standards like the IEC 61508-3, EN 50128, ISO 26262-6 or DO-178B.
- Support in the optimization and implementation of standard-compliant SW development processes
- Certification of tools, operating systems and application SW modules
- Consulting for the implementation of self-tests
- Consulting during the introduction of testing and verification steps
- Support in the preparation of the SW Safety Requirement Specification (SSRS)
- Checking the safety-related parts of the user manuals
That's how we do it:
- Execution of SW-FMEA, SW-FTA, SW criticality analyses
- Definition of the SW operating modes (memory size, MMU, DMA, CPU type, memory model, time requirements, communication interfaces, etc.)
- Introduction of tools (toolchain) which are directly integrated in the chain of the SW development process (compiler, linker, debugging tools, analysis systems)
- Support for verification and validation planning
- Carrying out reviews, walkthroughs, white box tests, black box tests
- Creation of criteria for software testing (statement overlap, branch overlap, path overlap, condition overlap, statement overlap)