Document: NUREG-0800
Document ID: c90016c6-e03f-4224-8ff3-87a6f7d3ca42
Document Type: srp
Title: Appendix 7-A
Source: NUREG-0800
Source URL: https://www.nrc.gov/docs/ML0525/ML052500547.pdf
Revision Date: 2023-06
Chapter: 7
Section ID: 7
CFR Part: 
CFR Title: 

Content:
ent with expected overall performance. Correctness requires that the code be correctly implemented. Style requires that the programming style constraints specified in the design documents be followed. NUREG/CR-6463, "Review Guidelines on Software Languages for Use in Nuclear Power Plant Safety Systems," provides guidance on coding practices to be avoided. In particular, data structures should be protected so that they cannot be changed simultaneously. Arrays should have a fixed, predefined length. Global variables and dynamic memory allocation should not be used. Traceability requires that a two-way trace exist between the elements of the detailed design and the elements in code. A two-way trace should exist between the code elements and the specific software subsystem or system which contains that element during factory build and test. There should be a forward trace from each detailed design element to the specific inspections, analyses, or tests that will be used to confirm that the element has been correctly implemented. Verifiability requires that it be possible to construct specific analyses, reviews, and tests to verify that the code correctly implements the detailed design. e. Integration Activities & System Build Documents One or more system build documents should be produced. The build documents should include all of the functional and software development process characteristics listed below. Functional Characteristics For each of the functional characteristics, the requirements imposed on the build documents for that characteristic should be satisfied. Functional characteristics addressed by the build documents should include robustness, safety, and security. Robustness requires that the software build documents specify methods to detect incorrectly built software releases. The software build documents should identify all errors and anomalies discovered during software build activities. Safety requires that the software build activity introduce no new