![](https://swehb.nasa.gov/s/1725/13/1/_/download/resources/com.adaptavist.confluence.themes.sitebuilder:sitebuilder/icons/document_into.png)
![](https://swehb.nasa.gov/s/1725/13/1/_/download/resources/com.adaptavist.confluence.themes.sitebuilder:sitebuilder/icons/clock.png)
![](https://swehb.nasa.gov/download/attachments/16121861/icon_bubble_small.png?version=1&modificationDate=1299093727000)
- 1. The Requirement
- 2. Rationale
- 3. Guidance
- 4. Small Projects
- 5. Resources
- 6. Lessons Learned
- 7. Software Assurance
1. Requirements
4.5.4 The project manager shall place software items under configuration management prior to testing.
1.1 Notes
This includes the software components being tested and the software components being used to test the software, including components like support software, models, simulations, ground support software, COTS, GOTS, MOTS, OSS, or reused software components.
1.2 History
1.3 Applicability Across Classes
Class A B C D E F Applicable?
Key: - Applicable |
- Not Applicable
2. Rationale
Before software testing begins, all software items are placed under configuration control. This configuration control captures and identifies the versions of what is being tested.
3. Guidance
Configuration management is the "process of identifying and defining the configuration items in a system, controlling the release and change of these items throughout the system life cycle, recording and reporting the status of configuration items and change requests, and verifying the completeness and correctness of configuration items." 276 This work can only be properly accomplished if there exists a plan addressing all of these activities, which has been reviewed by an appropriate set of stakeholders and tailored for a specific project's needs.
Before any independent testing (informal, formal, system, or regression), the software items associated with the software build should be placed under configuration management. This helps to keep a record of what is being tested and the underlying files and components that make it up. It includes the software components being tested and the software components being used to test the software, including components like support software, models, simulations, ground support software, COTS, and MOTS.
Additional guidance related to CM and topics that have to be addressed in the SCM plan may be found in the following related requirements in this Handbook:
4. Small Projects
No additional guidance is available for small projects.
5. Resources
5.1 References
- (SWEREF-197) Software Processes Across NASA (SPAN) web site in NEN SPAN is a compendium of Processes, Procedures, Job Aids, Examples and other recommended best practices.
- (SWEREF-276) NASA-GB-8719.13, NASA, 2004. Access NASA-GB-8719.13 directly: https://swehb.nasa.gov/download/attachments/16450020/nasa-gb-871913.pdf?api=v2
5.2 Tools
NASA users find this in the Tools Library in the Software Processes Across NASA (SPAN) site of the Software Engineering Community in NEN.
The list is informational only and does not represent an “approved tool list”, nor does it represent an endorsement of any particular tool. The purpose is to provide examples of tools being used across the Agency and to help projects and centers decide what tools to consider.
6. Lessons Learned
6.1 NASA Lessons Learned
No Lessons Learned have currently been identified for this requirement.
6.2 Other Lessons Learned
No other Lessons Learned have currently been identified for this requirement.
7. Software Assurance
7.1 Tasking for Software Assurance
Confirm that software items to be tested are under configuration management before the start of testing.
Confirm the project maintains the software items under configuration management through the completion of testing.
7.2 Software Assurance Products
- None at this time.
Objective Evidence
- Software configuration management data
- Software Assurance audit results on the configuration data process
- Software test procedure(s)
- Software test report(s)
7.3 Metrics
- # of software work product Non-Conformances identified by life-cycle phase over time
7.4 Guidance
Software assurance will review the list of items to be tested as well as all of the items needed to support the tests and confirm that all of these items are put under configuration management before the start of testing. Confirm that all items remain under configuration management throughout the completion of testing.
In addition to the software that is being tested, consider the following items that are needed for testing:
- Any test scripts or software components being used to test the software
- Components like support software
- Models, simulations, simulators
- Ground support software
- COTS, GOTS, MOTS, OSS, or reused software components
- Operating systems
Note: configuration management needs to be maintained even if changes in the software need to be made to complete the test(s).