Hey, Al. Wow, he shot you down and you’re still coming back for more! I admire your persistence. It does seem slightly off-kilter that management would make you fight for improving the organization’s culture, but that’s how some companies are. You need a sense of humor to work there!
All kidding aside, let’s assume your boss is not COMPLETELY off his rocker. I once started working with a customer who said pretty much the same thing. I told him what would be involved in adopting the CMMI, and he said, “I want to have the application and nothing more. I don’t care if we have a process, if we are CMMI compliant, if there is documentation, if there are minutes of the meetings. I am not interested in how things are done. The only thing I care about is having the application as soon as possible in my environment. I am only paying for that. Everything else is overhead!”
After letting him rant, I gently reminded him of the Y2K debacle. There were some lessons to be learned. If the organizations that had to spend millions of dollars fixing that problem had done MINIMAL design and requirements documentation, then COBOL programmers would not have to be paid $250/hour to fix it, and IBM (and dozens of other firms) would not be billions of dollars richer for the effort.
In your firm, what is the true cost of developing software if you consider re-work, defects, mistakes, misunderstandings in requirements, endless test cycles, production fixes, etc?
These are the result of having a process that is poorly understood or underutilized, or having “no process,” which really means having a process that consists of everyone doing their own thing. Talk about overhead!
To get your boss to see the benefits of CMMI, ask him to consider what life would be like with the following performance improvements:
- Fewer defects
- Software that more likely meets your needs
- A smaller support/maintenance organization
- Projects being on time more often
- Projects being on budget more often
- The ability to manage multiple releases at the same time easily
- The ability to revert back to any release when needed
- Fewer mistakes during deployment (like the wrong code going into production)
- The ability to re-use code for future projects (saving up to 50% of effort)
- The ability to reuse architecture designs in the future (again saving up to 50%)
- The ability to use resources across a wider array of projects, making more people available
- The ability to more quickly deliver projects (more Agile!)
In fairness, your boss probably has good reason for being skeptical about performance improvement models like CMMI. We’ve all suffered through too many forms, meetings, reviews, and sign-offs. We’ve all groaned under the weight of heavy-handed quality audits and too much oversight.
But that’s not the CMMI. The CMMI is not about certificates, plaques, and ratings. It’s not a test you need to pass.
Adopted properly, the CMMI is about supercharging engineering performance, increasing productivity, reducing risk, and doing what you do, better. It’s about transforming the company culture and begin joyful on the path to greatness.
Now, that’s what I call a fun house!
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.