📜 ⬆️ ⬇️

Life without testers: myth or reality?

There is a controversial opinion that the project must necessarily be a tester. But many well-known foreign projects do not have dedicated testers, especially for the tasks familiar to our world. How so? Who in this case will be responsible for the quality of the product? Who will search and find defects? And in general, is it possible? If you are interested in the answers to these questions, then welcome under cat.



What is the actual problem?


')
Let's start with the problem in order to better understand the further course of thinking. It will again be about some deception of the customer (the first deception was described in the article “Do not be fooled by your customers” ). Imagine the situation of the discussion of the project and the team with the customer. This is a fictional dialogue:

- Here, everything you asked for, Ivan Fedorovich! We selected experienced and very competent specialists for your project. Yes, they cost a lot, but they are really professionals.
- Excellent thank you! I am willing to pay for the quality and level of members of my team. And what will do a few more people who are designated in the plan as testers?
- Ivan Fedorovich, Ivan Fedorovich ... Well, how is it? After all, you will need to make sure that the team did exactly what you ordered and did not constantly break what was already done before. You understand ...
- But we just talked about the professionals for whom I am going to pay you a lot of money! What they can not immediately do the work correctly and without problems?
- All of us are not without sin, Ivan Fedorovich. How many projects we do, always defects climb and climb, do not stop them ... This is IT, everything is not so simple, you understand ...
- You know, I think I'll look for another team!

In truth, such a dialogue almost never happens in reality. No one will ever openly say that his well-paid “specialists” are going to do poor-quality work and need someone to control it. Typically, testers sell completely under a different "sauce." Arguments about independent quality control, intellectual work on the prevention of defects for end users, analysis of the quality level and preparation of reports on this topic are being used.

But what happens then really? Testers spend their time searching for defects, going through the same scenarios with their hands many times (or trying to “automate” them), argue with developers for correcting found defects, “report” quality to managers, etc. All their work rests on the fact that the initial work of developers is done poorly. It turns out that the customer pays twice: once for the work of highly skilled developers, and then for the work of people who will achieve quality from them. Is this not a hoax?

Why it happens



In my opinion, the reason for this situation in the market lies in the wrong vision of the testing process and the role of the tester in it for a long time. It was believed that responsibility for quality is shifted from the developer himself to a quality control specialist. And once it is shifted, the developer himself is not particularly worried and can make a poor-quality solution. Therefore, there are frequent situations when a developer hardly checks his work and only the tester does this. As a result, a large percentage of returns for corrections and improvements, large losses of time and lack of confidence.

But in other areas of life do not do that. Responsible for the quality of the one who produces the product or service, that is, the performer. In our case, this is the developer himself. Therefore, he must be responsible for ensuring the quality of his work. The more professional a worker is, he exposes himself, and the more he takes payment for his work, the better the solution should be at the output. No one should pay extra for the defects that he made and then corrected. If we are talking about professionals ...

The role of the tester on the project



So who should be the tester on the project? First of all, it is important to understand that this is a role, and not a specific person. And this role should be distributed among the team members. So, who will be responsible for what:



It turns out that a tester in a good professional team is not so necessary? This is not entirely true. After all, there are really important and intellectual activities for the tester who need to be able to do professionally and many of which are boring or beyond others. Here are a couple of examples: testing using the free search method, assistance in critical analysis of requirements, assistance in drawing up acceptance tests using all test design techniques, experience and flair for known and popular types of problems, safety and performance testing ...

That is, the tester is needed and useful, but not in the classic representation to which many of us are accustomed. All simple and simple responsibilities of the tester can be distributed among team members. This will make it more responsible for quality, reduce its size and help to become a real team whose goal is to develop a quality product.

Conclusion



Consider the role of the tester in modern development. More and more developers are involved in testing to ensure the quality of their work. Customers are increasingly integrated into the development process, taking a certain part of the work of testers on themselves. Slowly, the role of manual “cheap” testers who perform mechanical work will simply disappear as unnecessary. And you should be ready for this!

Who is interested in the details of the organization of such a process, here is a presentation and a video of one of my speeches with a report on this topic at the conference. Here you can find several options of different duration and format.

UPD: In the article I am not talking about projects where the cost of the error is very, very high (development for nuclear power plants, core of the banking system, software for the rover). Here the quality department must be, if its value does not exceed the cost of the error. But even there, it is much more important not to save on developers and develop a culture of concern for quality rather than hiring a bunch of testers and trying to control it.

Source: https://habr.com/ru/post/168643/


All Articles