The scope of the TMMi model
The intention of TMMi is to cover all testing activities (including test process improvement) for software engineering and systems engineering. While software engineering relates specifically to the creation of software systems, systems engineering does not necessarily include software – but TMMi will still be relevant and useful here.
The TMMi Model is generic enough to apply to all delivery life cycles, all types of industry (i.e. domains) – such as finance, insurance, retail, government and utilities – and any kind of organisational structure. It is also detailed enough to cover:
- All test levels – including static testing – from lower levels of unit or component test all the way through to the higher levels, such as system integration, user acceptance and operational acceptance testing.
- All test types – including functional and non-functional
- All the associated work that needs to be done to support testing – in other words, ‘structured testing’ – including life cycle, test techniques, test organisation and infrastructure.
TMMi and CMMI
We have already seen that TMMi is a complementary model to CMMI. They are of a similar structure, use much the same vocabularies for similar definitions and some goals are the same.
Because of this, TMMi can be used at the same time as the staged version of CMMI when conducting assessments on both the testing process (TMMi) and the development process (CMMI). When training is needed in both models, this may be easily conducted in parallel (and take less time overall) as the models are so similar at a high level.
Some CMMI process areas support TMMi at the corresponding or higher Level. In some limited cases there is a relationship from a TMMi Level to a higher CMMI level. In general though, when TMMi Process Areas and Practices are elaborated upon in CMMI, TMMi does not repeat or copy the elaboration, but merely makes reference to CMMI for the purpose.
An example of this is configuration management, which is applicable to all TMMi Process Areas, through the Generic Practices. The details of configuration management processes are not duplicated or explained in detail in TMMi, but the CMMI process area is referenced.
TMMi and the approach to test process improvement
TMMi can be used as a reference model when planning or carrying out test process improvement. It is not, though, in of itself an approach for test process improvement. There are several approaches that can be employed, including Six Sigma, Total Quality Management (TQM) and others, generally based on the Deming cycle of plan – do – check- act. However, the Software Engineering Institute developed the IDEAL model for use with CMMI, which has also been shown to be useful when implementing TMMi. We cover the IDEAL model more fully in a later lesson https://www.experimentus.com/lessons/the-ideal-model/.
TMMi in the context of assessments
Different organisations use TMMi in different ways, depending on what they are trying to achieve. Some just want to find out how their testing process compares with other organisations in the industry as a whole, or in their sector / domain. Others may need to prove that they are operating to a certain standard, either internally (to higher management) or externally to their customers or other organisations with which they collaborate. Still others just want to obtain a certificate.
No matter what the ultimate reason for an assessment, one of the main outputs from the exercise is a list of opportunities for improvement. TMMi, being so detailed, is a very good model to use for this purpose. For example, by assessing an organisation at the level of the TMMi Sub-practices, the outcome of an assessment can provide low-level feedback on what aspects of the test process could be introduced, enhanced, refined or upgraded.
Note that TMMi is not, in itself, an assessment method. An assessment method includes all the surrounding and supporting processes and procedures for conducting an assessment. These requirements are found in the TAMAR document, not in the TMMi framework. Apart from anything else, TAMAR helps to ensure that all assessments are conducted consistently, resulting in comparable results between organisations even if they have been assessed by different assessment providers using different accredited methods.
When using TMMi for the purposes of assessment, the model elements must be interpreted as necessary, taking into account many factors, such as:.
- The context of the organisational unit being assessed
- The delivery life cycle used
- The strategic objectives of the organisation (e.g. quality, time to market)?
- The size and structure of the organisation
All information gathered should be judged appropriately taking into account the organisational context, At the end of the day, test processes should be fit for purpose, be usable, and should produce positive results.
Assessment teams should not evaluate a test organisation based on what they would do themselves, but against what is available within the industry as a whole.
The assessment team must interpret the requirements of the model appropriately. to ensure that, while the precise way an activity is undertaken may vary widely, the activity is present and is appropriate to the needs of both the model and of the organisation.
As an example, let’s take a test plan.
- In a V-model delivery life cycle, the assessment team would look for extensive test plans (maybe based on all aspects of IEEE 829) to be defined early in the life cycle, reviewed extensively and approved before test specification, design and execution starts.
- For an Agile delivery life cycle methodology, the test plans may be much shorter or held in a tool, undertaken within a sprint, and not necessarily reviewed formally or widely. More importantly, test plans for the team may be defined in parallel with test specification and design.
Both would achieve the model requirements once the context is understood. In both examples the test plan is appropriate, fit for purpose and achieves the desired result.
The main point to understand is that the model is not a prescriptive “one size fits all” solution. It contains a lot of words. Don’t just read the words – understand and interpret what is being asked for.
For the philosophy behind “The Finger Pointing to the Moon” see: http://www.satrakshita.com/the_finger_and_the_moon.htm . Basically, look beyond the words to what the underlying meaning is.