Nuclear energy provides about 10% of the world’s electricity from about 440 power reactors and is the world’s second largest source of low-carbon power. It is necessary that the development of software applications at nuclear power plants exhibit a high level of quality and meet cybersecurity requirements. ANSI/ANS-10.7-2013 (R2023): Non-Real-Time, High-Integrity Software For The Nuclear Industry–Developer Requirements specifies requirements for the development of high-integrity software that is primarily at nuclear facilities and operations.
Cyber Threats to Nuclear Power Plants
The expanding global footprint of nuclear energy brings with it concerns about safety, security (both physical and cyber), and nuclear nonproliferation and safeguards. For instance, nuclear power plants may be vulnerable to cyber attacks, which might—in extreme cases—lead to substantial releases of radioactive material with consequent loss of lives, radiation sickness and psycho-trauma, extensive property destruction, and economic upheaval. The expansion of nuclear power plants brings with it the subsequent increasing use of digital infrastructure. Hence, there is now more of a risk cyber vulnerability, which requires the need for greater regulation and guidance at nuclear operations. Luckily, ANSI/ANS-10.7-2013 (R2023) details requirements for software quality assurance in the nuclear industry.
What Is ANSI/ANS-10.7?
ANSI/ANS-10.7-2013 (R2023) provides requirements for assurance that high-integrity software developed for use by the nuclear industry meets state-of-the-practice expectations for quality. Basically, it sets a minimum level of quality assurance and critical technical process requirements to satisfy due diligence for nuclear power plants and other nuclear facilities and operations with similar high consequences and hazards. This American National Standard addresses rigorous, systematic development of high-integrity, non-real-time safety analysis, design, and simulation software. This includes calculations or simulations requiring high functional reliability to avoid undetected errors that could have serious consequences. Important areas of high-integrity analysis and software covered in this standard incorporate model development and verification (including physics validation) and cybersecurity.
The scope of this standard does not include electronic procedures.
Software Development Life Cycle in ANSI/ANS-10.7
The software development process in ANSI/ANS-10.7-2013 (R2023) consists of the following software development life cycle phases and activities.
- Planning & Management: define a plan to ensure that the development of high-integrity software follows well-planned development processes
- Requirement Specification: provides the assurance that the software will serve its intended purpose
- Design: specifies the interfaces (including the user interface), the overall structure (control and data flow) and the implementation (algorithms, equations, control logic, and data structures).
- Coding: includes configuring software units into the final operational software system and results in software products like computer source code, executable code, and instructions for computer software use
- Verification & Validation: ensure that the software can handle ACEs, correctly implement the model, adequately perform all intended functions and does not perform any unexpected or unintended functions, and that the products of any given software development phase meet the requirements of the previous life cycle phases
- Release: include guidance for users on how to perform installation and American National Standard acceptance testing
- Operation & Maintenance: focuses on delivering intended operation of the software, including operational support services and involves activities required to keep the software responsive to users’ needs by modifying it to correct faults, meet new or revised requirements, improve its performance, or adapt to changes in the operating environment
- Termination of Software Support: communicates to end users any new features, bug fixes, system requirements changes, etc., that are provided by the newer version
- Safety Analysis: If a safety assessment has determined that the software has safety vulnerabilities or requirements, then a software safety analysis is performed
- Security: addresses control over physical and logical access to the software, use of the software, and data communication with other systems and other software (such as for multiuse databases, etc.)
- Configuration Management: provides the procedures to ensure that possible impacts of software modifications are evaluated before changes are made and various software units (e.g., software modules and libraries) are examined for consistency and correctness after changes are made
- Software Quality Assurance: addresses all quality requirements during all phases of the software life cycle.
Each phase of the life cycle requires documentation, review, and approval of various products by the responsible authority.
ANSI/ANS-10.7-2013 (R2023): Non-Real-Time, High-Integrity Software For The Nuclear Industry–Developer Requirements is available on the ANSI Webstore.