Redsauce's Software QA Blog

TMO y Agile testing | Discover the Testing Management Office

Posted by Pablo Gómez

{1570}

You have probably read and maybe even heard about TMO in the world of Software Quality. But...

What is TMO?

The TMO (Testing Management Office) arises to address quality in project deliveries. It is an independent team in charge of several aspects such as:

  • Maintenance and improvement of software verification and validation activities.

  • Design of automatic testing strategies (unit, static analysis of code, system, integration, API, User Interface, non-functional, UAT...).

  • Use of testing tools and techniques.

  • Writing and management of test guides and templates.

To better understand its role, it can be compared with a "sister" entity, the PMO (Project Management Office). The PMO seeks to minimize project delays and cost overruns by establishing direct management over costs, stakeholder alignment and development effectiveness. However, unlike the PMO, the TMO specializes in ensuring the quality of deliverables through expert test management.


Additionally, the TMO is in charge of:

  • Early identification of non-conformities and proposing solutions.

  • Coordination of the test team.

  • Management of non-productive environments.

  • Mentoring the development team.

  • Efficient management of test planning.

  • Risk identification and management, problem anticipation.

  • Quality and non-quality cost control.

  • Deployment management and evolution analysis in production.

Are TMO and Agile Testing conflicting terms?

No, far from it. Although having an "independent office" for testing may not seem very Agile, in reality it is possible to implement a TMO within an agile team without any problems.


All the actions detailed in the previous point must be carried out in the context of agile development. One member of the TMO has to take the role of QA and guide the team, involving it in quality.


Test automation (and all that it implies in terms of methodologies, environments, frameworks...) will be led by the TMO and executed by an "ambassador" of it in the team, being able to ,give early feedback, promote shift left and other improvements in the development that will be worthy of another blog post.

What are the objectives of a TMO?

The goal of a TMO is to globally improve the quality of the software delivered to users. Better quality has many benefits, including:

  • Reducing Time To Market.

  • More efficient development (and a happier technical team).

  • A cost reduction resulting from a reduction in defects.

  • Better image and market position of our product.

The latest evolution of TMO, the so-called TMO 3.0, groups the functions in three layers related to testing activities:

  • Test execution and monitoring

  • Test management and governance

  • Productivity and effectiveness control

The TMO 3.0 must also have:

  • Visibility into quality throughout the software development cycle.

  • Keep improvement points identified, anticipating the evolution of the actions carried out in each phase of development.

  • Maintain a scorecard to monitor progress, costs and results.

Talking about TMO sounds good, but how do I put it all together within an Agile Framework?

PHASE 1 - TMO Introduction

The first step is usually to perform a [360 Quality Audit] (https://quiz.typeform.com/to/yraXMcmJ) with interviews with all the actors involved in the software development cycle, from the Product team to production monitoring, including programmers, Scrum Masters, DevOps, etc.

PHASE 2 - TMO Strategy

Once we have the "snapshot" of the software development life cycle (SDLC) we must identify and prioritize the points on which it is most urgent to perform quality improvement actions. At this point we must determine which KPIs are most effective in order to be able to measure the evolution of the actions carried out to be able to modify them in time if necessary.

PHASE 3 - TMO Actions

Subsequently, we will begin to deploy the most appropriate quality actions for the points detected in the Audit. In this phase, supported by the automatic tests, Quality Gates will be created, allowing us to have control over the promotion of the developed code. Also in this phase we will have to define how to manage the pre-production environments where the tests can be performed, the automatic execution pipeline... Undoubtedly, this is the most operational phase :)

PHASE 4 - TMO Metrics

Finally, orchestrate a dashboard that allows us to have an overview of the status of our product. It should synthesize the test reports in the different environments, monitor the status of the application in production, etc.


...and PHASE 5 of course, review, adjust, and iterate again!


image

About us

You have reached the blog of Redsauce, a team of experts in QA and software development. Here we will talk about agile testing, automation, programming, cybersecurity… Welcome!