IEC 61508 Compliance with Parasoft

Try Parasoft


What is IEC 61508?

IEC 61508 is considered a basic or "umbrella" standard for functional safety. IEC 61508 can be applied for any kind of safety-related electrical/electronic product. Industry sectors are supposed to provide their own specific standards and guidelines as needed (for example ISO 26262 in automotive). IEC 61508 encompasses the entire safety lifecycle of safety-critical systems. It contains 4 Normative parts (1-4) plus 3 informative or "guideline" parts (5-7). Certification for IEC 61508 is optional - the standard does not require this specifically.

The IEC 61508 standard introduces the concept of Safety Integrity Level (SIL). SIL can take one of the four levels (SIL1-SIL4) corresponding to the range of a given safety function’s target likelihood of dangerous failures. Each safety function in a safety-related system needs to have appropriate safety integrity level assigned. An E/E/PE safety-related system will usually implement more than one safety function. If the safety integrity requirements for these safety functions differ, unless there is sufficient independence of implementation between them, the requirements applicable to the highest relevant safety integrity level apply to the entire E/E/PE safety-related system.

Enforcing IEC 61508 Compliance with Source Code Analysis, Unit Testing, Traceability, and More

Parasoft users can leverage Parasoft C/C++test to reduce the cost of achieving IEC 61508 compliance by automating multiple testing methods required by the standard to save time and effort. Parasoft C/C++test helps industrial automation software development teams satisfy the software development and verification process requirements defined by the IEC 61508 standard. When results of the broad range of testing and code analysis types automated through Parasoft C/C++test are processed, intelligent analytics are reported that significantly reduces the work required to for software verification.

How Parasoft Helps Achieve IEC 61508 Compliance

Parasoft C/C++test is an integrated development testing solution for automating a broad range of best practices proven to improve software development team productivity and software quality, including:

  • Static analysis: monitor coding standards compliance and prevent defects early in the SDLC, including the elimination of the software constructs that poses security threats
  • Unit testing: create and execute tests on the host or target
  • Coverage metrics analysis: identify gaps testing, requirements and code coverage
  • Runtime error detection: detect memory access errors, leaks, corruptions, and more

These technologies give teams a practical way to prevent, expose, and correct errors in order to ensure that their C and C++ code works as expected and complies with requirements. To promote rapid remediation, each problem detected is prioritized based on configurable severity assignments, automatically assigned to the developer who wrote the related code, and distributed to his or her IDE with direct links to the problematic code and a description of how to fix it. For embedded and cross- platform development, C/C++test can be used in both host-based and target-based code analysis and test flows.

As opposed to the fragmented tools provided by other software testing products, Parasoft C/C++test satisfies multiple software testing requirements imposed by IEC 61508. The comprehensiveness of Parasoft's solution translates into lower learning and setup effort. Developers don't have to learn several tools and can focus on their core activities. Tool integrators or architects can save their time which would be otherwise spent on implementing interfaces between the tools for exchanging the data and generating uniform reports.

Parasoft C/C++test was designed with safety-critical applications in mind. When performing unit testing or runtime memory monitoring, all components required to build the test binary (including the test cases for tested code stimulation and stubs) are expressed in the form of the source code, and can be versioned and inspected.

This approach is superior comparing to other tools, in which the stimulation for tested code is sent at runtime from the host and requires additional conversions before assigning to the variables in memory. By instead expressing all testing artifacts in the form of the source code, Parasoft C/C++test removes this unnecessary layer and assures that the state of the memory before executing tests is constructed in the same way as in the production system.

Unlike other tools with closed reporting modules, Parasoft C/C++test is integrated with Parasoft's sophisticated reporting and analytics platform, for team wide data aggregation, convenient reporting, and advanced analytics. The reporting and analytics hub provides an aggregated view of relevant information from different sources such as source code or requirements management systems, testing tools, or ALMs.

Correlating this information together provides users with novel capabilities for data analytics, to more effectively focus efforts in the most productive way. Users can increase productivity by monitoring trends in the development process, and automatically generate reports that comply with industry standards such as "MISRA Compliance: 2016" (widely used in various industries).

Parasoft C/C++test is certified by TÜV SÜD for developing functional safety applications, and addition, is supported with a customized IEC 61508 qualification kit, which complies with the IEC 61508 standard's requirements for the tool qualification process. Unlike other tools, which provide qualification support in the form of the collection of test cases and templates for scripts and reports (which require a lot of customization), Parasoft C/C++test provides users with an automated qualification kit, that automates these efforts.

Parasoft's Qualification Support Tool guides users through all of the steps required to qualify the tool, and automates the majority of tedious manual work required in this process, including executing the test cases from the exhaustive test suite provided together with the Qualification Kit, and generation of final reports required to document the qualification process.

Comply with IEC 61508
Relevant Resource

Satisfying SIL Requirements with Parasoft

IEC 61508 reduces software risks. Read this document to learn how Parasoft can help software development teams meet requirements for particular SIL levels. It helps you understand the SIL as defined by the IEC 61508 standard, and demonstrates how Parasoft can be used to satisfy software development process requirements for particular SIL levels.