Book A.

Book B.
7150 Requirements Guidance

Book C.

References, & Terms

(NASA Only)

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 33 Next »

Error rendering macro 'alias'


SWE-130 - Develop a Software Safety Plan

1. Requirements For safety-critical software, the project shall develop a software safety plan.

1.1 Notes

The requirement for the content of the software safety plan (whether stand-alone or condensed into one or more project level or software documents) is defined in Chapter 5 [section 5.1.9 of NPR 7150.2, NASA Software Engineering Requirements]. NASA-STD-8719.13 [NASA Software Safety Standard] contains detailed requirements 271 and guidance on development of software safety plans. Software engineering and the software safety disciplines jointly are responsible for providing project management with the optimal solution for software to meet the engineering, safety, quality, and reliability needs of the project.

Typically, Class F through H software is not considered safety critical; however, a piece of non-engineering software (Class F through H) could have a safety critical nature to it. One example is an emergency notification system for natural disasters. In this example, if the software did not work it could result in loss of life or injury or significant impact to assets. For this reason, this requirement includes applicability for safety critical Class F through H.

1.2 Applicability Across Classes

This requirement applies to all classes and safety criticalities including safety critical Class F thru H, with exceptions noted in the following table:





























Key:    A_SC = Class A Software, Safety-Critical | A_NSC = Class A Software, Not Safety-Critical | ... | - Applicable | - Not Applicable
X - Applicable with details, read above for more | P(C) - P(Center), follow center requirements or procedures

2. Rationale

The project team creates the Software Safety Plan to define the processes, risks, resources, stakeholders, interfaces, and safety design methodologies, necessary for the development of the software. The development of this plan allows for the review and agreement of the approach prior to implementation. NASA-STD-8719.13 271 defines the contents of the Software Safety Plan.

Effective planning assures that adequate safety features are included within the system and software. Developing a plan early in the project ensures that software safety will be an integral part of the software development or acquisition process.

3. Guidance

NASA-STD-8719.13 271defines the contents of the Software Safety Plan, and identifies who approves/concurs on it.  The format for a Software Safety Plan  is not mandated by this NPR or NASA-STD-8719.13.  The project team checks with the Center's Safety and Mission Assurance (S&MA) organization for possible format requirements. 

Based on the size and complexity of a project, the Software Safety Plan can be an independent document or part of another software document, such as a Software Assurance Plan, software development plan, or a software management plan.

If a project transitions from non-safety-critical to safety-critical, the project team will need to create the Software Safety Plan that includes the past, the transition, and the forward plan for meeting software safety requirements.

Best practices

Because the Software Safety Plan covers the life cycle of the project, it is periodically evaluated as the project matures, to verify accuracy and continued implementation approaches. Typically, the project and the responsible software assurance engineer perform the evaluation at major milestone reviews. See Topic 7.8 - Maturity of Life Cycle Products at Milestone Reviews to determine the state of maturity of the Software Safety Plan at the various Milestone Reviews.

4. Small Projects

For small projects, the safety plan may be part of an overall project management plan.

5. Resources

5.1 Tools

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.

6. Lessons Learned

No lessons learned have currently been identified for this requirement.

  • No labels