A few weeks ago I looked up “agility” on wikipedia to help with a marketing piece. I wanted to explain how our company’s philosophies on agile software development also applied to our entire operation.
My presumption was that the concept of agile software development is still relatively unknown, so I would need to define the concept in an easily digestable way.
Our team has practiced agile software development since it was introduced in the late 90’s. In fact, we formed our company with many of the same philosophies because the founders originally worked together as an agile software team.
Since then, I have evolved into an evangelist for the concepts outlined in the agile manifesto. But lately I have found myself having to “sell” this approach less and less.
So I wonder: has agile has gone mainstream?
Last March I was invited to present to the Software Process Improvement group at the U.S. Census Bureau with a former colleague, Marsha Acker, CEO of consulting firm TeamCatapult. Our presentation was entitled ‘Where Agile Meets the CMMI’. Our conclusion was that Agile methods and the CMMI framework were actually compatible and complimentary approaches to software development…but we expected pushback and doubt.
When I was a consultant to the federal government, this topic would have been taboo. CMMI (or more correctly its predecessor at the time CMM) was the holy grail of process improvement and software quality assurance. “Agile” was a revolutionary movement – a perceived way to get out of doing the hard stuff and avoid documentation, planning, and project management.
But the folks at the Census Bureau didn’t need to be sold. They were not only accepting of the idea that these two good ideas could go exist, they were way ahead of us in asking nuts and bolts questions about “how” to put it into practice. Like right now!
I am very glad that the world seems to be accepting agile methods, but in truth successful adoption and implementation of these techniques does take some discipline, training, tools and appropriately trained people to implement.
One thing is clear to me – regardless of how mainstream, it’s time to start innovating – how do we make it work better and what are the specifics? I hope we can cover these concepts in subsequent posts.