I was just about to write an essay on Kaizen in lean software development when an IBM Rational press release crossed my desk. Among the new product announcements contained in that release, the one that jumped up at me was for IBM’s new Measured Capability Improvement Framework (MCIF), which allows organizations "to continuously improve on results by learning from past experiences. Through MCIF, IBM provides organizations with an end-to-end framework that enables them to measure results and manage projects so they can incrementally improve their software delivery capability."
That, in a nutshell, is Kaizen, derived from the two Japanese words "kai," meaning "change," and "zen," meaning "good"; the term is generally translated "continuous improvement." In lean manufacturing, Kaizen is the daily practice of looking for ways to improve the process. According to "The Art of Lean Software Development," which I discussed last month, Toyota has been practicing Kaizen for 50 years and is still implementing tens of thousands of improvements each year.
Continuous improvement is the focus of CMMI Level 5, the highest point on the Software Engineering Institute Capability Maturity Model Integration scale. Basically, IBM Rational is announcing a framework that can help software development organizations that have already achieved the lower CMMI levels bring themselves to level 5.
Now, in my experience, a high CMMI level isn't always a good indicator of software development expertise, quality, and productivity. I've seen unrated organizations that could produce great software quickly with few defects, and highly rated organizations that were too loaded down with process to actually deliver any software at a reasonable cost. Nevertheless, for IBM Rational customers, the introduction of MCIF sounds like good news.
What do you think? Does your organization do Kaizen? Could it?