Mar 23 2020

The Most Logical Federal Use Cases for DevOps

DevOps helps agencies modernize aging applications and processes, save time, and enhance quality of life for developers.

Agencies are turning to a DevOps methodology to develop applications and increase innovation but face hurdles in increasing adoption of the approach, according to a newly released white paper.

The white paper from ACT-IAC, “DevOps Primer: Case Studies and Best Practices from Across Government,” notes that DevOps remains “a small pilot effort on a handful of applications” because it “usually lacks visibility and struggles to the attention and resources devoted to larger initiatives.” 

The white paper notes that agencies face challenges in deploying DevOps due to “a lack of true executive understanding, buy-in, and support,” leading to many IT leaders and staff working on DevOps to “struggle to define and then meet expectations (both their own and their leaders and appropriators).” 

However, the white paper outlines ways that agencies have successfully shifted to DevOps, providing a roadmap for their peers as they continue to evolve their strategies. The paper includes case studies from the U.S. Patent and Trademark Office, U.S. Citizenship and Immigration Services, the IRS, the National Museum of African American History and Culture, the National Park Service, and the National Science Foundation.

The agencies describe the goals, benefits, approach, lessons learned and next steps that are specific to their unique missions and cultures, and the case studies highlight the possibilities and pitfalls to be avoided.

Understanding the Basics of DevOps

DevOps encourages software developers to work with IT operations staff on testing and quality assurance to develop software more quickly and automate infrastructure changes. It’s a collaborative mentality designed to produce software faster and more efficiently. 

DevOps is the combination of “cultural philosophies, practices, and tools that increases an organization’s ability to deliver IT applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes,” the white paper notes. 

As the white paper notes, “with continuous integration and continuous delivery and a robust test suite, code changes can be pushed and auto deployed to development/testing/production delivering incremental enhancements as soon as they are completed and in a manner that reduces regression errors.” DevOps also enables a rapid deployment pipeline of code and reduced feedback loops, according to the white paper. 

Additionally, when true CI/CD is put in place, there is a robust change history automatically integrated into the source control repository. That enables rapid disaster recovery if a code change has unintended consequences that were not picked up by the test framework.

MORE FROM FEDTECH: Find out how the USDA uses containers to build apps.

How Agencies Are Deploying DevOps for Their Missions

Federal agencies have used DevOps for a variety of needs, according to the white paper. For example, the IRS has used DevOps to help it modernize aging applications and processes. In the past, some development teams installed continuous integration servers to enforce repeatable, consistent compile and quality in build processes, and some operations teams were implementing automated delivery processes. However, it was not until 2017 that the IRS set up its DevOps organization as a cross-functional program.

Initially, the IRS DevOps team set out to provision new environments, tear down old ones and reduce lead times for new builds from months to days, according to the white paper. As a result, the IRS intended to cut the number of environments its developers need. The goal was to further lower complexities and cost. 

Specifically, “streamlining governance and approval processes is reducing lags in staff productivity” at the IRS, according to the white paper. “Automating testing and deployment actions allows for faster feedback and actionable corrections, resulting in higher quality products and additional freed up staff hours. All the realized excess capacity freed from these efficiencies allows more time for staff to address other higher priority deliverables.”

At the NSF, the agency has used DevOps to save time, which has led to more features being developed. Like other agencies, the NSF has a “never-ending” backlog, the white paper notes, and before DevOps, developers were working until 2 a.m. on Friday nights to run validation scripts during off hours. 

“Now, [NSF has] one engineer to click a button during the day and it runs. It’s optimized the time of [the agency’s] most valuable resources,” the white paper says. 

DevOps has boosted the morale of developers, who are now able to perform “no downtime” deployments and cut down on the need to work late nights and on weekends. “It’s more of an intangible benefit but [it makes] this a much better, more productive place to work,” the white paper says. “Further, faster releases encourage better overall code writing because the feedback is almost immediate.”

skynesher/Getty Images