Requirements for achieving efficiency, transparency, and innovation through reusable and open source software

Understand the policy framework: Federal Source Code Policy and OMB M-16–21

What is the Federal Source Code Policy?

In August 2016, the Office of Management and Budget (OMB) issued M-16-21, Federal Source Code Policy: Achieving Efficiency, Transparency, and Innovation through Reusable and Open Source Software (PDF, 188 KB, 15 pages).

The Federal Source Code Policy is designed to support the reuse of and public access to custom-developed federal source code. It requires new, custom-developed source code developed specifically by or for the federal government to be made available for sharing and re-use across all federal agencies. Furthermore, the policy supports publishing open source software (OSS).

Agencies are required to perform several tasks in order to satisfy the objectives of the policy:

  1. Updated agency policy: Agencies must update their policies to be consistent with the Federal Source Code Policy.
  2. Updated acquisition language: Agencies must update acquisition language to capture new custom code, whether built by a contractor or federal employee.
  3. Updated code inventory: Agencies must create and update an agency source code inventory to be placed online on their agency website.

Why is it important?

Each year, the federal government spends billions of dollars on software. Federal agencies do not always make their new code broadly available for reuse across the government; if they do make their source code available, it may not be in a consistent way.

When federal agencies make their custom-developed source code broadly available, it can reduce duplicative acquisitions, save taxpayer money, and increase quality.

What does it mean to achieve efficiency, transparency, and innovation through reusable and open source software?

OMB’s policy guidance in M-16-21 requires all executive branch agencies to conduct a three-step analysis in meeting their software needs.

  1. Conduct strategic analysis and analyze alternatives
  2. Consider existing commercial solutions
  3. Consider custom development

The analysis helps teams identify alternatives and mitigate additional spending on custom-developed software.

Conduct strategic analysis and analyze alternatives

The purpose of this step is to ensure your agency — not just your acquisition team, but also your technology team, program management team, and leadership, among others — has a complete, strategic view of what offerings exist before determining that an acquisition is required.

This step asks teams to do market research to discover what federal and non-federal solutions are already available before buying or building software.

Strategic analysis considerations

Consider existing commercial solutions

As with step one, the purpose of this step is to develop your agency’s strategic view of the marketplace prior to initiating an acquisition. Agencies should remember in surveying the marketplace that many commercial solutions can be extended through custom code to meet your requirements.

Consider custom development

The Federal Source Code Policy pilot program requires agencies to release at least 20% of new custom-developed code each year as open source software. While agencies are encouraged to release a greater percentage of code if doing so is beneficial to the government, agencies are not required to release more than 20% of code.

If your agency determines that custom code development is necessary, it is important to clearly communicate reuse and open source requirements as part of the solicitation and presolicitation process. Whether during a Request for Information or industry day, explain to potential vendors early and often that your agency intends to receive appropriate rights for government re-use or open source, as applicable.

Note

Digital.gov provides information and resources for federal agencies related to web and digital policies. However, we cannot interpret the statutes or specific requirements.

Contact OMB’s Office of the Federal CIO at ofcio@omb.eop.gov with any questions about interpretations of the law and guidance.