presidential-innovation-fellows/code-gov-web

View on GitHub
src/app/components/policy-guide/policy/policy-introduction/policy-introduction.template.html

Summary

Maintainability
Test Coverage
<h1>Introduction</h1>
<h3>M-16-21<br /> MEMORANDUM FOR THE HEADS OF DEPARTMENTS AND AGENCIES</h3>
<br />
<h4>FROM: <br/>Tony Scott <br/> United States Chief Information Officer</h4>
<h4>Anne E. Rung<br/> United States Chief Acquisition Officer</h4>
<br />
<h4>SUBJECT:<br/> Federal Source Code Policy: Achieving Efficiency, Transparency, and Innovation through Reusable and Open Source Software</h4>
<br />
<p>The U.S. Government is committed to improving the way Federal agencies buy, build, and deliver information technology (IT) and software solutions to better support cost efficiency, mission effectiveness, and the consumer experience with Government programs. Each year, the Federal Government spends more than $6 billion on software through more than 42,000 transactions.<sup id='fnr1'><a pageScroll href="#fn1">1</a></sup> A significant proportion of software used by the Government is comprised of either preexisting Federal solutions or commercial solutions. These solutions include proprietary, open source, and mixed source2 code and often do not require additional custom code development.</p>

<p>When Federal agencies are unable to identify an existing Federal or commercial software solution that satisfies their specific needs, they may choose to develop a custom software solution on their own or pay for its development. When agencies procure custom-developed source code, however, they do not necessarily make their new code (source code or code) broadly available for Federal Government-wide reuse. Even when agencies are in a position to make their source code available on a Government-wide basis, they do not make such code available to other agencies in a consistent manner. In some cases, agencies may even have difficulty establishing that the software was produced in the performance of a Federal Government contract. These challenges may result in duplicative acquisitions for substantially similar code and an inefficient use of taxpayer dollars.
This policy seeks to address these challenges by ensuring that new custom-developed Federal source code be made broadly available for reuse across the Federal Government.<sup id="fnr3"><a pageScroll href="#fn3">3</a></sup> This is consistent with the <em>Digital Government Strategy’s</em> “Shared Platform” approach, which enables Federal employees to work together—both within and across agencies—to reduce costs, streamline development, apply uniform standards, and ensure consistency in creating and delivering information.<sup id="fnr4"><a pageScroll href="#fn4">4</a></sup> Enhanced reuse of custom-developed code across the Federal Government can have significant benefits for American taxpayers, including decreasing duplicative costs for the same code and reducing Federal vendor lock-in.<sup id="fnr5"><a pageScroll href="#fn5">5</a></sup></p>

<p>This policy also establishes a pilot program that requires agencies, when commissioning new custom software, to release at least 20 percent of new custom-developed code as Open Source Software (OSS) for three years, and collect additional data concerning new custom software to inform metrics to gauge the performance of this pilot.<sup id="fnr6"><a pageScroll href="#fn6">6</a></sup></p>

<p>While the benefits of enhanced Federal custom-developed code reuse are significant, additional benefits can accrue when source code is also made available to the public as OSS. Making source code available as OSS can enable continual improvement of Federal custom-developed code projects as a result of a broader user community implementing the code for its own purposes and publishing improvements. This collaborative atmosphere can make it easier to conduct software peer review and security testing, to reuse existing solutions, and to share technical knowledge.<sup id="fnr7"><a pageScroll href="#fn7">7</a></sup> Furthermore, vendors participating in or competing for future maintenance or enhancement can do so with full knowledge of the underlying source code. A number of private sector companies have already shifted some of their software development projects to an OSS model, in which the source code of the software is made broadly available to the public for inspection, improvement, and reuse.</p>

<p>Several Federal agencies and component organizations have also begun publishing custom-developed code as OSS or without any restriction on use. Some of these include:</p>

<ul>
  <li>
    <p>The White House: “We the People” is a White House service that allows the American people to easily and interactively petition their Government. The source code for this website is freely available as OSS;<sup id="fnr8"><a pageScroll href="#fn8">8</a></sup></p>
  </li>
  <li>
    <p>18F<sup id="fnr9"><a pageScroll href="#fn9">9</a></sup> and the Consumer Financial Protection Bureau (CFPB):<sup id="fnr10"><a pageScroll href="#fn10">10</a></sup> Both of these organizations have policies that establish a default position to publish source code that is custom-developed by or for the organization. For example, both organizations contribute to the source code for the eRegulations platform,<sup id="fnr11"><a pageScroll href="#fn11">11</a></sup> a web-based interface for public viewing and commenting on proposed changes to Federal regulations. The eRegulations platform, which originated at CFPB, is being used by other Federal agencies<sup id="fnr12"><a pageScroll href="#fn12">12</a></sup> and continues to be improved based on public feedback;<sup id="fnr13"><a pageScroll href="#fn13">13</a></sup></p>
  </li>
  <li>
    <p>The Department of Education: This agency’s “College Scorecard” is a citizen-facing OSS website and accompanying application programming interface (API) that provides free tools to help potential students make informed decisions about which colleges or universities to attend;<sup id="fnr14"><a pageScroll href="#fn14">14</a></sup> and</p>
  </li>
  <li>
    <p>The Department of Defense (DOD): This agency issued a memorandum<sup id="fnr15"><a pageScroll href="#fn15">15</a></sup> in 2009 that, among other things, describes the many benefits of OSS that should be considered when conducting market research on software for DOD use.<sup id="fnr16"><a pageScroll href="#fn16">16</a></sup></p>
  </li>
</ul>

<p>The Administration made a commitment, as part of its <em>Second Open Government National Action Plan</em>,<sup id="fnr17"><a pageScroll href="#fn17">17</a></sup> to “develop an open source software policy that, together with the Digital Services Playbook, will support improved access to custom software code developed for the Federal government.”<sup id="fnr18"><a pageScroll href="#fn18">18</a></sup>  This policy fulfills that commitment in an effort to improve U.S. Government software development and make the Government more open, transparent, and accessible to the public.</p>

<br />
<h4>Footnotes</h4>
<ul class="list-unstyled">
  <li id="fn1"><sup>1</sup> <em>M-16-12: Improving the Acquisition and Management of Common Information Technology: Software Licensing.</em> Office of Mgmt. &amp; Budget, Exec. Office of the President, June 2, 2016. <a href="https://www.whitehouse.gov/sites/default/files/omb/memoranda/2016/m-16-12_1.pdf">https://www.whitehouse.gov/sites/default/files/omb/memoranda/2016/m-16-12_1.pdf</a>.  <a pageScroll href="#fnr1">↩</a></li>
  <li id="fn2"><sup>2</sup> <em>See</em> Appendix A for definitions of key technical terms used throughout this policy document.<a pageScroll href="#fnr2">↩</a></li>
  <li id="fn3"><sup>3</sup> <em>See</em> Section 6 of this policy for additional information about limited exceptions.<a pageScroll href="#fnr3">↩</a></li>
  <li id="fn4"><sup>4</sup> <em>Digital Government: Building A 21st Century Platform To Better Serve The American People</em>, Office of Mgmt. &amp; Budget, Exec. Office of the President, May 23, 2012. <a href="https://www.whitehouse.gov/sites/default/files/omb/egov/digital-government/digital-government.html">https://www.whitehouse.gov/sites/default/files/omb/egov/digital-government/digital-government.html</a>. <a pageScroll href="#fnr4">↩</a></li>
  <li id="fn5"><sup>5</sup>  “Vendor lock-in” refers to a situation in which the customer depends on a single supplier for a product and cannot easily move to another vendor without sustaining substantial cost or inconvenience. Vendor lock-in can potentially raise costs and stifle innovation and it can result in reduced competition on future related software acquisitions.<a href="./#fnr5">↩</a></li>
  <li id="fn6"><sup>6</sup>  <em>Clinger Cohen Act of 1996</em>. 40 U.S.C. §§ 11301-11303.<a pageScroll href="#fnr6">↩</a></li>
  <li id="fn7"><sup>7</sup>  Department of Defense Chief Information Officer. <em>Clarifying Guidance Regarding Open Source Software (OSS)</em>. October 16, 2009. “The continuous and broad peer-review enabled by publicly available source code supports software reliability and security efforts through the identification and elimination of defects that might otherwise go unrecognized by a more limited core development team.” <a href="http://dodcio.defense.gov/Portals/0/Documents/FOSS/2009OSS.pdf">http://dodcio.defense.gov/Portals/0/Documents/FOSS/2009OSS.pdf</a>.<a pageScroll href="#fnr7">↩</a></li>
  <li id="fn8"><sup>8</sup>  “We the People” petitions are accessible at <a href="https://petitions.whitehouse.gov/">https://petitions.whitehouse.gov/</a>. The source code for “We the People” is available at <a href="https://github.com/WhiteHouse/petitions">https://github.com/WhiteHouse/petitions</a>.<a pageScroll href="#fnr8">↩</a></li>
  <li id="fn9"><sup>9</sup>  18F (<a href="https://18f.gsa.gov/">https://18f.gsa.gov/</a>) is a digital services delivery team within the General Services Administration. The 18F Open Source Policy is described at <a href="https://18f.gsa.gov/2014/07/29/18f-an-open-source-team/">https://18f.gsa.gov/2014/07/29/18f-an-open-source-team/</a> and can be accessed at <a href="https://github.com/18F/open-source-policy/blob/master/policy.md">https://github.com/18F/open-source-policy/blob/master/policy.md</a>.<a pageScroll href="#fnr9">↩</a></li>
  <li id="fn10"><sup>10</sup>  CFPB’s source code policy is described at <a href="http://www.consumerfinance.gov/blog/the-cfpbs-source-code-policy-open-and-shared/">http://www.consumerfinance.gov/blog/the-cfpbs-source-code-policy-open-and-shared/</a> and can be accessed at <a href="https://cfpb.github.io/source-code-policy/">https://cfpb.github.io/source-code-policy/</a>. <a pageScroll href="#fnr10">↩</a></li>
  <li id="fn11"><sup>11</sup> “eRegulations,” CFPB’s platform to read regulations, is accessible at <a href="http://www.consumerfinance.gov/eregulations/">http://www.consumerfinance.gov/eregulations/</a>.<a pageScroll href="#fnr11">↩</a></li>
  <li id="fn12"><sup>12</sup> The Bureau of Alcohol, Tobacco, Firearms, and Explosives (ATF) has adopted a beta version of “eRegulations,” accessible at <a href="https://atf-eregs.18f.gov/">https://atf-eregs.18f.gov/</a>. <a pageScroll href="#fnr12">↩</a></li>
  <li id="fn13"><sup>13</sup>  The publically accessible open source repository for submitting comments and proposing improvements to the “eRegulations” platform is accessible at <a href="https://github.com/eregs/notice-and-comment">https://github.com/eregs/notice-and-comment</a>. 18F also developed <a href="https://analytics.usa.gov">https://analytics.usa.gov</a>—jointly with the U.S. Digital Service—to provide a window into how people are interacting with the Federal Government online and made the source code available online (<a href="https://github.com/18F/analytics-reporter">https://github.com/18F/analytics-reporter</a>). The cities of Philadelphia, PA (<a href="http://analytics.phila.gov/">http://analytics.phila.gov/</a>) and Boulder, CO (<a href="https://bouldercolorado.gov/stats">https://bouldercolorado.gov/stats</a>) were able to reuse the code to provide their own citizens with real-time information on how city government websites serve citizens.<a pageScroll href="#fnr13">↩</a></li>
  <li id="fn14"><sup>14</sup>  The Department of Education’s College Scorecard is accessible at <a href="https://collegescorecard.ed.gov/">https://collegescorecard.ed.gov/</a>. The open source repository for the website and API that runs the College Scorecard is available via 18F’s GitHub repository, accessible at <a href="https://github.com/18F/college-choice">https://github.com/18F/college-choice</a>. <a pageScroll href="#fnr14">↩</a></li>
  <li id="fn15"><sup>15</sup>  Department of Defense Chief Information Officer. <em>Clarifying Guidance Regarding Open Source Software (OSS)</em>. October 16, 2009. <a href="http://dodcio.defense.gov/Portals/0/Documents/OSSFAQ/2009OSS.pdf">http://dodcio.defense.gov/Portals/0/Documents/OSSFAQ/2009OSS.pdf</a> <a pageScroll href="#fnr15">↩</a></li>
  <li id="fn16"><sup>16</sup>  The Department of Defense’s OSS FAQ states that “continuous and broad peer-review, enabled by publicly available source code, improves software reliability and security through the identification and elimination of defects that might otherwise go unrecognized.” <em>Frequently Asked Questions regarding Open Source Software (OSS) and the Department of Defense (DoD)</em>, accessible at <a href="https://dodcio.defense.gov/OpenSourceSoftwareFAQ.aspx">https://dodcio.defense.gov/OpenSourceSoftwareFAQ.aspx</a>.<a pageScroll href="#fnr16">↩</a></li>
  <li id="fn17"><sup>17</sup>  <em>The Open Government Partnership: Announcing New Open Government Initiatives as part of the Second Open Government National Action Plan for The United States of America.</em> September 2014. Page 2. <a href="https://www.whitehouse.gov/sites/default/files/microsites/ostp/new_nap_commitments_report_092314.pdf">https://www.whitehouse.gov/sites/default/files/microsites/ostp/new_nap_commitments_report_092314.pdf</a>. <a pageScroll href="#fnr17">↩</a></li>
  <li id="fn18"><sup>18</sup>  The Digital Services Playbook was developed by the U.S. Digital Service and consists of key “plays” that can help the Government build effective digital services. It encourages agencies to “default to open” and seek contracts that specify that “software and data generated by third parties remains under [the U.S. Government’s] control, and can be reused and released to the public as appropriate and in accordance with the law.” It also requires an explanation “[i]f the codebase has not been released under an open source license.” <a href="https://playbook.cio.gov/">https://playbook.cio.gov/</a>.<a pageScroll href="#fnr18">↩</a></li>
</ul>