Much like personal computers, large, complex systems that manage electric grids, nuclear power plants, transportation operations, and water pipes require periodic critical upgrades to their software. Unlike a single-user PC operating system, however, the consequences of a glitch in system upgrades can be global and costly.

As such, IBM (NYSE: IBM) has announced a three-year collaboration with the European Union, industry and academic partners, to create new technology designed to bolster the reliability of mission-critical system upgrades by detecting and eliminating errors before they have a chance to result in system failure or complication. Plans include sharing the results of the research project with the open source community.

Called PINCETTE – meaning 'tweezers' in French for the technology's unique 'tweezerlike' ability to flag and eliminate even the smallest software bugs across large networks – the effort aims to dramatically reduce the costs associated maintaining new system software by automating the often complicated analysis and testing processes. Estimates today put costs associated with validating new software between 40% and 70% of a system's life-cycle cost.

The consortium partners, led by IBM Research in Haifa, include: University of Oxford, UK; Universita della Svizzera Italiana (USI), Switzerland; Universita' degli Studi di Milano-Bicocca (UniMiB), Italy; Valtion Teknillinen Tutkimuskeskus (VTT), Finland; Israel Aerospace Industries Ltd. (IAI), Israel; and ABB, Switzerland, and Germany branches.

"The goal behind PINCETTE is to greatly simplify the task of ensuring these complex systems run flawlessly through new automated capabilities that remove costly faults or errors with minimal human intervention," said Dr. Daniel Kroenig of Oxford University, UK, one of the research partners of PINCETTE. "This is an exciting, cost-effective solution that combines simplicity with high reliability."

"We know that upgrading an operating system – whether for system maintenance, hardware upgrades or new regulation compliance – can take days until all applications are up and running smoothly," said Dr. Hana Chockler, IBM scientist and coordinator of the PINCETTE consortium. "The research resulting from PINCETTE will usher in a new era where designers, developers and users of networked control systems can eliminate potential faults before they result in failure."

The European Union-funded PINCETTE research consortium will introduce advanced engineering and management capabilities for networked systems that have high reliability requirements. The project will develop the technology to ensure safe infrastructure upgrades by ensuring the correct functioning of continuously evolving networked software systems. PINCETTE will increase the level of confidence in the safety of upgrades, ultimately enabling certification for the systems and applications that will cut the cost and time to market of upgrades by several orders of magnitude.

Specifically, the consortium expects to achieve a positive increase in system reliability by at least 70% reduction in the number of functional errors, alongside drastic reductions in the time it takes to validate a single change or upgrade and ensure version compatibility.

Industry Partners

PINCETTE industry partner ABB, developer of software that runs a major share of Europe's power grid operation will begin applying these new tools and techniques to their own applications to boost their software upgrade reliability.

Additionally, VTT, an industry partner in Finland, will apply PINCETTE methods to software that guarantees the correct functioning of robots that monitor the operation of a future thermo-nuclear reactor – a 30-year project conceived and financed by the European Union, whose goal is replace nuclear reactors by the new generation of clean and green reactors based on the energy of atomic fusion.

In Israel, industry partner IAI, will use PINCETTE to ensure the reliable upgrade of embedded software of electro-optical equipment (cameras), installed on unmanned aircrafts (drones) used to detect forest fires, search for missing people in the ground, sea or snow, and report on runway weather conditions.

A Solution for Validating System Upgrades

PINCETTE will allow developers and testers making changes to a software application to easily test, diagnose and remove faults the second they occur, by using newly engineered techniques that apply a blend of static and dynamic analysis.

The PINCETTE project will produce theoretical advances as well as directly applicable toolsets to predict the effect of changes and upgrades to networked systems. Special emphasis will be put upon ensuring the compatibility of different versions of software in a network, since the upgrades are usually done gradually, and hence nodes with different versions need to co-exist and provide the required functionality.

Although technologies exist to perform verification and ensure that software works as designed, none today are specifically tailored for system upgrades. A solution for validating upgrades is in demand due to shorter product lifecycles and increasing complexity and scale of networked systems. The key advantage of the PINCETTE project is that it will be based on a combination of testing and simulation techniques with formal methods, that is, with methods that use mathematical proofs that the system will behave as designed over a large (possibly infinite) set of operating conditions.

By offering constructive feedback to the users when upgrades are found to be problematic, PINCETTE will guide developers on how to improve the components. The feedback will be provided in the form of error-traces that help locate which changes violated the program's correctness or the suggested model for a replacement component that can be safely used instead of the failed component.