In 2015 when Ellumen began pursuing CMMI Level 3 Development, Agile methods had already been infused across several government contracts and refined through the leadership of Ellumen Vice President for Technology, Dan Wayland. During Ellumen’s CMMI appraisal, we found incorporating our Agile Scrum processes to CMMI for development was not a simple one-to-one mapping. An in-depth understanding of Agile processes and the CMMI model was required as our appraisal team compiled hundreds of Agile development artifacts and spent several months performing the necessary mappings against our pre-established processes.
There has been some debate among experts on whether the frequent inspection and fluid adaption used in Agile principles is compatible with the rigid repeatable processes provided by CMMI. However, the demonstrable proof that Agile-CMMI processes can work exceptionally well together is evident in the success of our contracts. “My staff has always found that Agile methods facilitate the best results within the software development lifecycle. However, the established process areas of CMMI is an even further improvement because it forces organizations to consider the breadth of activities for which processes are needed and can fill significant gaps in a meaningful way,” Dan Wayland stated.
The Union of Agile-CMMI Compliments Software Development
As any software developer will tell you, there is an inherent tendency for changes in requirements and priorities to occur throughout the software development lifecycle. However, even with last minute changing requirements, quality checks and reviews are always necessary to ensure that updates and modifications to software work when delivered. This demanding environment can result in an unexpected increase in cost and late delivery. The method must facilitate the success of the project and therefore allow for changing requirements at any point in the software development lifecycle without dramatically increasing work. This is where the marriage of Agile and CMMI comes into play. According to Mr. Wayland, “It’s encouraging that the two approaches are being used in tandem because Agile can help organizations pursuing CMMI certification get better results, and those who are already using Agile may see that they’re not covering all the necessary process areas.”
CMMI involves firm processes and can provide peer reviews and quality controls where none existed while Agile, as the name suggests, allows for more fluidity in the system and accounts for organizational controls, cultural factors, and the frequent human cognitive interactions that are essential to a project.
Agile and CMMI are Better Together
Recently, we were pleasantly surprised to find that the CMMI Institute had released “A Guide to Scrum and CMMI®: Improving Agile Performance with CMMI.” This document confirmed that Ellumen Agile processes are in alignment with the CMMI model. The fact that we found this alignment was not necessarily a foregone conclusion. The implementation of Agile can be far from uniform among those that claim it as their method. Keeping in mind that tailoring is required to cater to the unique workings of each organization, the difference between the two organizational approaches is what makes Agile and CMMI a successful union. “The implementation of CMMI was not an overnight transition, but the process areas that CMMI covered were already being performed with our Agile process in some capacity,” Dan Wayland said. “The result is better quality work and the delivery of successful projects on time without any unexpected fluctuation in budget or need for extra resources.”