Integrating CMMI and Agile (Scrum) for Software Development

Organizations follows may paths in their pursuit of excellence, using different principles, approaches, and methods along the way. It stands to reason, then, that an organization interested in adopting agile practices may also want PMI’s OPM3, ISO or Capability Maturity Model Integration (CMMI) as a way to accomplish that excellence.

Agile development methods and CMMI are often perceived to be at opposite to each other. In truth, it’s not challenging to embrace both to significantly enhance business performance if we think out of the box by not expecting particular work items when we look for the value and understand the function of CMMI practices instead of the proofs for the appraisal.

Many think that agile and CMMI are polar opposites and sub-optimize each other’s efforts. In the ongoing fight in between traditional and agile frameworks, advocates of each side display a basic intolerance to the other’s concepts. Nevertheless, this adversarial mindset is not just unreasonable; it’s disadvantageous to the task at hand: establishing the highest-quality software in the shortest possible time. Creating a reliable mix of designs and approaches, with chosen methods to repair certain difficulties, appears to have the greatest return on financial investment.


Scrum and CMMI – Does it fit together?

Lots of people ask the question “Do CMMI and agile principles fit together?” The statement that Scrum and CMMI fit together has actually been talked about various times already. The answer is a clear “yes”. However, many individuals still ask “How?” and have different experiences: “In my organization CMMI was executed with a command and control culture, how can this fit with agile principles?” This short article offers clear responses to these questions.


How to use CMMI with agile principles?

Everything boils down to the interpretation of CMMI. While numerous people have experienced CMMI with a command and control culture, that is no place composed into CMMI. Rather the opposite. If you apply agile principles, you can concern a really various interpretation of CMMI than if you apply command and control concepts. So, if individuals tell you a command and control interpretation of CMMI, that is their view. Do your very own interpretation. Really, CMMI even asks you for this.

“Where is that written in CMMI?” you may ask. Everywhere. It is among the key principles of CMMI that you analyze it in the light of your organization’s concepts. If they are agile principles, use them. In the introductory notes CMMI says that any statement in CMMI must be interpreted using “your organizational constraints, and your business environment”. With this CMMI indicates that any statement in CMMI should read annotated with the words “according to your business principles.” If you live an agile culture, annotate that. E. g. CMMI asks “How do you plan your project?”, which is indicated to be checked out as “How do you prepare your project according to your agile concepts?”.

Due to the fact that this is so essential to CMMI, many statements clearly have the words “as required”, “suitable” or “adequate” in them. They all suggest the exact same, saying: “Please truly, truly find a solution that fits your company’s principles.” You now probably see how incorrect specialists are that included predefined process meanings you need to perform in order to be CMMI compliant (whatever “certified” ways). This can not ever be according to your company’s concepts. This can never be right.


Does not CMMI state what you must do?

While numerous specialists like to state “you need to do this or that”, this is utterly incorrect. Your organization mustn’t do anything. In any case, this is not how you treat grownups.

CMMI is a grid system that notes “what” an efficient and efficient organization does. CMMI does not list any “how” you do it. The “how” is what you create– according to your business principles. Deal with CMMI as good individual asking you questions about your work, like „ How do you plan your project according to your agile concepts?” Now, with Scrum you have fairly a great answer to that. This is how Scrum and CMMI fit together.


Benefits of integrating Scrum and CMMI?

CMMI lists all practices “what” an effective and efficient organization generally does. Scrum supplies excellent solutions for the “how” of planning and running jobs. Yet, there is far more to an agile organization. What is the job of management? How about engineering? CMMI provides you the “How do you …?” concerns for those areas, too. With this you have an orientation that assists you improve far beyond Scrum, always with your agile principles as your guide to shape agile solutions to the “what” that CMMI lists. Yes, CMMI is far more than Scrum. But then an organization is far more than Scrum.


Command, Control and Processes of CMMI

This is probably among the greatest misunderstandings of CMMI, since the word “process” is utilized in a lot of ways. In CMMI, the word “process” merely represents “work”. If you read it that way, numerous things become fairly evident.

In this short article I have recommended some “phrasing” changes that might help you understand CMMI in properly. Here is my idea for you, to make things a lot easier to check out: Download CMMI as a word file and do a search and replace. Replace “process” by “work”. Also replace “as required”, “suitable” and “adequate” with “according to our agile principles”. Voilà. There is your agile CMMI. Wait. Use it that way for your organization.


How to start?

CMMI is not produced reading. If you look at CMMI you will see that it is bought alphabetically. It is a dictionary. You don’t check out a dictionary from A-Z (unless you have actually been restricted to jail for five years). However, looking things up in a dictionary is fairly beneficial. Also, looking things up in CMMI is quite beneficial. What you really ought to learn is how to find things and ways to navigate. A licensed CMMI training gives you a fast and trustworthy “entry” into CMMI, better than any reading could. If you wish to dive into CMMI with an agile interpretation, go to an “Introduction to CMMI” training that is held by a trainer who is a Certified Scrum Professional.


Challenges with Implementing Agile into CMMI Level 3

When an organization is listed below CMMi level 3, it lacks steady procedures for project, requirements, and configuration management. Because of an overall lack of discipline within the enterprise, the agile execution has to broaden to provide the missing software development procedures. In an organization with CMMI maturity level no or one, processes usually change based upon the user or event. Agile tasks can be successful in these circumstances but may not be repeatable. The organization does not have a stable environment and might not understand or understand all the parts that make up its environment. As a result, success in these companies depends upon the institutional knowledge, competence, and heroics of individuals in the organization, in addition to the level of effort expended by the team.

At CMMI level two some processes are repeatable although they might not restart for all the tasks in the organization. Carrying out agile practices and measures supplies the structure and discipline had to raise the organization to CMMI level 3. At maturity level 2, agile implementations will cost more; however, they can truly highlight the benefits of agile alone. Agile schedule tracking through burndown charts and job boards quickly allow the organization to see the effect of this discipline, consequently increasing the acceleration of the adoption. The overall viewpoint, approaches, and practices of agile frameworks naturally deal with the CMMI level 2’s organizational risk of exceeding cost and time price quotes and can make the time living at level 2 considerably much shorter. I have actually successfully utilized agile as a means to raise the capability level from an absolutely no to a level 2, while increasing customer complete satisfaction and ultimately feeding our bottom line.

At maturity levels greater than 3, procedures are anticipated to be the very same throughout an organization. Without substantial modification to the documented processes that have to support CMMI level 4, the versatility that agile can bring is limited. Given that an agile project’s progress shows up, such projects dovetail beautifully into the intent to enable management to rapidly recognize adaptive steps had to keep cost, schedule, and scope in control. A vital difference in between maturity level three and maturity level four is the predictability of process performance. At maturity level four, the performance of procedures is managed using analytical and other quantitative strategies and may be quantitatively predictable.



Much has been composed to map the Capability Maturity Model (CMM) to agile practices that plainly show the synergy in between the two. Educating ourselves on CMMI process locations, maturity levels and having the ability to help shift in between agile and CMMI is clearly in our benefit.

Post a comment