4.1.7 The project shall establish and implement procedures for the storage, handling, delivery, release, and maintenance of deliverable software products. NPR 7150.2, NASA Software Engineering Requirements, does not include any notes for this requirement. Classes D and Not Safety Critical, E and Not Safety Critical, G, and H are labeled with "P (Center)." This means that an approved Center-defined process which meets a non-empty subset of the full requirement can be used to achieve this requirement. Class A_SC A_NSC B_SC B_NSC C_SC C_NSC D_SC D_NSC E_SC E_NSC F G H Applicable? P(C) P(C) P(C) P(C) Key: A_SC = Class A Software, Safety-Critical | A_NSC = Class A Software, Not Safety-Critical | ... | It is important to ensure that the delivered software is created from the controlled repository. Configuration management (CM) processes and controls provide the rigor and organization necessary for developers and their customers to have confidence that all changes to the code and documents are included in the released products. It is also important that the released product is stored, maintained, and delivered following a repeatable, controlled process. If a software product is intended to be released outside of a project, to another Center (not within the same project), to a contractor or to an entity outside of NASA, the project must follow release procedures documented in NPR 2210.1, Release of NASA Software, or potentially become liable for violations of the 1958 Space Act. Following NPR 2210.1 helps to identify and protect intellectual property contained in a software release and helps to ensure compliance with federal laws and export requirements (e.g., International Traffic in Arms Regulations (ITAR)). NASA-STD-8719.13, NASA Software Safety Standard, 271 states that the "organization responsible for Software Configuration Management shall formally provide and document the release of safety-critical software." 271 As with other CM activities, the CM plan includes the plans and reference the procedures for software release management. When developing procedures for release management, address all of the following: Release management procedures may vary depending of the recipient of the release. Internal releases, such as baselines released for testing, will most likely not require the same set of release activities and considerations as formal releases to external customers. Preparation of the Release Package The STEP (SMA (Safety and Mission Assurance) Technical Excellence Program) Level 2 Software Configuration Management and Data Management course taught by the Westfall Team 343 provides a good list of release planning and scheduling activities. A checklist of activities to complete may be useful as part of the preparation to create the release package. A list of activities to consider includes: Creation and Delivery of the Release Package Procedures for creating the release package are used once the preparation steps have been completed and it is time to create the release package. Typically, there is a master copy of the release package and copies are distributed to customers. Depending on Center policy, the master may be created by the CM group and the copies created, packaged, and shipped by another group. Whatever process is used needs to be clearly defined in the release management procedures. When developing those procedures, consider the following: When developing procedures for delivery of the created package, consider the following: Storage and Maintenance of the Release Package As part of release management, the master needs to be safely and securely stored following documented procedures. When developing procedures for storing and maintaining the release package, consider the following: Consult Center Process Asset Libraries (PALs) for Center-specific guidance and resources related to managing deliverables and releases. Additional guidance related to CM of deliverable and releases may be found in the following related requirements in this Handbook: Develop CM Plan Identify Software Configuration Management Items Status Accounting Configuration Audits Software Configuration Management Plan Projects with limited budgets may choose to follow a common Center or project-level release management procedure rather than have separate procedures for each project. Slight modifications may be required for each project, but the overall master process would not have to be developed or maintained on a per project basis. Tools to aid in compliance with this SWE, if any, may be found in the Tools Library in the NASA Engineering Network (NEN). 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. There are currently no Lessons Learned identified for this requirement. View this section on the website
See edit history of this section
Post feedback on this section
1. Requirements
1.1 Notes
1.2 Applicability Across Classes
- Applicable |
- Not Applicable
X - Applicable with details, read above for more | P(C) - P(Center), follow center requirements or procedures
2. Rationale
3. Guidance
4. Small Projects
5. Resources
5.1 Tools
6. Lessons Learned
SWE-085 - Release Management
Web Resources
Unknown macro: {page-info}