Agile Government Handbook

An overview of the history, best practices, current state, and future direction of agile in the government context

What is Agile?

“Agile” is a term that can be applied to software development or project management. It’s a way of working that is iterative, incremental, and highly interactive. Users are engaged from the start and throughout the project. Tasks are prioritized and completed in short sprints of work (usually two weeks in duration).

The Agile Manifesto was compiled by a group of brilliant programmers who believed strongly in the need for an alternative to traditional, documentation-heavy, “waterfall” development (in which a software project is planned for months or years, and then launched – often over-budget and sadly lacking in features that are of value to users.)

Agile principles have relevance beyond software development. When an organization adopts agile, it fundamentally changes its culture to be more collaborative and responsive to change.

Agile Manifesto

“Through this work we have come to value

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.”

Learn More

READ: Principles behind the Agile Manifesto
These principles can help you envision how an agile project should work.

READ: Roles and Terms
Get familiar with the vocabulary and roles of agile.

WATCH: Agile 101 Discussion
A panel of government professionals gathers to discuss agile roles, adoption, and challenges.

GOV.UK on Agile

Agile in Government

Agile methods have been favored in private sector industries for almost a decade. More recently, governments have begun to realize that they can serve citizens more effectively by adopting agile and increasing transparency and collaboration. Involving users throughout every project, agile methods allow agencies to use tax dollars efficiently, deliver better services, and modernize legacy software with less risk.

Benefits

The U.S. federal TechFAR Handbook highlights six key reasons why government should adopt agile for IT project management and development.

  • Improvement in investment manageability and budgetary feasibility
  • Reduction of overall risk
  • Frequent delivery of usable capabilities that provide value to customers more rapidly
  • Increased flexibility
  • Creation of new opportunities for small businesses
  • Greater visibility into contractor performance
Learn More

READ: Agile in Government
Playbook on Agile in Government from the Deloitte Center for Government Insights.

READ: A Story of an Agile Workshop
How a group of folks at the Social Security Administration got a grip on agile in one day.

READ: Agencies delivering IT capabilities 20 days faster by using agile, OMB says
OMB has seen significant improvements to their service delivery using agile methods.

READ: DHS shifting to cloud, agile development to boost homeland security
The Department of Homeland Security allows users to inform their development process.

Resources

To help government agencies build effective digital services, organizations such as United States Digital Service (USDS), 18F (within GSA), and the National Association of State CIOs (NASCIO) have provided guidance and resources for the use of agile methods and how they can be applied to various government-specific challenges.

Learn More

U.S. Digital Services Playbook
13 key “plays” that help agencies apply effective digital strategies from the private sector.

Digital Acquisition Playbook
Helps make you a smarter buyer of digital government services.

The TechFAR Handbook
Highlights flexibilities in the Federal Acquisition Regulation (FAR) that allow for a more agile approach.

The TechFAR Hub
Explore resources to apply industry best practices to the world of digital service acquisition.

Agile IT Delivery: Imperatives for Government Success
The National Association of State Chief Information Officers (NASCIO) reports best practices for agile at the state level.

Running an agile project in government

Adopting Agile in Government

The U.S. Government Accountability Office has identified ten best practices for applying agile software development methods to IT projects. From the GAO report:

“The practices generally align with five key software development project management activities: strategic planning, organizational commitment and collaboration, preparation, execution, and evaluation. Officials who have used Agile methods on federal projects generally agreed that these practices are effective.”

  1. Start with Agile guidance and an Agile adoption strategy.
  2. Enhance migration to Agile concepts using Agile terms, such as user stories (used to convey requirements), and Agile examples, such as demonstrating how to write a user story.
  3. Continuously improve Agile adoption at both the project level and organization level.
  4. Seek to identify and address impediments at the organization and project levels.
  5. Obtain stakeholder/customer feedback frequently.
  6. Empower small, cross-functional teams.
  7. Include requirements related to security and progress monitoring in your queue of unfinished work (the backlog).
  8. Gain trust by demonstrating value at the end of each iteration.
  9. Track progress using tools and metrics.
  10. Track progress daily and visibly.

(Source: U.S. Government Accountability Office, Effective Practices and Federal Challenges in Applying Agile Methods)

Learn More

READ: Key Questions and Checklist
Important questions to ask when delivering an agile project.

READ: 10 Steps to Making Your Agency Agile
Kickstart your agile efforts with these simple tips.

READ: The new government leader: Mobilizing agile public leadership in disruptive times
Best practices for leading effectively in a world where citizens expect real-time engagement.

LISTEN: Managing and Delivering Digital Services For Agile Software Development
Chris Cairns of 18F explains the key strengths of an agile project manager.

Adopting Agile (DigitalGov)

Cultural Transformation

Agile methods often require a fundamental shift in the way government agencies think and operate. Leaders must be willing to ‘let go’ of some control while teams must be willing to ‘step up’, collaborate productively, and take risks. It doesn’t happen overnight. Cultivating an adaptable organizational mindset that responds well to inevitable change is crucial to the successful implementation of agile.

Before true agile transformation can take place, an organization must start establishing a shared vision. The values held by employees, teams, and operating units should extend upward through the organization and converge with those of leadership, culminating in a shared vision. With bottom-up implementation and top-down support, shared understanding and eventually convergence will occur.

Oftentimes in government there is an effort to standardize through governance and policy making, resulting in lack of enthusiasm. By shifting perspective from one of governance to support, teams will be more likely to think outside the box and collaborate on new ideas. Employees must feel safe to experiment - and even to fail - in order to fully implement an agile cultural mindset. The support of leadership is integral to this approach.

Learn More

READ: When Agile Meets Government - Closing the Culture Gap
Deloitte offers insight on how to blend public sector and agile culture.

READ: Five Cultural Shifts Agile Brings to Agencies
If your team can embrace these key concepts, the transition to agile will be easier.

WATCH: How To Overcome Cultural Resistance To Agile In Government
Prepare for some of the cultural resistance you will face when implementing agile methods.

Cultural Transformation (Ann Dunkin)

Case Studies

READ: Agile Government and The Department of Justice
See how agile methods can reduce the risks in modernizing legacy systems with many stakeholders.

READ: Agile Government and Salt Lake City
Agile helped one city decrease missed deadlines by delivering projects on time.

READ: Agile Government and the Broadcasting Board of Governors
Good training and prioritization are keys to success for projects at the BBG.

READ: Agile Government and the GSA (Integrated Award Environment)
How to keep the big picture in mind, while breaking the project into manageable chunks.

Agile Government and the State of Maine

Agile Acquisition / Procurement

The traditional government procurement approach, heavy on functional specifications and fixed prices, is at odds with the collaborative and evolving nature of agile projects. Some acquisition officials are re-thinking the government procurement process to place more emphasis on HOW products are executed, rather than WHAT is being developed. Their goal is to hire agile teams who will work with users and provide a final product that solves real problems, avoiding the comprehensive listing of features up-front that may become irrelevant by the end of the project.

Some agencies are trying to make it easier for small agile firms to sell to government by creating “agile development vendor pools” or “agile blanket purchase agreements”. Other agencies have experimented with “tech demos”, where vendors have a chance to show their agile skills in a live technical challenge, instead of writing long-winded proposals.

Much work remains to be done to bridge the gap between traditional acquisition methods and best agile practices – but IT leaders from industry and government have teamed up to work on the challenge, and have seen some promising successes.

Learn more

READ: Going Agile - The New Mind-Set For Procurement Officials
How does agile change the role of the acquisition officer?

READ: Guidelines for Agile, Challenge-Based Procurement
Firms should “show, not tell” what they can do for government IT, proving their agile chops.

READ: ACT-IAC Acquisition Best Practices to Procure Agile IT Services
Federal leaders share ideas for achieving benefits of agile within current acquisition frameworks.

READ: Creating A Federal Marketplace For Agile Delivery Services
How a consulting group inside the GSA created a Blanket Purchase Agreement for agile.

READ: Lessons Learned From the Government’s Biggest Attempt to Fix Tech Procurement
An insider’s take on what happened to the FLASH agile contract vehicle.

WATCH: Basic Agile Acquisition
Overview of how acquisition can be made flexible and iterative to accommodate agile.

WATCH: Agile Acquisitions 101
Examples and tips on how agile acquisition has been successful in Federal government.

LISTEN: Driving Agile IT Procurement
Acquisition professionals explain their success with innovative IT contract strategies.

Source: Federal Acquisition Institute

LISTEN: USCIS Eyes More Collaboration, Competition in Move to Agile Development
Mark Schwartz, former CIO of USCIS, explains how agile vendors can compete for government work.

Source: Federal News Radio

Overcoming Challenges

Government regulations, legacy systems, and resistant culture all present unique challenges to the implementation of agile practices. Leaders in government transformation have explored ways to overcome these barriers and successfully bring agile to the public sector.

Learn more

READ: Agile Government: Overcoming Objections, Facing Reality, and Saving Money
Explains how to overcome objections to agile and shows how agile saves on fiscal waste.

READ: 4 Roadblocks to Agile Development and How to Overcome Them
Arm yourself with solutions to some of the greatest challenges agile presents in government.

READ: Implementing Agile in the Government Sector
How to get your foot in the door with agile despite regulations and bureaucracy.

READ: Bootstrapping the Modernization of Federal Legacy Systems
How an agile share-in-savings contract approach can help agencies with aging systems.

DevOps

DevOps (Development and Operations) is a process that uses automation to reduce bottlenecks in the release and deployment cycle of software development while reducing errors and enabling faster systems recovery during outages. DevOps is considered a philosophy and requires a cultural shift in how teams and organizations view software delivery.

Many government agencies are discovering the value of DevOps for faster delivery of solutions, happier customers, and more satisfied IT teams. DevOps is an extension of agile methods, inspired partly by the cadenced delivery of software in an agile project. The DevOps “Toolchain” includes: Code, Build, Test, Package, Release, Configure, and Monitor.

The CALMS framework describes the main requirements to DevOps adoption:

  • Culture: DevOps requires collaboration and communication between the Dev and IT/Ops teams for its successful implementation. One way of accomplishing this is to create product teams for any development effort with the inclusion of the operations personnel.
  • Automation: Automation across the build, test and deployment are central to the practice of DevOps. Teams new to DevOps will start with building up their continuous integration abilities with an emphasis on automated testing practices. Continuous deployment is the next step in the maturity matrix of DevOps.
  • Lean: Within DevOps, continuous improvement is extremely important. Processes that hinder its adoption need to be streamlined.
  • Measurement: Any improvement has to be backed up by data. The practice of DevOps starts with identifying key metrics and then building these up to include more as the practice matures.
  • Sharing: This is part of the communication aspect of the DevOps philosophy and emphasizes sharing of information between the development and operations teams to ensure that delivery problems are addressed efficiently.
Learn More

Read: What is DevOps
Breakdown of the basic concepts and practices of DevOps.

READ and WATCH: DevOps - Deploy Better Software Faster
Understand the context for DevOps, how it came to be, and what it means for IT.

READ: DevOps Strategies for IT Modernization
How three federal agencies are using DevOps to keep their IT systems up to date.

LISTEN: DevOps Helping Two Agencies Take On Complex IT Modernization
The USCIS and and FCC discuss their experiences and strategies for DevOps success.

READ: Why Compliance Demands a DevOps Approach
Learn how DevOps automation can help agencies achieve compliance.

What is DevOps In Simple English

Feedback

The Handbook is a community project. Suggestions and contributions are welcome!

Feedback and Suggestions: If you have identified something that could be improved, corrected, or added - please open an issue in the GitHub repository. This will allow the site editors to triage and implement the change.

Contributions: For the more tech-savvy among us, direct contributions in the form of pull requests are welcome. The Handbook readme page has instructions on making changes and submitting a pull request.