Development Process, Standards, and Tools

LOW ✓ MODERATE ✓ HIGH
11 Enhancements 1 Overlay 11 Related Controls
Graph
Export ▾

Requirements NIST SOURCE

    1. 1.Explicitly addresses security and privacy requirements;
    2. 2.Identifies the standards and tools used in the development process;
    3. 3.Documents the specific tool options and tool configurations used in the development process; and
    4. 4.Documents, manages, and ensures the integrity of changes to the process and/or tools used in development; and
Discussion (NIST Supplemental Guidance)

Development tools include programming languages and computer-aided design systems. Reviews of development processes include the use of maturity models to determine the potential effectiveness of such processes. Maintaining the integrity of changes to tools and processes facilitates effective supply chain risk assessment and mitigation. Such integrity requires configuration control throughout the system development life cycle to track authorized changes and prevent unauthorized changes.

Enhancements NIST SOURCE

SA-15(1) Quality Metrics LOW MODERATE HIGH

Require the developer of the system, system component, or system service to:

  1. (a) Define quality metrics at the beginning of the development process; and
  2. (b) Provide evidence of meeting the quality metrics [one of: ; ; upon delivery].
Discussion

Organizations use quality metrics to establish acceptable levels of system quality. Metrics can include quality gates, which are collections of completion criteria or sufficiency standards that represent the satisfactory execution of specific phases of the system development project. For example, a quality gate may require the elimination of all compiler warnings or a determination that such warnings have no impact on the effectiveness of required security or privacy capabilities. During the execution phases of development projects, quality gates provide clear, unambiguous indications of progress. Other metrics apply to the entire development project. Metrics can include defining the severity thresholds of vulnerabilities in accordance with organizational risk tolerance, such as requiring no known vulnerabilities in the delivered system with a Common Vulnerability Scoring System (CVSS) severity of medium or high.

Open full page for SA-15(1) →
SA-15(2) Security and Privacy Tracking Tools LOW MODERATE HIGH

Require the developer of the system, system component, or system service to select and employ security and privacy tracking tools for use during the development process.

Discussion

System development teams select and deploy security and privacy tracking tools, including vulnerability or work item tracking systems that facilitate assignment, sorting, filtering, and tracking of completed work items or tasks associated with development processes.

Open full page for SA-15(2) →
SA-15(3) Criticality Analysis LOW ✓ MODERATE ✓ HIGH

Require the developer of the system, system component, or system service to perform a criticality analysis:

  1. (a) At the following decision points in the system development life cycle: [decision points] ; and
  2. (b) At the following level of rigor: [organization-defined breadth and depth of criticality analysis].
Discussion

Criticality analysis performed by the developer provides input to the criticality analysis performed by organizations. Developer input is essential to organizational criticality analysis because organizations may not have access to detailed design documentation for system components that are developed as commercial off-the-shelf products. Such design documentation includes functional specifications, high-level designs, low-level designs, source code, and hardware schematics. Criticality analysis is important for organizational systems that are designated as high value assets. High value assets can be moderate- or high-impact systems due to heightened adversarial interest or potential adverse effects on the federal enterprise. Developer input is especially important when organizations conduct supply chain criticality analyses.

Open full page for SA-15(3) →
SA-15(4) Threat Modeling and Vulnerability Analysis WITHDRAWN

Withdrawn. Incorporated into SA-11(2).

SA-15(5) Attack Surface Reduction LOW MODERATE HIGH

Require the developer of the system, system component, or system service to reduce attack surfaces to [thresholds].

Discussion

Attack surface reduction is closely aligned with threat and vulnerability analyses and system architecture and design. Attack surface reduction is a means of reducing risk to organizations by giving attackers less opportunity to exploit weaknesses or deficiencies (i.e., potential vulnerabilities) within systems, system components, and system services. Attack surface reduction includes implementing the concept of layered defenses, applying the principles of least privilege and least functionality, applying secure software development practices, deprecating unsafe functions, reducing entry points available to unauthorized users, reducing the amount of code that executes, and eliminating application programming interfaces (APIs) that are vulnerable to attacks.

Open full page for SA-15(5) →
SA-15(6) Continuous Improvement LOW MODERATE HIGH

Require the developer of the system, system component, or system service to implement an explicit process to continuously improve the development process.

Discussion

Developers of systems, system components, and system services consider the effectiveness and efficiency of their development processes for meeting quality objectives and addressing the security and privacy capabilities in current threat environments.

Open full page for SA-15(6) →
SA-15(7) Automated Vulnerability Analysis LOW MODERATE HIGH

Require the developer of the system, system component, or system service [frequency] to:

  1. (a) Perform an automated vulnerability analysis using [tools];
  2. (b) Determine the exploitation potential for discovered vulnerabilities;
  3. (c) Determine potential risk mitigations for delivered vulnerabilities; and
  4. (d) Deliver the outputs of the tools and results of the analysis to [personnel or roles].
Discussion

Automated tools can be more effective at analyzing exploitable weaknesses or deficiencies in large and complex systems, prioritizing vulnerabilities by severity, and providing recommendations for risk mitigations.

Open full page for SA-15(7) →
SA-15(8) Reuse of Threat and Vulnerability Information LOW MODERATE HIGH

Require the developer of the system, system component, or system service to use threat modeling and vulnerability analyses from similar systems, components, or services to inform the current development process.

Discussion

Analysis of vulnerabilities found in similar software applications can inform potential design and implementation issues for systems under development. Similar systems or system components may exist within developer organizations. Vulnerability information is available from a variety of public and private sector sources, including the NIST National Vulnerability Database.

Open full page for SA-15(8) →
SA-15(9) Use of Live Data WITHDRAWN

Withdrawn. Incorporated into SA-3(2).

SA-15(10) Incident Response Plan LOW MODERATE HIGH

Require the developer of the system, system component, or system service to provide, implement, and test an incident response plan.

Discussion

The incident response plan provided by developers may provide information not readily available to organizations and be incorporated into organizational incident response plans. Developer information may also be extremely helpful, such as when organizations respond to vulnerabilities in commercial off-the-shelf products.

Open full page for SA-15(10) →
SA-15(11) Archive System or Component LOW MODERATE HIGH

Require the developer of the system or system component to archive the system or component to be released or delivered together with the corresponding evidence supporting the final security and privacy review.

Discussion

Archiving system or system components requires the developer to retain key development artifacts, including hardware specifications, source code, object code, and relevant documentation from the development process that can provide a readily available configuration baseline for system and component upgrades or modifications.

Open full page for SA-15(11) →
SA-15(12) Minimize Personally Identifiable Information LOW MODERATE HIGH

Require the developer of the system or system component to minimize the use of personally identifiable information in development and test environments.

Discussion

Organizations can minimize the risk to an individual’s privacy by using techniques such as de-identification or synthetic data. Limiting the use of personally identifiable information in development and test environments helps reduce the level of privacy risk created by a system.

Open full page for SA-15(12) →
SA-15(13) Logging Syntax LOW MODERATE HIGH

Require the developer of the system or system component to minimize the use of personally identifiable information in development and test environments.

Discussion

In support of better incident response and the ability to more quickly reconstruct security-related actions, identifying specific requirements for secure logging facilitates the ability to connect application-produced audit event logs with operational data. Event types are consistent with the event types defined in AU-02.

Open full page for SA-15(13) →

Implementation Guidance

Engineering Interpretation

Original engineering commentary written for this explorer — not NIST source text and not authoritative guidance.

No engineering interpretation has been authored for SA-15 yet. This section is architected to receive it — see the Requirements and Assessment sections above for the authoritative NIST source content in the meantime.

Assessment

NIST SP 800-53A REV 5.2.0

Assessment Objectives

  1. frequency at which to review the development process, standards, tools, tool options, and tool configurations is defined;
  2. security requirements to be satisfied by the process, standards, tools, tool options, and tool configurations are defined;
  3. privacy requirements to be satisfied by the process, standards, tools, tool options, and tool configurations are defined;
  4. the developer of the system, system component, or system service is required to follow a documented development process that explicitly addresses security requirements;
  5. the developer of the system, system component, or system service is required to follow a documented development process that explicitly addresses privacy requirements;
  6. the developer of the system, system component, or system service is required to follow a documented development process that identifies the standards used in the development process;
  7. the developer of the system, system component, or system service is required to follow a documented development process that identifies the tools used in the development process;
  8. the developer of the system, system component, or system service is required to follow a documented development process that documents the specific tool used in the development process;
  9. the developer of the system, system component, or system service is required to follow a documented development process that documents the specific tool configurations used in the development process;
  10. the developer of the system, system component, or system service is required to follow a documented development process that documents, manages, and ensures the integrity of changes to the process and/or tools used in development;
  11. the developer of the system, system component, or system service is required to follow a documented development process in which the development process, standards, tools, tool options, and tool configurations are reviewed <SA-15_ODP[01] frequency> to determine that the process, standards, tools, tool options, and tool configurations selected and employed satisfy <SA-15_ODP[02] security requirements>;
  12. the developer of the system, system component, or system service is required to follow a documented development process in which the development process, standards, tools, tool options, and tool configurations are reviewed <SA-15_ODP[01] frequency> to determine that the process, standards, tools, tool options, and tool configurations selected and employed satisfy <SA-15_ODP[03] privacy requirements>.

Examine

[SELECT FROM: System and services acquisition policy; system and services acquisition procedures; procedures addressing development process, standards, and tools; procedures addressing the integration of security and privacy requirements during the development process; solicitation documentation; acquisition documentation; critical component inventory documentation; service level agreements; acquisition contracts for the system, system component, or system service; system developer documentation listing tool options/configuration guides; configuration management policy; configuration management records; documentation of development process reviews using maturity models; change control records; configuration control records; documented reviews of the development process, standards, tools, and tool options/configurations; system security plan; privacy plan; privacy impact assessment; privacy risk assessment documentation; other relevant documents or records].

Interview

[SELECT FROM: Organizational personnel with system and service acquisition responsibilities; organizational personnel with information security and privacy responsibilities; system developer].

Overlays

OT/ICS Overlay SP 800-82r3

NIST SP 800-82r3 Appendix F, Table 22. Blank baseline means the control/control enhancement is not selected in that initial OT baseline.

LOW

Not applicable at this tier.

MODERATE

  • Base control: Included (matches standard baseline)
  • Included: (3)

HIGH

  • Base control: Included (matches standard baseline)
  • Included: (3)

STIGs & CCIs

No STIG checks or CCI mappings are currently loaded for SA-15. This section is architected to display, per product: STIG ID, Finding ID, Severity, Title, Description, Check, Fix, CCI, and NIST control mapping — but nothing is populated here until a real DISA STIG/CCI dataset is ingested.

Learn more about STIG/CCI integration →

Evidence

Potential Evidence — Derived

Categorized from the SP 800-53A "Examine"/"Test" artifact list above by keyword — not an authoritative NIST evidence list.

Policy

  • System and services acquisition policy
  • system security plan
  • privacy plan

Configuration

  • critical component inventory documentation
  • system developer documentation listing tool options/configuration guides
  • configuration management policy
  • configuration management records
  • configuration control records

Other Records

  • system and services acquisition procedures
  • procedures addressing development process, standards, and tools
  • procedures addressing the integration of security and privacy requirements during the development process
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • documentation of development process reviews using maturity models
  • change control records
  • documented reviews of the development process, standards, tools, and tool options/configurations
  • privacy impact assessment
  • privacy risk assessment documentation
  • other relevant documents or records