Practical Experience with Software Tools to Assess and Improve the Quality of Existing Nuclear Analysis and Safety Codes
Large nuclear analysis and safety computer codes written more than five years ago pose a unique problem from the standpoint of Software Quality Assurance (SQA). Most SQA techniques designed to manage the life cycle of new software development do not adequately address the risk factors of software developed before these methodologies were well-defined or practiced. By defining the risks as related to factors such as correctness, reliability, maintainability, or portability, existing tools are used to assess these risks and provide an indication of the quality of the software.
Within the constraints of schedule and budget, we have applied software tools and techniques to existing FORTRAN codes determining software quality metrics and improving the code quality. Specifically discussed are INEL experiences in applying pretty printers, cross-reference analyzers, complexity analyzers, coverage analyzers, performance analyzers, and computer aided software engineering (CASE) tools and techniques. These have provided management with measures of the risk potential for individual program modules so that rational decisions can be made on resource allocation. Selected program modules have been modified to reduce the complexity, achieve higher functional independence, and improve the code vectorization.
KeywordsSoftware Quality Large Code Software Life Cycle Software Quality Assurance Idaho National Engineer Laboratory
Unable to display preview. Download preview PDF.
- 1.ANSI/ASME NQA-1–1989 Edition, Quality Assurance Program Requirements for Nuclear Facilities.Google Scholar
- 2.ANSI/ASME NQA-2–1989 Edition, Quality Assurance Requirements for Nuclear Power Plants.Google Scholar
- 3.McCabe, Thomas, A Complexity Measure, IEEE Transactions on Software Engineering, December, 1976.Google Scholar