Organizations always aim to deliver quality products, but even today, Quality Assurance (QA) in information technology (IT) Projects is often underestimated, and frequently the first things to be reduced when budget constraints occur. By creating well equipped and streamlined QA practices, organizations can alleviate quality and productive value concerns at every level of project delivery. In the following article, you will discover how the TMMi approach can help to improve your global QA impact and effectiveness.
It is often said that safety is everyone’s business. We should also say that Quality Assurance must also be everyone’s business, both in project management and business lines, from design to go-live, as well as for the break-in period (post go-live).
In some cases, there may be poor segregation of the environments necessary for the implementation of the different phases of a project. This occasionally results in differences in the code’s version, between environments. “Garbage In / Garbage Out” is an analogy that applies easily in such a case: if the wrong version is used in the first place, this error will generate several problems later!
Most organizations are aware of this kind of issue and will ask their teams to prepare a plan to avoid these situations. The large-scale adoption of the Agile approach, to obtain faster feedback or the DevOps practice for managing environments, also brings their share of challenges when it applies to Quality Assurance. These approaches are associated with change resistance and other organizational impacts and cannot replace a proven sound quality assurance approach on their own.
In the World Quality Report of 2019-2020 (published by the French consulting company Capgemini), we can see that over the last 4 years, Senior Management has placed a growing importance on setting Quality Assurance targets.
With the introduction of methodological changes such as the Agile or DevOps approach, it becomes essential to have an effective plan to properly target efforts, and the processes to ensure quality in the delivery of projects. What is more, very often these approaches do not happen alone and are introduced as part of a digital transformation, or some other major project. In this context where several changes intersect, it goes without saying that a well-planned Quality Assurance program becomes absolutely necessary.
This is exactly the goal of the TMMi (Test Maturity Model Integration) repository. Although still relatively new in North America, the TMMi repository allows organizations to define the plan to achieve the desired level of Quality Assurance. TMMi establishes:
- A list of processes to be put in place (e.g., testing policy and strategy, testing environment);
- Goals to be defined and measured to be effective;
- Practices to be defined while establishing managers and collaborators in each case.
The TMMi is to Quality Assurance, what the CMMI (Capability Capability Maturity Model Integration) is to software development. It aims to provide a clear roadmap of best practices to follow to improve an organization’s performance in Quality Assurance.
To determine if the TMMi repository is a tool that can apply well to your business, you need to understand its main purpose. Although it can be used to compare the QA performance within an organization, the TMMi repository is primarily a measurement tool. It will allow you to measure the maturity level of your organization (or of a specific team), using its tools and processes.
TMMi will help IT managers map their team’s needs, based on several levels of maturity described in the following diagram:
For more information, you will find many other reference documents on the TMMi Foundation website, which will help you to deepen your understanding of the model.
The TMMi model examines software testing at different levels of maturity, (assuming that all organizations start at level 1 of the maturity scale). The more mature an organization’s practices are, the higher the level.
The model has a step-by-step architecture for improving the testing process. It contains the levels by which an organization must move away from an ad hoc, unmanaged processes – to a managed, defined, measured and optimized process. Ideally, before moving to the next level, we ensure that an adequate improvement has been laid as the basis for the next step.
These efforts are designed to improve the testing process and ensure their focus on the needs of the organization, based on the context and its business environment. Going through the different levels of maturity increases the ability to align well with the needs of the company and the project in terms of test management and software quality. The benefits being of course, to improve the quality of the software by substantially reducing the defects.
TMMi: A Springboard to Build or Rebuild
The TMMi repository can also be seen as a springboard to build, or sometimes to rebuild, a culture of Quality Assurance for an organization or for a team.
In our experience, setting a standard to build on is a real advantage for both small and large teams or businesses. However, nothing is perfect, and it is often necessary to make adjustments to ensure that all those involved get a quick adoption.
In this regard, the TMMi repository is a tool that can perfectly adapt to your reality. Depending on your current maturity level, the size of your organization, the tools, or methods in place, the TMMi repositry will suggest a rating and potential improvements to your existing processes, allowing you a certain range of choices and latitude, while ensuring that you stay focused on the target for the measure and ascension of maturity.
Remember, TMMi is a toolset: You can use it for setting up practices, methodology or Quality Assurance teams, but you do not have to adopt all the recommendations proposed by the model.
You may target a specific level of maturity for a specific topic/subject, while adopting a different level in other aspects, all the while continuing your methodological maturity setting around Quality Assurance and testing. This will not prevent you from measuring yourself against the standard later and possibly catch up on the gaps.
It will also give teams a common tool, allowing them to use the same language, establish the same understanding and above all to have a convergent vision.
While it may seem a little excessive to talk about rebuilding a team, or a culture of Quality Assurance, the fact remains that organizations experience new in 2020, and they are a catalyst to initiating significant changes or transformations within their teams.
In this context, the TMMi repository helps to measure the level of maturity against the industry standard, but above all to compare with other companies in the same industry and allow them to have a new roadmap for this “reconstruction”.
Additionally, the TMMi model also adapts to your existing methods, to allow you to measure yourself against the standard, and identify what is going to require change and what is not. Whatever the methodology in place, (including but not limited to Waterfall, Agile or DevOps), the model has all the indicators, methods and tools to guide you through these transformations.
The implementation of the TMMi model is also a great way to motivate teams. Using it, allows your team to improve, both in relation to their work in-house, but also by competing and thus challenging themselves to become better.
In other words, the TMMi model is an exceptional tool for transforming organizations to improve the quality of its software development. It also goes without saying, that it is important that you have a Quality Assurance culture in place, and/or that you should never start a specific testing project without a testing approach that is accessible and adaptive. It will allow you to achieve tangible results.
A concrete example
Using the TMMi model, it is possible to identify the main friction points that have an impact on the quality of your deliverables and thus quickly add appropriate checkpoints. A ‘Use Case’ is always an effective way to illustrate this kind of problem.
Some time ago, our firm was engaged as a solution integrator for a major project in the retail sector. During the engagement, and using TMMi frameworks, we then identified quality issues in the delivery of software releases by the solution provider. Not surprisingly, the main impacts were related to delays in schedule, costs, and customer satisfaction.
Although this was not provided for in our initial project plan, we discussed with the supplier to make sure to ‘review of its quality processes’, and we added a Quality Assurance step, at our level, before delivery to the customer. We also requested an increased frequency of deliveries from the supplier so that we could test more quickly. Had we not implemented these changes the project would have been delivered late and at a cost well above budget.
These measures had the desired impact, and the client was very satisfied. On deployment, senior management commented: “The rollout of this major project went so well that we felt it was a small project. “
In this example, the formal TMMi framework was not in place at the client’s site. Nevertheless, we applied this approach by making an adjustment in regard to the test’s strategies and controls. This adjustment refers to the “Managed” maturity level (2), in the TMMi model diagram presented above.
Setting up a new Quality Assurance standard, such as the TMMi, is not always a simple and easy process. For some, the model might at first glance seem too strict, or you may simply disagree with its edicts. It should therefore be recommended by resources with the requisite expertise, (or at a minimum, to be trained in the TMMi standard), before embarking on a construction or transformation project.
As always, you cannot determine where you want to be, if you don’t know where you are. Therefore, an audit of your current situation will help to determine the level of maturity from which you start. From there, by utilizing experts, it will be easier to determine the level you want to eventually reach, and then define an adequate plan to achieve it. This will prevent you from making an inappropriate investment or getting lost in changes at all levels of the business without specific and measured goals.
In conclusion, Quality Assurance is fundamental to the success of a project. The implementation of a standard like TMMi, will help you organize and structure this important part of the delivery, mitigating adoption challenges and missteps. As Masaaki IMAI said so well:
“Where there is no standard, there can be no improvement. For this reason, standards are the basis for both maintenance and improvement.”
Are you inspired by this article? Would you like to know more about this? Do not hesitate to contact us. We can guide you to success on your Quality Assurance initiatives.
About the author
Said Amouri is Director and Mentor of the Systematix Quality Assurance Center of Excellence. He holds a Certified “Foundation” and “Advanced” level of Test Manager from ISTQB. He is also TMMi Professional certified, allowing him to measure and advise organizations on their level of maturity in relation to their quality assurance and testing practice.