Industrial Automation Solutions

Industrial Automation

Software Development & Testing for Industrial Automation

Functional safety standards such as IEC 61508 and its derivatives require organizations to prove that the software and safety requirements are met and fully tested. For over 30 years, Parasoft has been helping organizations follow such standards through required best practices like unit testing, test coverage, software metrics, traceability, and static code analysis with built-in support for MISRA, CERT, and other industry coding standards.

Address Today's Modern Software Development Challenges

Manage increased security risks

Manage increased security risks

Industrial automation systems (and the software that powers them) have become increasingly connected, no longer using private networks, but relying on public internet more and more to connect sensors to critical infrastructure control and back-end enterprise systems. The internet, while enhancing the flexibility of the systems, has created an explosion of new threats and complexities. With any security holes in the control software, there is a risk of the gates being opened to a terrorist attack utilizing an unforeseen situation in the process. Parasoft C/C++test provides the most comprehensive software testing solution for security on the market for security, so organizations can develop and release software with fewer risks.

Tackle the growing complexities of modern development and connectivity

Tackle the growing complexities of modern development and connectivity

Multi-layered Industrial Internet of Things (IIoT) solutions require different technologies and tooling to implement and test the software for each layer -- low level sensors and actuators are most likely developed with C and C++, while upper layers are implemented with Java or C# -- and connectivity adds complexity, with multiple components using different protocols to propagate messages up to the end user. Parasoft provides testing tools to address each layer of complexity, seamlessly integrated with sophisticated reporting and analytics to help organizations manage this growing complexity.

Comply with IEC 61508 and its derivatives

Comply with IEC 61508 and its derivatives

For required levels of functional safety and security, many organizations choose to develop their industrial automation systems in compliance with the IEC 61508 standard, which requires disciplined and rigorous software development and testing processes. Automated software testing tools from Parasoft reduce the cost of compliance with IEC 61508, by providing the automated tools needed for efficiently achieving compliance, along with a centralized reporting system that makes documentation efforts less manual.

Parasoft Solutions for Industrial Automation

Parasoft’s integrated tool suite provides teams with 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.
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 C/C++test are processed, intelligent analytics are reported that significantly reduces the work required to for software verification.

Parasoft C/C++test helps organizations achieve code compliance with coding standards to improve code quality, with the largest number of built-in checkers (rules) on the market for verifying compliance with standards like MISRA C 2012, MISRA C++ 2008, AUTOSAR C++14, HIC++ and more.

For achieving secure coding best practices and security code compliance, Parasoft C/C++test provides the most comprehensive support for built-in checkers that verify compliance with security standards like CERT C, CERT C++, UL 2900, CWE and more.

Parasoft minimizes the cost of the coding standards compliance process, by providing dedicated reporting. Compliance reporting gives the user a dynamic view into the compliance process, helping prioritize results of static analysis violations according to groupings and categorizations from the original coding standard.

Compliance documentation, necessary for proving compliance, can be generated automatically, saving teams valuable time, with the generated reports and documentation complying with the MISRA 2016 standard, which is very popular across industries.

Parasoft C/C++test detects complex runtime-like problems early in the development stage by analyzing execution paths through the code and finding potential bugs. In addition to 2200+ rules and checkers, Parasoft makes it easy for teams to verify orgnanization-specific coding guidelines, with a special editor for creating custom checkers to extend (or replace) the built-in rules provided with the tool. With Parasoft C/C++test, users don’t have to write any scripts, and organization-specific coding guidelings can be fully automated to replace the manual process of compliance verification.

Parasoft C/C++test’s convenvient views and graphical editors reduce the manual effort of unit test case creation and maintenance, with a unit testing framework designed with safety-critical software testing in mind. Stubs and test cases with values for tested software’s stimulation can be created as a source code or with graphical editors with source code generation capabilities. Users can store and review created test artifacts together with the project’s files. The initialization of the variables and input parameters for tested software stimulation is done in exactly the same way as during production software operation, making the method reliable and robust.

Unit testing is much easier and productive if used together with a stubbing/mocking framework. Parasoft C/C++test’s powerful module for creating stubs and mocks help in fault injection testing, reduce dependencies of the tested code, and enable users to easily stub out not yet implemented source code.

Parasoft C/C++test supports all the coverage metrics typically required when developing safety-critical software (statement, branch, MC/DC, function, call, path, simple condition, line, and block), displaying code coverage results from all levels of testing, including unit, integration and system level testing.

C/C++test reduces the time required to analyze coverage results and find the gaps in the testing process. Developers can review code coverage results inside the IDE with dynamic views and filter the results depending on metric, function/method, or specific test case.

Parasoft integrates with Requirements Management Systems to provide traceability reports that display the correlation between requirements and:

  • Source code created to implement these requirements,
  • Test cases created to test the requirements,
  • Results of executed tests, and
  • Code coverage results. 

Traceability reports provide clear and complete information about the development progress, and teams can easily determine how many requirements were already implemented and how thoroughly they are tested.

Parasoft C/C++test can be integrated with model-based development tools like Matlab/Simulink or IBM Rational Rhapsody, verifying the source code generated from the models for compliance with the coding standards and performing dynamic validation using data sets from the simulation engines, and then presenting code coverage results.

Parasoft C/C++test is certified by TÜV SÜD as suitable for use when developing safety critical software with the IEC 61508 standard. For projects with a higher level of risk, Parasoft C/C++test’s Qualification Kit automates a significant part of the tool qualification process, reducing the amount of manual work and eliminating this distraction from software teams.

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

Parasoft's solutions for Industrial Automation

Benefit from the Parasoft Approach

Reduce the cost of developing high-quality software, without sacrificing time-to-market.

Want to learn more?

Find out how Parasoft can help you achieve your software delivery goals.

Satisfying SIL Requirements of IEC 61508

Satisfying SIL Requirements of IEC 61508

Increase functional safety of E/E/PE safety-related systems. IEC 61508 reduces software risks to a tolerable level by providing feasible requirements and processes.

Parasoft SOAtest gives us the possibility to rapidly implement APIs with higher quality. This makes the IT services organization more agile and able to respond to the business demands that Siemens faces.

- Siemens

Why Parasoft?

Parasoft enables full automation for cost-effective software delivery. From static analysis to fully-automated test environments, Parasoft provides the automated software testing tools you need to ensure enforcement of compliance as a part of your DevOps workflow, integrated with an analytics platform that streamlines the reviews and audits of software delivery.