[NASA Logo]

NASA Procedures and Guidelines

This Document is Obsolete and Is No Longer Used.
Check the NODIS Library to access the current version:
http://nodis3.gsfc.nasa.gov


NPR 7150.2B
Eff. Date: November 19, 2014
Cancellation Date:

NASA Software Engineering Requirements

| TOC | Preface | Chapter1 | Chapter2 | Chapter3 | Chapter4 | Chapter5 | Chapter6 | AppendixA | AppendixB | AppendixC | AppendixD | AppendixE | ALL |


Preface

P.1 Purpose

Software engineering is a core capability and a key enabling technology for NASA's missions and supporting infrastructure. This directive establishes the engineering requirements for software acquisition, development, maintenance, retirement, operations, and management consistent with the governance model contained in NASA Policy Directive (NPD) 1000.0, NASA Governance and Strategic Management Handbook. This NASA Procedural Requirements (NPR) supports the implementation of the NASA Policy Directive (NPD) 7120.4.

P.2 Applicability

a. This directive is applicable to NASA Headquarters and NASA Centers, including Component Facilities and Technical and Service Support Centers. This language applies to the Jet Propulsion Laboratory, a Federally Funded Research and Development Center, other contractors, grant recipients, or parties to agreements only to the extent specified or referenced in the appropriate contracts, grants, or agreements.

Note: The above statement alone is not sufficient to stipulate requirements for the contractor, grant recipient, or agreement. This directive provides requirements for NASA contracts, grant recipients, or agreements to the responsible NASA project managers and contracting officers that are made mandatory through contract clauses, specifications, or statements of work (SOWs) in conformance with the NASA Federal Acquisition Regulation (FAR) Supplement or by stipulating in the contracts, grants, or agreements which of the NPR requirements apply.

b. This directive applies to software development, maintenance, retirement, operations, management, acquisition, and assurance activities. The requirements of this directive cover all software created, acquired, or maintained by or for NASA and apply to all of the Agency's investment areas containing software systems and subsystems. The applicability of these requirements to specific systems and subsystems within the Agency's investment areas, programs, and projects is determined through the use of the NASA-wide definition of software classes in Appendix D, in conjunction with the Requirements Mapping and Compliance Matrix in Appendix C. Some projects may contain multiple systems and subsystems having different software classes. Using the Requirements Mapping and Compliance Matrix, the applicable requirements and their associated rigor are adapted according to the classification and safety criticality of the software. Figure 1-1 shows the NASA software classification structure.

Figure 1-1 NASA Software Classification Structure
Figure 1-1 NASA Software Classification Structure

c. This directive is not retroactively applicable to software development, maintenance, operations, management, acquisition, and assurance activities started before September 27, 2004 (i.e., existing systems and subsystems containing software for the International Space Station, Hubble, Chandra, etc.).

d. This directive does not supersede more stringent requirements imposed by individual NASA organizations and other Federal Government agencies.

e. In this directive, all mandatory actions (i.e., requirements) are denoted by statements containing the term "shall," followed by a software engineering (SWE) requirement number. The terms "may" or "can" denote discretionary privilege or permission, "should" denotes a good practice and is recommended but not required, "will" denotes expected outcome, and "are/is" denotes descriptive material.

f. In this directive, "software engineering" is defined as the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, i.e., the application of engineering to software.

g. In this directive, "software" is defined as the computer programs, procedures, scripts, rules, and associated documentation and data pertaining to the development and operation of a computer system. This definition applies to software developed by NASA, software developed for NASA, software maintained by or for NASA, commercial off-the-shelf (COTS) software, government off-the-shelf (GOTS) software, modified off-the-shelf (MOTS) software, reused software, auto-generated code, embedded software, the software executed on processors embedded in programmable logic devices (see NASA-HDBK-4008, Programmable Logic Devices (PLD) Handbook), legacy, heritage, and open-source software components.

h. In this directive, all document citations are assumed to be the latest version unless otherwise noted.

P.3 Authority

a. The National Aeronautics and Space Act, as amended, 51 U.S.C. ยง 20113(a).

b. NPD 1000.0, NASA Governance and Strategic Management Handbook.

c. NPD 1000.3, The NASA Organization.

d. NPD 1000.5, Policy for NASA Acquisition.

e. NPD 7120.4, NASA Engineering and Program/Project Management Policy.

P.4 Applicable Documents

a. NPD 1200.1, NASA Internal Control.

b. NPD 1210.2, NASA Surveys, Audits, and Reviews Policy.

c. NPD 2091.1, Inventions Made By Government Employees.

d. NPD 7120.6, Knowledge Policy on Programs and Projects.

e. NPR 2190.1, NASA Export Control Program.

f. NPR 2210.1, Release of NASA Software.

g. NPR 2800.1, Managing Information Technology.

h. NPR 2800.2, Electronic and Information Technology Accessibility.

i. NPR 2810.1, Security of Information Technology.

j. NPR 2830.1, NASA Enterprise Architecture Procedures.

k. NPR 2841.1, Identity, Credential, and Access Management.

l. NPR 7120.5, NASA Space Flight Program and Project Management Requirements.

m. NPR 7120.7, NASA Information Technology and Institutional Infrastructure Program and Project Management Requirements.

n. NPR 7120.8, NASA Research and Technology Program and Project Management Requirements.

o. NPR 7120.9, NASA Product Data and Life-Cycle Management (PDLM) for Flight Programs and Projects.

p. NPR 7120.10, Technical Standards for NASA Programs and Projects.

q. NPR 7123.1, NASA Systems Engineering Processes and Requirements.

r. NPR 8000.4, Agency Risk Management Procedural Requirements.

s. NPR 8705.2, Human-Rating Requirements for Space Systems.

t. NPR 8705.4, Risk Classification for NASA Payloads.

u. NPR 8715.3, NASA General Safety Program Requirements.

v. NPR 8735.1, Procedures for Exchanging Parts, Materials, Software, and Safety Problem Data Utilizing the Government-Industry Data Exchange Program (GIDEP) and NASA Advisories.

w. NPR 8735.2, Management of Government Quality Assurance Functions for NASA Contracts.

x. NPR 9250.1, Property, Plant, and Equipment and Operating Materials and Supplies.

y. NASA-STD-8719.13, NASA Software Safety Standard.

z. NASA-STD-8739.8, Software Assurance Standard.

P.5 Measurement/Verification

Compliance with this document is verified by submission to responsible NASA officials of the completed compliance matrix(ces), including any approved waivers and deviations (see Appendix C) and by internal and external controls. Internal controls are consistent with processes defined in NPD 1200.1, NASA Internal Control. Internal controls include surveys, audits, and reviews conducted in accordance with NPD 1210.2, NASA Surveys, Audits, and Reviews Policy. External controls may include external surveys, audits, and reporting or contractual requirements.

P.6 Cancellation

a. NPR 7150.2A, NASA Software Engineering Requirements, dated November 19, 2009.

b. NID 7150-1, NASA Interim Directive (NID): NASA Software Engineering Requirements, dated December 16, 2013.



| TOC | Preface | Chapter1 | Chapter2 | Chapter3 | Chapter4 | Chapter5 | Chapter6 | AppendixA | AppendixB | AppendixC | AppendixD | AppendixE | ALL |
 
| NODIS Library | Program Formulation(7000s) | Search |

DISTRIBUTION:
NODIS


This Document is Obsolete and Is No Longer Used.
Check the NODIS Library to access the current version:
http://nodis3.gsfc.nasa.gov