With the recognition that the traditional, top-down, monolithic approach to revamping critical software systems is prone to costly failure, a cadre of innovators is moving swiftly to take a different tack on a single, high-risk project: overhaul of the technology that runs child welfare services. The demonstration project will develop and integrate functions such as intake, licensing, eligibility, court processing, financial management and administration of case management. They are using what is called an “agile” approach.
While agile management of IT projects is a familiar model in the business sector, it represents a vastly different approach for states like California, which have wasted millions of dollars on failed software development projects in recent years. Its proponents argue that agile is less costly, quicker to implement and more effective because it’s done through customer collaboration, breaks projects into digestible parts, maintains flexibility to allow for changes and tests the product early in the development process so that poor performers are rejected and replaced.
Marybel Batjer, secretary of California’s massive Government Operations Agency and a key player in the demonstration project, is almost giddy with enthusiasm about agile’s potential application across state government entities with different service demands.
“I would love to be very successful very quickly with agile methodology,” she said. “When California is successful at something, it usually burns quickly across the country like a wildfire.”
But with California’s vast bureaucracies responsible for managing everything from Medi-Cal claims to automobile registration to state employee payroll, will a move toward a more agile approach be akin to turning the Titanic?
Mark Layton, author of Agile Project Management for Dummies and founder of a company that helps businesses move from traditional software development to agile, said eventually all industries, including government, will adopt agile approaches as a matter of survival.
“Because of the state’s historical failures, agile isn’t a choice,” said Layton, who has a contract with California to help fix problems associated with its stalled $1.7 billion deal with Xerox to develop and implement the state’s Medicaid Management Information System. “It’s not a question of if the state moves to agile, but how smoothly they do it.”
The agile model was created in the 1990s to replace the “waterfall” model of software development, a World War II procurement approach when computers used just a few dozen lines of software code. As its name suggests, waterfall is a software design model that flows downward through phases of conception, design, construction, testing, implementation and maintenance. Waterfall uses a “defined control method,” in which everything is outlined and then executed around that plan. It’s a risky approach, Layton argued, because collecting the software requirements can take so long that by the time they are approved, the requirements often are obsolete.
“If it takes you six months to start cutting code, you’re dead in the water,” said Layton. “You are applying a static approach to a dynamic process.”
With the traditional model, testing is put off until too late in the process, he said. “No one knows how many defects they will have in a future system because you don’t get exposed to them until you have run out of time or money to do anything about it.”
Agile caught on with the commercialization of the Internet when software applications evolved to require hundreds of thousands of lines of code. Early adopters were companies requiring fast “time to market” delivery of business products. Layton said using this more empirical model of software development begins with a high-level, holistic view of what the customer is trying to achieve, and that allows for flexibility to change system requirements early in the process when they are easier to fix or scrap. Development cycles are “iterative,” in that the team works in short time frames or “sprints” to plan, analyze the requirements, design, code, test and demonstrate the product for the customer.
Here's one of the most well known guidance statements for Agile:
MANIFESTO FOR AGILE SOFTWARE DEVELOPMENT
We are uncovering better ways of developing software by doing it and helping others do it.
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.
Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick
Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas
© 2001, the above authors
This declaration may be freely copied in any form, but only in its entirety through this notice.
Source: www.agilemanifesto.org
This story is published in the spring 2016 issue of Techwire magazine.