Back to Frameworks

NASA NPR 7150.2D Software Engineering Requirements

United States
vNPR 7150.2D (effective 8 March 2022, expires 8 March 2027)
4 domains
130 controls

NASA's software engineering requirements: the 130 SWE requirements on Centers, projects and contractors for classification and tailoring, planning and cost, assurance and IV&V, safety-critical software, cybersecurity, the full life cycle from requirements to retirement, and configuration, risk, peer review, measurement and non-conformance management.

Verified

NASA NPR 7150.2D Software Engineering Requirements is a compliance framework from United States with 4 domains and 130 controls. The largest domains are Chapter 3: Software management requirements – NASA NPR 7150.2D Software Engineering Requirements (45 controls), Chapter 4: Software engineering life cycle requirements – NASA NPR 7150.2D Software Engineering Requirements (34 controls), Chapter 2: Roles, responsibilities and tailoring – NASA NPR 7150.2D Software Engineering Requirements (30 controls). Every control below carries what it requires and what an assessor expects to see.

Maintained by Gerard Blokdyk

Framework summaries on this platform are interpretations grounded in the published source, for educational and compliance planning purposes. They do not reproduce or replace the official standards. Refer to the authoritative source for the definitive text. Framework names and trademarks belong to their respective organisations.

Framework Domains (4)

Chapter 2: Roles, responsibilities and tailoring – NASA NPR 7150.2D Software Engineering Requirements

30 controls
Controls in the Chapter 2: Roles, responsibilities and tailoring – NASA NPR 7150.2D Software Engineering Requirements domain of NASA NPR 7150.2D Software Engineering Requirements: 30 controls
CodeTitle
nasa-npr-7150-2d-software-engineering-requirements::SWE-002OCE leads a NASA Software Engineering Initiative
nasa-npr-7150-2d-software-engineering-requirements::SWE-003Center Director maintains a plan to advance in-house software engineering capability and monitor contractors
nasa-npr-7150-2d-software-engineering-requirements::SWE-004OCE benchmarks each Center's software engineering capability
nasa-npr-7150-2d-software-engineering-requirements::SWE-005Center Director establishes and maintains software processes per the directive
nasa-npr-7150-2d-software-engineering-requirements::SWE-006Center Director maintains a reliable list of programmes and projects with Class A to D software
nasa-npr-7150-2d-software-engineering-requirements::SWE-021Project manager updates plans and supplier contracts when software classification changes
nasa-npr-7150-2d-software-engineering-requirements::SWE-091Center Director maintains a software measurement repository for Class A, B and C projects
nasa-npr-7150-2d-software-engineering-requirements::SWE-092Center Director uses measurement data to monitor capability and improve quality
nasa-npr-7150-2d-software-engineering-requirements::SWE-095Center Director reports on the Center's software engineering discipline on request
nasa-npr-7150-2d-software-engineering-requirements::SWE-098OCE maintains an Agency-wide process asset library
nasa-npr-7150-2d-software-engineering-requirements::SWE-100OCE and Center training organisations provide software engineering training
nasa-npr-7150-2d-software-engineering-requirements::SWE-126Technical and institutional authorities assess mapping matrices and tailoring
nasa-npr-7150-2d-software-engineering-requirements::SWE-129OCE authorises appraisals against selected requirements
nasa-npr-7150-2d-software-engineering-requirements::SWE-140Center Director complies with the requirements marked for Centers in Appendix C
nasa-npr-7150-2d-software-engineering-requirements::SWE-142Center Director maintains software cost repositories for Class A, B and C projects
nasa-npr-7150-2d-software-engineering-requirements::SWE-144Center Director contributes process assets to the Agency library
nasa-npr-7150-2d-software-engineering-requirements::SWE-150Engineering, CIO and SMA authorities review and agree all tailored requirements
nasa-npr-7150-2d-software-engineering-requirements::SWE-152OCE periodically reviews project requirements mapping matrices
nasa-npr-7150-2d-software-engineering-requirements::SWE-153Designated Engineering Technical Authorities define content requirements for software documents
nasa-npr-7150-2d-software-engineering-requirements::SWE-208Chief SMA leads a Software Assurance and Software Safety Initiative
nasa-npr-7150-2d-software-engineering-requirements::SWE-209Chief SMA benchmarks Center assurance and safety capability against NASA-STD-8739.8
nasa-npr-7150-2d-software-engineering-requirements::SWE-212Chief SMA periodically reviews project requirements mapping matrices
nasa-npr-7150-2d-software-engineering-requirements::SWE-214Center Director performs the prescribed actions for each type of internal software transfer
nasa-npr-7150-2d-software-engineering-requirements::SWE-215Center Director ensures Government rights before internal software sharing or reuse
nasa-npr-7150-2d-software-engineering-requirements::SWE-216Center Director ensures catalogued reuse software conforms to NASA software policy
nasa-npr-7150-2d-software-engineering-requirements::SWE-217Center Director keeps contributor lists and disclaimer provisions on reuse products
nasa-npr-7150-2d-software-engineering-requirements::SWE-218Contracting Officers and Agreement Managers include the required software clauses in every acquisition instrument
nasa-npr-7150-2d-software-engineering-requirements::SWE-221Chief SMA authorises appraisals against selected requirements
nasa-npr-7150-2d-software-engineering-requirements::SWE-222Chief SMA provides for software assurance training
nasa-npr-7150-2d-software-engineering-requirements::SWE-223Chief SMA makes the final decision on tailoring of the IV&V requirement

Chapter 3: Software management requirements – NASA NPR 7150.2D Software Engineering Requirements

45 controls
Controls in the Chapter 3: Software management requirements – NASA NPR 7150.2D Software Engineering Requirements domain of NASA NPR 7150.2D Software Engineering Requirements: 45 controls
CodeTitle
nasa-npr-7150-2d-software-engineering-requirements::SWE-013Develop, maintain and execute software plans covering the whole life cycle
nasa-npr-7150-2d-software-engineering-requirements::SWE-015Establish and maintain software cost estimate models and parameters
nasa-npr-7150-2d-software-engineering-requirements::SWE-016Document and maintain a software schedule that coordinates with the project
nasa-npr-7150-2d-software-engineering-requirements::SWE-017Plan, track and ensure project-specific software training
nasa-npr-7150-2d-software-engineering-requirements::SWE-018Hold regular software schedule reviews with stakeholders and track issues to resolution
nasa-npr-7150-2d-software-engineering-requirements::SWE-020Classify each system and subsystem containing software per Appendix D
nasa-npr-7150-2d-software-engineering-requirements::SWE-022Plan and implement software assurance, software safety and IV&V per NASA-STD-8739.8
nasa-npr-7150-2d-software-engineering-requirements::SWE-023Implement the safety-critical software requirements of NASA-STD-8739.8
nasa-npr-7150-2d-software-engineering-requirements::SWE-024Track actual results and performance against the software plans
nasa-npr-7150-2d-software-engineering-requirements::SWE-027Satisfy the conditions for COTS, GOTS, MOTS, OSS or reused software
nasa-npr-7150-2d-software-engineering-requirements::SWE-032Acquire, develop and maintain software from organisations with the required CMMI-DEV rating
nasa-npr-7150-2d-software-engineering-requirements::SWE-033Assess software acquisition versus development options
nasa-npr-7150-2d-software-engineering-requirements::SWE-034Define and document software acceptance criteria
nasa-npr-7150-2d-software-engineering-requirements::SWE-036Establish software processes, documentation plans, deliverables and Government actions on receipt
nasa-npr-7150-2d-software-engineering-requirements::SWE-037Define the milestones at which developer progress is reviewed and audited
nasa-npr-7150-2d-software-engineering-requirements::SWE-039Require developers to report status and give insight into development and test
nasa-npr-7150-2d-software-engineering-requirements::SWE-040Require developers to provide products, traceability, change tracking and nonconformances electronically
nasa-npr-7150-2d-software-engineering-requirements::SWE-042Require electronic access to source code in a modifiable format
nasa-npr-7150-2d-software-engineering-requirements::SWE-046Require developers to provide a software schedule and updates for review
nasa-npr-7150-2d-software-engineering-requirements::SWE-052Perform and maintain bi-directional traceability per software classification
nasa-npr-7150-2d-software-engineering-requirements::SWE-121Document approved tailoring in the controlling plans or procedures
nasa-npr-7150-2d-software-engineering-requirements::SWE-125Maintain a requirements mapping matrix against this directive
nasa-npr-7150-2d-software-engineering-requirements::SWE-131Ensure an IV&V Project Execution Plan is developed, approved, maintained and executed
nasa-npr-7150-2d-software-engineering-requirements::SWE-134Build the safe-state and integrity behaviours into safety-critical and mission-critical software
nasa-npr-7150-2d-software-engineering-requirements::SWE-139Comply with the Appendix C requirements for the software classification
nasa-npr-7150-2d-software-engineering-requirements::SWE-141Ensure IV&V is performed on the designated categories of projects
nasa-npr-7150-2d-software-engineering-requirements::SWE-146Define the approach to automatic generation of source code
nasa-npr-7150-2d-software-engineering-requirements::SWE-147Specify reusability requirements to enable future reuse for Government purposes
nasa-npr-7150-2d-software-engineering-requirements::SWE-148Evaluate software for reuse and contribute candidates to the NASA sharing system
nasa-npr-7150-2d-software-engineering-requirements::SWE-151Software cost estimates meet the stated conditions
nasa-npr-7150-2d-software-engineering-requirements::SWE-154Identify and plan mitigations for cybersecurity risks in flight and ground software
nasa-npr-7150-2d-software-engineering-requirements::SWE-156Perform a software cybersecurity assessment on the software components
nasa-npr-7150-2d-software-engineering-requirements::SWE-157Protect communicating software systems against unauthorised access per NASA-STD-1006
nasa-npr-7150-2d-software-engineering-requirements::SWE-159Test and record the required cybersecurity mitigations
nasa-npr-7150-2d-software-engineering-requirements::SWE-174Submit software planning parameters to the Center measurement repository at major milestones
nasa-npr-7150-2d-software-engineering-requirements::SWE-176Keep records of classification determinations, mapping matrices and independent assessments for the project's life
nasa-npr-7150-2d-software-engineering-requirements::SWE-178Give IV&V access to development artefacts, products, source code and data
nasa-npr-7150-2d-software-engineering-requirements::SWE-179Respond to IV&V issues and risks and track them to closure
nasa-npr-7150-2d-software-engineering-requirements::SWE-185Verify the code meets the secure coding standard using static analysis results
nasa-npr-7150-2d-software-engineering-requirements::SWE-205Determine with SMA whether each software component is safety-critical
nasa-npr-7150-2d-software-engineering-requirements::SWE-206Require electronic access to the models, simulations and data used for auto-generation
nasa-npr-7150-2d-software-engineering-requirements::SWE-207Identify, record and implement secure coding practices
nasa-npr-7150-2d-software-engineering-requirements::SWE-210Identify requirements for collecting, reporting and storing adversarial action detection data
nasa-npr-7150-2d-software-engineering-requirements::SWE-219Achieve 100 percent MC/DC code test coverage of safety-critical components
nasa-npr-7150-2d-software-engineering-requirements::SWE-220Keep safety-critical components at cyclomatic complexity 15 or lower

Chapter 4: Software engineering life cycle requirements – NASA NPR 7150.2D Software Engineering Requirements

34 controls
Controls in the Chapter 4: Software engineering life cycle requirements – NASA NPR 7150.2D Software Engineering Requirements domain of NASA NPR 7150.2D Software Engineering Requirements: 34 controls
CodeTitle
nasa-npr-7150-2d-software-engineering-requirements::SWE-050Establish, record, approve and maintain software requirements as part of the technical specification
nasa-npr-7150-2d-software-engineering-requirements::SWE-051Analyse software requirements from flowed-down and derived sources
nasa-npr-7150-2d-software-engineering-requirements::SWE-053Track and manage changes to the software requirements
nasa-npr-7150-2d-software-engineering-requirements::SWE-054Identify, correct and track to closure inconsistencies among requirements, plans and products
nasa-npr-7150-2d-software-engineering-requirements::SWE-055Validate requirements against intended performance in the customer environment
nasa-npr-7150-2d-software-engineering-requirements::SWE-057Transform the software requirements into a recorded software architecture
nasa-npr-7150-2d-software-engineering-requirements::SWE-058Develop, record and maintain a software design that describes the lower-level units
nasa-npr-7150-2d-software-engineering-requirements::SWE-060Implement the software design into code
nasa-npr-7150-2d-software-engineering-requirements::SWE-061Select, define and adhere to software coding methods, standards and criteria
nasa-npr-7150-2d-software-engineering-requirements::SWE-062Unit test the software code
nasa-npr-7150-2d-software-engineering-requirements::SWE-063Provide a software version description for each release
nasa-npr-7150-2d-software-engineering-requirements::SWE-065Establish and maintain software test plans, procedures, tests and reports
nasa-npr-7150-2d-software-engineering-requirements::SWE-066Test the software against its requirements
nasa-npr-7150-2d-software-engineering-requirements::SWE-068Evaluate test results and record the evaluation
nasa-npr-7150-2d-software-engineering-requirements::SWE-070Use validated and accredited models, simulations and analysis tools for qualification
nasa-npr-7150-2d-software-engineering-requirements::SWE-071Keep test and verification plans and procedures consistent with the requirements
nasa-npr-7150-2d-software-engineering-requirements::SWE-073Validate the software system on the target platform or a high-fidelity simulation
nasa-npr-7150-2d-software-engineering-requirements::SWE-075Plan and implement software operations, maintenance and retirement activities
nasa-npr-7150-2d-software-engineering-requirements::SWE-077Deliver the software product with the records needed for operations and maintenance
nasa-npr-7150-2d-software-engineering-requirements::SWE-135Use static analysis tools during development and test
nasa-npr-7150-2d-software-engineering-requirements::SWE-136Validate and accredit the software tools required to develop or maintain software
nasa-npr-7150-2d-software-engineering-requirements::SWE-143Perform a software architecture review on the designated categories of projects
nasa-npr-7150-2d-software-engineering-requirements::SWE-184Include software-related safety constraints, controls, mitigations and assumptions in the requirements
nasa-npr-7150-2d-software-engineering-requirements::SWE-186Assure that unit test results are repeatable
nasa-npr-7150-2d-software-engineering-requirements::SWE-187Place software items under configuration management before testing
nasa-npr-7150-2d-software-engineering-requirements::SWE-189Select, implement, track, record and report code coverage measurements
nasa-npr-7150-2d-software-engineering-requirements::SWE-190Verify code coverage by analysing the results of test execution
nasa-npr-7150-2d-software-engineering-requirements::SWE-191Plan and conduct regression testing
nasa-npr-7150-2d-software-engineering-requirements::SWE-192Verify by test the requirements that trace to hazards
nasa-npr-7150-2d-software-engineering-requirements::SWE-193Develop acceptance tests for loaded or uplinked data, rules and code
nasa-npr-7150-2d-software-engineering-requirements::SWE-194Verify before delivery that requirements are met, changes implemented and defects resolved
nasa-npr-7150-2d-software-engineering-requirements::SWE-195Maintain the software to the standards and processes of its classification
nasa-npr-7150-2d-software-engineering-requirements::SWE-196Identify the records and tools to archive and the access procedures for retirement
nasa-npr-7150-2d-software-engineering-requirements::SWE-211Test embedded off-the-shelf and reused components to the same level as custom components

Chapter 5: Supporting software life cycle requirements – NASA NPR 7150.2D Software Engineering Requirements

21 controls
Controls in the Chapter 5: Supporting software life cycle requirements – NASA NPR 7150.2D Software Engineering Requirements domain of NASA NPR 7150.2D Software Engineering Requirements: 21 controls
CodeTitle
nasa-npr-7150-2d-software-engineering-requirements::SWE-045Participate in joint NASA and developer audits
nasa-npr-7150-2d-software-engineering-requirements::SWE-079Develop a software configuration management plan
nasa-npr-7150-2d-software-engineering-requirements::SWE-080Track and evaluate changes to software products
nasa-npr-7150-2d-software-engineering-requirements::SWE-081Identify the software configuration items and versions to be controlled
nasa-npr-7150-2d-software-engineering-requirements::SWE-082Establish procedures for control levels and change authority
nasa-npr-7150-2d-software-engineering-requirements::SWE-083Prepare and maintain configuration status records
nasa-npr-7150-2d-software-engineering-requirements::SWE-084Perform software configuration audits
nasa-npr-7150-2d-software-engineering-requirements::SWE-085Establish procedures for storage, handling, delivery, release and maintenance of deliverable software
nasa-npr-7150-2d-software-engineering-requirements::SWE-086Record, analyse, plan, track, control and communicate software risks
nasa-npr-7150-2d-software-engineering-requirements::SWE-087Perform and report software peer reviews or inspections of the key products
nasa-npr-7150-2d-software-engineering-requirements::SWE-088Run each peer review with checklists, criteria, action tracking and required participants
nasa-npr-7150-2d-software-engineering-requirements::SWE-089Record the necessary measurements for each peer review
nasa-npr-7150-2d-software-engineering-requirements::SWE-090Establish, record, maintain, report and use software management and technical measurements
nasa-npr-7150-2d-software-engineering-requirements::SWE-093Analyse measurement data using documented procedures
nasa-npr-7150-2d-software-engineering-requirements::SWE-094Provide access to measurement data, analyses and status on request
nasa-npr-7150-2d-software-engineering-requirements::SWE-199Monitor measures to ensure performance and functionality requirements will be met
nasa-npr-7150-2d-software-engineering-requirements::SWE-200Collect, track and report software requirements volatility metrics
nasa-npr-7150-2d-software-engineering-requirements::SWE-201Track and maintain software non-conformances
nasa-npr-7150-2d-software-engineering-requirements::SWE-202Define and implement clear severity levels for all software non-conformances
nasa-npr-7150-2d-software-engineering-requirements::SWE-203Assess reported non-conformances in all off-the-shelf and reused components
nasa-npr-7150-2d-software-engineering-requirements::SWE-204Run closed-loop process assessments for high-severity non-conformances

What is NASA NPR 7150.2D Software Engineering Requirements and who does it apply to?

NASA NPR 7150.2D Software Engineering Requirements is a compliance framework from United States with 4 domains and 130 controls. NASA's software engineering requirements: the 130 SWE requirements on Centers, projects and contractors for classification and tailoring, planning and cost, assurance and IV&V, safety-critical software, cybersecurity, the full life cycle from requirements to retirement, and configuration, risk, peer review, measurement and non-conformance management. It is used by organisations to establish and maintain compliance with industry standards and regulatory requirements.

What does NASA NPR 7150.2D Software Engineering Requirements actually require?

NASA NPR 7150.2D Software Engineering Requirements has 130 controls organised across 4 domains. The largest domains are Chapter 3: Software management requirements – NASA NPR 7150.2D Software Engineering Requirements (45 controls), Chapter 4: Software engineering life cycle requirements – NASA NPR 7150.2D Software Engineering Requirements (34 controls), Chapter 2: Roles, responsibilities and tailoring – NASA NPR 7150.2D Software Engineering Requirements (30 controls). Each control defines specific requirements that organisations must implement to achieve compliance.

If I already comply with another framework, how much of NASA NPR 7150.2D Software Engineering Requirements do I already cover?

NASA NPR 7150.2D Software Engineering Requirements does not currently have cross-framework mappings in our system. Check back as we continuously expand our mapping database.

How do I implement NASA NPR 7150.2D Software Engineering Requirements?

Start your NASA NPR 7150.2D Software Engineering Requirements compliance journey by running a self-assessment on our platform to identify your current compliance posture. Our AI advisory can answer specific questions about NASA NPR 7150.2D Software Engineering Requirements requirements, and cross-framework mapping helps you leverage existing controls from other frameworks you may already comply with. Create a free account to access all 130 controls and track your progress.

Start Your Compliance Journey

Create a free account to run self-assessments, get AI advisory, and track your compliance progress across 1,248 frameworks.

Get Started Free →

Free forever, no credit card required