CMMI claims their models provide guidance for developing or improving processes that meet the business goals of an organisation. CMM and CMMI are often stated as the industry standard for software process improvement (and CMM did provide process improvement projects with process and structure).
However, only a limited portion of the CMMI model is devoted to testing. Given that testing can take up anything from 30 – 80% of total project costs (depending on the type of application and development method) you might expect the model to pay more attention to it.
At Level 3 of CMMI there is verification and validation for the testing process but these areas are covered at such a high level as to not be of much practical use. Verification (has the system been built correctly) and validation (has the right system been built) provide some more testing focus, but there is no step-to-step guidance to aid in improving the testing process.
The focus of CMMI is not so much on a mature testing process, but more on organisational and systems engineering processes – in other words, the bigger picture. The CMMI model validates software engineering processes to ensure that procedures are in place. It does not, however, ensure that the test process is effective, efficient and actually used by the organisation. So…
TMMi complements CMMI and is a detailed model for test process improvement.
Comparison of TMMi and CMMI Levels 2 and 3 show:
TMMi does not validate software engineering processes specifically, but it does ensure that:
TMMi is a reference model which examines the specific processes at every level above Level 1. A large part of CMMI level 2 looks only generically at a high level.
Looking at TMMi Levels 2 and 3 coverage:
TMMi Levels need specific support from Process Areas at its corresponding CMMI Level or from lower CMMI Levels. In exceptional cases there is even a relationship to higher CMMI Levels.
Non-test Process Areas and practices elaborated in CMMI are mostly not repeated in TMMi, only referenced. For example, the Process Area ‘Configuration Management’, which is applicable to test (work) products or test ware, is not elaborated upon in TMMi. Instead the practices from CMMI are referenced and re-used implicitly.
At CMMI Maturity Level 2 – Managed there are the following Process Areas
The CMMI Process Areas in italics above are those representing processes and activities which are not covered by TMMi. However, they are highly important and necessary to achieve TMMi, as they support TMMi Level 2 activities (in italics below) which cannot run in their own right. Without the CMMI Level 2 Process Areas being achieved the TMMi Level 2 would also fail:
Below are just some examples of CMMI Process Areas which are not specifically covered by TMMi: