Quality assurance of analytical, scientific and design computer programs
This is the third edition of CSA N286.7, Quality assurance of analytical, scientific, and design computer programs. It supersedes the previous editions, published in 1999 and 1994.
This Standard identifies the quality assurance requirements to support the management system for high energy reactor facilities (see Clause 7.1 of CSA N286) where analytical tools are utilized in the life cycle of nuclear facilities.
The CSA N-Series of Standards provides an interlinked set of requirements for the management of nuclear facilities. CSA N286 provides overall direction to management to develop and implement sound management practices and controls, while the other CSA nuclear Standards provide technical requirements and guidance that support the management system.
CSA N286 is based on a set of 12 principles. As part of those management system requirements, it requires that conduct of work is carried out using authorized and controlled software, which includes engineering tools and analytical software. For analytical software used in scientific, design or safety analysis work supporting high energy reactor facilities, it refers to the requirements of this Standard.
The general management system requirements (Clause 4 of CSA N286) still apply but the technical requirements and supporting management system guidance might differ. This Standard is a quality assurance standard with specific ties to a management system meeting the applicable requirements of CSA N286. To prevent duplication, specific references to N286 are provided within this Standard. The business is responsible to ensure the applicable requirements of this Standard are complied with whether self-performed or subcontracted.
The Canadian nuclear industry has recognized the need to establish rigorous and effective requirements for application of quality assurance process to computer programs. In 1999, CSA had issued the CSA N286.7 Standard that specifies requirements for analytical tools used to design, analyze or support safety related systems of the nuclear power plants replacing the draft issued in 1994. CSA N286.7-99 contained high-level requirements that need interpretation or clarification in order to be implemented. This resulted in development of the CSA N286.7.1-09 Guidance document having a main purpose to assist practitioners within management organizations in the preparation and implementation of software quality assurance process in compliance with CSA N286.7-99.
This Standard amalgamates the CSA N286.7.1 guidance document, Guideline for the application of N286.7, within the body of the Standard. As such, the N286.7.1 Standard will not be maintained.
During the preparation of this Standard, stakeholders recognized two distinct areas of related activity and this Standard has been organized to reflect this:
a) Design, development and maintenance of analytical software; and
b) Acquisition, qualification, control and use of analytical software tools within the overall management system.
This Standard addresses quality assurance requirements for software used in design, safety analysis, and supporting activities.
This Standard specifies the requirements for the quality assurance program applicable to the design, development, maintenance, modification, acquisition, and use of analytical, scientific, and design computer programs that are used in high energy reactor applications.
Note: High energy reactor as defined in Clause 7.1 of CSA N286.
Such computer programs are used by or for the business to perform or support
a) design and analysis of equipment, systems, structures, and components that impact safety, as identified by management;
b) deterministic and probabilistic safety analyses and operational reliability studies;
c) reactor physics and fuel management calculations; and
d) transfer of data between computer programs or pre- or post-processing calculations associated with Items a), b), and c) of Clause 1.1.2.
The quality assurance requirements for software used to perform or support the activities are described in this Standard. This Standard recognizes that the scope has two parts and has been organized to reflect this:
a) design, development and maintenance of software; and
b) acquisition, qualification, control and use of software.
This Standard applies to software used by or for the business as described in Clause 1.1.2 including the following:
a) in-house developed computer programs: (i.e., software developed within the business);
b) third-party computer programs: (i.e., software developed by a supplier);
c) legacy software; and
d) programmed applications (e.g., scripts, macros, and spreadsheet-based analysis) written within software normally excluded from this Standard.
This Standard does not apply to computer programs such as
a) those used to control plant safety systems and operational control systems;
Note: See CSA N290.14 for example of safety and operational control systems.
b) embedded software contained within items, where the software is qualified along with the item as a unit (e.g., measurement and test equipment);
c) software used to collect or present design inputs (e.g., data acquisition systems and CAD programs);
d) business software (e.g., work management, productivity tools, commercially available databases, and spreadsheet programs);
e) software used to manage information (e.g., records management software);
f) commercially available compilers, interpreters, and operating systems; and
g) commercially available mathematical routine libraries.
Simple software may be excluded from requirements of this Standard with the exception of Clause 11.1 on general requirements for selection of use.
Interpretation or application of computer program results in design and analysis activities is outside the scope of this Standard.
All of the requirements of this Standard may be applied in a graded manner commensurate with risk as permitted by Clause 4 of CSA N286.
In this Standard, shall is used to express a requirement, i.e., a provision that the user is obliged to satisfy in order to comply with the standard; should is used to express a recommendation or that which is advised but not required; and may is used to express an option or that which is permissible within the limits of the standard.
Notes accompanying clauses do not include requirements or alternative requirements; the purpose of a note accompanying a clause is to separate from the text explanatory or informative material.
Notes to tables and figures are considered part of the table or figure and may be written as requirements.
Annexes are designated normative (mandatory) or informative (non-mandatory) to define their application.