High-integrity software is software whose failure may cause serious damage with possible "life-threatening consequences."[1] "Integrity is important as it demonstrates the safety, security, and maintainability of... code."[1] Examples of high-integrity software are nuclear reactor control, avionics software, automotive safety-critical software and process control software.[2][3]
[H]igh integrity means that the code:
Does what it should.
Can be tested.
Has security features.
Lacks security vulnerabilities.
Is easy to understand and follow logically.
Is easy to edit and upgrade without introducing new errors.[1]
A number of standards are applicable to high-integrity software, including:
DO-178C, Software Considerations in Airborne Systems and Equipment Certification[4]
CENELEC EN 50128, Railway applications - Communication, signalling and processing systems - Software for railway control and protection systems[5]
IEC 61508, Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems (E/E/PE, or E/E/PES)
ISO 26262, Road Vehicles - Functional Safety (especially 'part 6' of the standard, which is titled "Product development at the software level"[6]