Mike, it’s sad but true. Those days of freestyle boogie-boarding, drinking Jolt Cola, not writing anything down and “just coding” are gone forever. So let’s all pin split black ribbons on our overcoats and follow the jazz procession through the rain. Agile, as we knew it, is dead.
To your point, it is true that conventional wisdom says that agile is exploding exponentially in our industry. But if you look at it closely, you realize that agile is only exploding horizontally. It’s not exploding vertically.
What does this mean? Agile is getting more adoption at the lower levels of companies, but it doesn’t have corporate support in the board room. And that’s a problem.
I know this from first-hand experience. Look at the agile thought leaders – Jeff Sutherland, Ron Jeffries, and Ken Schwaber. Great thinkers, authors and speakers. Some of the best agile people we have, and none of them has a ticket to a board room. None of them speak at conferences outside of agile software conferences. None of them are changing the way the large agile adopters do business. That’s because agile is not exploding vertically.
Have you ever had a customer (or manager, if you are an internal agile shop) say something like this to you:
- “Let’s be more agile! But how about if we only have a weekly Standup?”
- “Let’s transition all of our projects over to agile by February!”
- “Sure, go ahead and be agile! Just don’t bother the customer!”
- “Be agile! Be CMMI Level 3! Be mature … by Tuesday!”
- “Be agile! And use project managers!”
What the heck does all that mean? It means that agile is not exploding vertically. It’s not reaching upward to senior management. That’s because the people running companies and controlling our budgets have killed agile.
But if we are going to bring agile back to life, we’ve got to strengthen agile and make it resilient with CMMI.
This comes as news to some folks. They don’t realize that CMMI and agile work beautifully together, and are both about the same thing: solving business problems. For example, here are some of the business problems agile and CMMI were designed to solve:
- Late requirements
- Misunderstood requirements
- Late projects
- Over budget projects
- Defects in software
- In the dark about projects
- Too many meetings
Notice, all of these are problems that exist in every software project. There isn’t a software project on the planet that doesn’t suffer from those problems. The question is, how do we manage them?
Agile methods are an excellent way to manage software project using iterative and incremental techniques such as Scrum, Spiral and XP. And CMMI is an excellent tool to both improve upon how you adopt those methods, and how you fill in any gaps you (or your management) might have.
CMMI helps you understand how well agile methods are working for you. It helps you communicate important information to other stakeholders like Management, Customers and Accounting. And when you are ready to test your agile methods, go ahead and schedule a CMMI Appraisal.
Many of my agile purista friends argue that all that matters is what goes on inside a Scrum team. Some insist that no one else is allowed into their Daily Standup. This just is not realistic in the real world, and it's not useful. Customers, management, accounting and marketing all have a legitimate stake in software projects, no matter how annoying their directives to “go agile” seem to be.
The most useful approach is to strengthen agile and make it resilient using the CMMI as a guide. This allows us to receive all of the benefits these frameworks are intended to provide: higher quality products, faster delivery, and predictable, repeatable results. And it allows us to bring agile back to life.
For more information about using CMMI and agile together, check out this Wednesday's Webinar: "Everything You Need to Know: Agile Transformation" on 4/15 @ noon EDT.
Like this blog? Forward to your nearest engineering or software exec!
Jeff Dalton is a Certified SCAMPI Lead Appraiser, Certified CMMI Instructor, author, and consultant with years of real-world experience with the CMMI in all types of organizations. Jeff has taught thousands of students in CMMI trainings and has received an aggregate satisfaction score of 4.97 out of 5 from his students.