To many people, the phrase “agile government” seems like an oxymoron. Most of us have heard horror stories of bureaucracies slowing things down, having a slavish devotion to rules, and not adapting to change. Given all this, I was curious what the US Government Accountability Office (GAO) report, released in July 2012, on agile software development in government projects might say.
The report identified challenges as well as successes. It was especially interesting that the report's recommendations could apply equally well to a small technology company adopting agile methods as they could to large government-related organizations.
Agile software development in government agencies has been in the works for a couple of years. This report looked at successful implementations, such as one in the Department of Veterans Affairs (VA), as well as less successful ones. That just about two years ago the GAO reported that the VA wasn’t agile enough emphasizes the point that iteration and improvement involved the process as well as the product.
Successes identified in the report include working to understand agile principles (such as those in the Agile Manifesto), allowing for failure so that you can improve, testing early and often, establishing trust by demonstrating value at the end of each iteration, and empowering self-organizing, cross-functional teams. These are success factors of any project in any context—not just those in government.
Most of the challenges that the report mentioned dealt with agile's difference from the status quo. Tracking, team structure, and communication patterns (among other things) are different in an agile project when compared to a traditional project, and organizations have trouble adapting,
A particularly amusing example of the mismatch between standard metrics and agile teams was the frustration caused when “dashboard statistics are flagged in red to note deviations, even when the deviation is positive, such as being ahead of schedule and under cost.” When being better is viewed as a deviation, you know you have challenges.
While there are technical practices that define agile software development, agile is as much a cultural issue as a technical issue. Consider that many of the sessions at the Agile Government Summit taking place on November 1, 2012, are not just about technology, though technology plays a role. Following practices helps you understand the principles, but doing the practices isn’t enough. It’s possible to follow agile practices and not have an agile process.
Even though your organization seems different from a government organization, there is much to learn from these projects. If you are trying to understand how to make agile successful in a challenging organization, this report is worth a quick review.
Steve Berczuk is an engineer and ScrumMaster at Humedica where he's helping to build next-generation SaaS-based clinical informatics applications. He is the author of Software Configuration Management Patterns: Effective Teamwork, Practical Integration, and has an M.S. in operations research from Stanford University and an S.B. in Electrical Engineering from MIT.