Welcome Readers of the Carnival of Enterprise Architecture! We hope you enjoy this series of articles!
CMMI (Capability Maturity Model Integration) is a description of the level of enlightenment of a process. It is essentially a measure of the quality and capability of a process. There are five categories, into one of which every process will fall. IBM took a similar approach to defining the requirements management process. In this series of posts, we will marry the two frameworks.
Background on CMMI Levels
We wrote an introduction to CMMI levels last March. In our article, we identified that there are five CMMI levels. Technically, there are six CMMI levels, when you include level zero. Level 0 is “undefined” by the CMMI, and represents an ad hoc process, or a lack of process.
- CMMI Level 0. Undefined. No real process.
- CMMI Level 1. Performed. A process is defined, but disorganized.
- CMMI Level 2. Managed. A defined process is managed.
- CMMI Level 3. Defined. A managed process is standardized across the company.
- CMMI Level 4. Quantitatively Measured. The performance of a standardized process is measured.
- CMMI Level 5. Optimizing. Performance measurement is used as a feedback loop to improve the process.
Take CMMI Levels With A Grain of Salt
Just knowing the CMMI Level of a process is not enough to know if the process is any good. By the same token, choosing a particular CMMI level, and meeting the technical requirements of that level are not enough to assure a good process.
Backgroundon RMM Levels
The folks at IBM wrote an article in 2003, where they defined five levels of maturity for requirements management processes. All five of the requirements management maturity (RMM) levels all build on the previous level, with increasing capability.
- RMM Level 0. Chaos. No persistent documentation of requirements.
- RMM Level 1. Written Requirements. Writing requirements documents (not emails and whiteboards).
- RMM Level 2. Organized Requirements. Colocation, versioning, consistent formatting.
- RMM Level 3. Structured Requirements. Defining types of requirements and their relationships.
- RMM Level 4. Traced Requirements. Explicitly mapping the support-network of requirements.
- RMM Level 5. Integrated Requirements. Integrating with the development environment and change management.
What IBM Didn’t Do
They didn’t map their framework back into the CMMI framework (known as CMM at the time) except for the following comment in the introduction of their article:
Those familiar with the CMM (Capability Maturity Model) from the Software Engineering Institute (SEI) will note some similarities to our parallel model, which has no direct relationship to the CMM save one: Achieving Level Five of the RMM will assuredly help an organization get to at least Level Three of the CMM.
IBM put together a great framework for describing elements of increasingly capable requirements management processes.
That is what the SEI tried to do when they developed the CMMI. Why couldn’t the IBM team just map their framework into the CMMI framework?
The problem is there is a mismatch between the two frameworks.
- The RMM framework describes steps and elements of a requirements management process. Each step adds a level of capability to the process. It might be more aptly named the requirements management capability framework.
- The CMMI framework describes the strategic capabilities (maturity) of how a process is applied, without assessing the tactical capabilities of the process itself.
The SEI recognized that the analysis of the tactical capabilities of any process would be different for every process, and left it to others to perform that work. This is almost what the IBM team did. We’re going to take a crack at it here.
Mapping RMM Levels to CMMI Levels
This is the first in a series of articles that will present a mapping of RMM levels to CMMI levels. We like using CMMI as a means to evaluate our internal processes, notwithstanding the challenges we mentioned earlier. We also like the framework that IBM presented for describing requirements management processes.
Shoot First, Ask Questions Later
There’s a lot more to write about this than we can put into a single article. We’re going to tackle this as a series. Even so, we put together an initial draft of how we think this will ultimately work out. We’ll share that here now. But we reserve the right to fix it when we find problems as we (and you!) put more effort into it.
Articles In This Series
- Foundation Series: CMMI Levels Explained
- What CMMI Level Should We Use?
- CMMI Levels and RMM Introduction
- CMMI Levels and RMM Level 1 – Written Requirements
- CMMI Levels and RMM Level 2 – Organized Requirements
- CMMI Levels and RMM Level 3 – Structured Requirements
- CMMI Levels and RMM Level 4 – Traced Requirements
- CMMI Levels and RMM Level 5 – Integrated Requirements
- Don’t forget to take our One Minute Survey on CMMI and RMM.