Document: NRC Regulatory Guide
Document ID: 87c94eb7-1d88-4510-b85b-196ad319d0ae
Document Type: regulatory_guide
Title: Software Unit Testing for Digital Computer Software Used in Safety Systems of Nuclear Power Plants + HISTORY - HISTORY 08/2012 – DG-1208 , Proposed Revision 1 08/1996 – DG-1057 , Proposed Revision 0 (Rev. 1)
Source: NRC Regulatory Guide Division 1
Source URL: https://www.nrc.gov/docs/ML1031/ML103120751.pdf
Revision Date: 2023-06
Chapter: 
Section ID: RG-1.171
CFR Part: 
CFR Title: 

Content:
irements. The testing should include all features and associated procedures, states, state transitions, and associated data characteristics essential to the safety determination. b. Coverage of Module Structure. Section 3.1.2(2) of ANSI/IEEE Std. 1008-1987 specifies statement coverage (covering each source language statement with a test case) as a criterion for measuring the completeness of software unit testing. The staff believes that statement coverage is an insufficient criterion for measuring test completeness (Ref. 14 and Ref. 16). Therefore, the staff does not endorse statement coverage as a sufficient criterion for software unit testing. For safety system software, the licensee should identify and justify the unit testing coverage criteria that it will use. 3. Test Program Records Criteria VI and XVII and 10 CFR 21.51, “Maintenance and Inspection of Records” (Ref. 17), require the control and retention of documents and records that affect quality. In addition, Criterion III requires the licensee to subject design changes to design control measures commensurate with those that it applied to the original design. Section 3.8.2(4) of ANSI/IEEE Std. 1008-1987 discusses the preservation of testing products. Included with the testing products preservation are the test iterations caused by any task, procedure and design criteria variations or deviations from the original IEEE 829- 2008, Clauses 8 and 9, “Master Test Plan” and “Level Test Plans.” Since the design control measures are required for testing acceptance criteria and because some software testing materials are frequently reused and evolve during the course of software development and software maintenance (e.g., regression test DG-1208, Page 7 materials), such materials should be configuration items under the change control of a software configuration management system. 4. Independence Software Verification Criterion III imposes an independence requirement for the verification and checking of