Tilo Linz is CEO and co-founder of imbus AG, a leading solution provider for software quality and software testing and has been active in the field of software quality for more than 25 years. As founder and chairman of the German Testing Board e.V. and founding member of ASQF e.V. and ISTQB, he has been instrumental in shaping and advancing education and training in this field at national and international level. Tilo Linz is the author of “Testen in Scrum-Projekten” and co-author of “Basiswissen Softwaretest” (dpunkt.verlag).
***What are the challenges that software testing or the software tester will face in the future? What is in store for us?
Before I talk about software testing, I’ll say something about “looking into the future”, which is something we dealt with at imbus a few years ago. When you look into the future, you are shaped as a person in such a way that you have the current situation in mind and you extrapolate it linearly into the future. We see what is already happening in a more futuristic form and are shaped by the current situation and the past. This is why looking into the future is particularly difficult in IT, as everything changes very quickly here. Many quantum leaps are not on the screen, which is the problem. So the question is: how can we break through linear thinking so that we can also anticipate disruptions and really new things? Futurologists use concrete and professional methods to do this. One of the most important forecasting techniques is the so-called scenario technique. Based on current observations, you consider what the most important influencing factors and megatrends are. You develop stories, spin them further and then come up with things that could realistically happen. One of these worlds is then realized. Together with a futurologist, imbus has produced “Trends in Testing” studies for the years 2025, 2035 and 2050 in recent years. We have updated these several times at intervals of a few years. If you leaf through them retrospectively, you can see that some of it is nonsense, but some of it is really true. The shocking thing was that a lot of things were realized much faster. The study can be downloaded free of charge from our download area.
Of course, I can’t predict exactly what challenges software testers in particular might face in the coming years. But I am happy to reveal what the challenges could be in the different worlds. I read the study again earlier, which is structured for 2025, 2035 and 2050. 2025 is two and a half years away. When we first published the study, that was the distant future. We see “Structure Ware” as an important trend and I am convinced that this will be the concrete area of application.
Structure Ware” is about the fact that 3D printing is now used in the real world to produce hardware and the like. A few years ago, this was completely new, but it is now standard in the industry. Even at home, it is already normal as a hobby. You send what you want to produce as code to a device and then it materializes. The traditional view is that you send a CAD plan. In reality, however, you send software. If you take this further and have powerful devices, they are no longer called 3D printers, but bioprinters and so on. This production line can be located anywhere in the world. Or you can order the other way around via Amazon and no longer receive a parcel, but a “structure product” in your mailbox. This is then sent to the Sophisticated 3D printer at home, where the finished product comes out. What comes out in the end depends only on the “Structure Ware” that is sent.
***How does this affect testing per se? What are the approaches for this? Have you thought along the same lines?
At this point, it’s rather the other way around. People who make money by creating plans for 3D printing don’t think they’re software coders. They are engineers who do traditional part drawing. They will then find a certain complexity threshold where something doesn’t work or they’ve left something out. They will get a lot of demand from the normal testing techniques or be surprised to find that there is a guild of software testers that can help.
***What do I have to do differently if I am a tester or test analyst? Do I have to do anything differently? Do I have different requirements?
The test manager should master new things. There are some new test procedures that are currently being developed and this is not the far future. A lot has happened in the context of autonomous driving and software or system testing is one of them. A lot is happening in this area and there are publications every day. The new test method scenario-based testing is currently being developed, which is not yet known in this formalized form in traditional software testing. It will help to make autonomous vehicles ready for the market and I am convinced that the whole topic of robotics is also linked to it. Autonomous driving is already very demanding. When a two-legged robot is walking around, it becomes even more complex. The software tester has to be able to model these different environments and that is the topic of scenario-based testing. We are no longer dealing with a test object lying on the lab bench and dozens of versions of it, but with a dynamic environment and different versions. In scenarios A, B and C, these parameters change the scenario, but the test object remains the same. It is a reversal between the test environment and the test object.
***There is a lot of talk about artificial intelligence. From a testing perspective, there are two approaches. On the one hand, you have AI software somewhere that needs to be tested. On the other hand, there is the use of AI for testing. Have you given any thought to the future in this direction?
Yes, it is precisely these two perspectives that play a role. We are confronted with this in both fields. On the one hand, we have a research project underway here that involves testing AI-based agricultural machinery. Surprisingly, this is one of the first actual fields of application for autonomous machines. Driving straight ahead in the field is not critical. The whole integration of the systems is an issue, as well as how to test the AI components. The systems should learn how much fertilizer to apply, where the optimum is, etc. AI for testing is primarily visible to us in the area of autonomous driving. We are trying to get a grip on the test case explosion and complexity with various new methods. We are also looking at AI-based algorithms that help to select from the potentially infinite number of scenarios.
***In addition to the technological aspect, there is also the process view of how development and testing processes are changing. Do you have any idea in which direction things are heading?
It will be significantly more automated, which may also become easier. You’ve just read the Keyword Based Testing book. By 2050, the idea that the non-IT person can click together process steps or test sequences will certainly be commonplace. With autonomous driving, testing and simulation will become blurred. Up to now, simulations have been used in the automotive sector to simulate how the prototype will behave in these directions from a development perspective. This will now coincide much more closely with testing, validation and safeguarding, as you can’t afford to drive over the same intersection in a million different attempts.
***Everyone is currently doing DevOps and Agile. In which direction will things continue from the perspective of QA glasses?
As you say, it works wonderfully and will remain a fixed component. While reading our website recently, I came across the topic of the V-model, which in my view is no longer very important. In places where we still have to work according to the V-model, we always try to use a hybrid in order to live the DevOps idea in some places, i.e. to get to deployment as quickly as possible and to automate it thoroughly. In my opinion, there is no other way.
***There are a lot of challenges and changes ahead for the tester and the test manager and anyone working in testing. What do you recommend to someone who is well in the software testing saddle today to prepare and be fit for the future?
You have to be open to what’s happening around you. The key is to keep up with technological developments. It’s not so important whether it affects you directly or not. The experience is that you think you’re miles away from something and next week the customer calls. I can give everyone in the software testing environment the tip to be open, to be interested and to deal with what is happening, even if it is not currently required in the project. This applies to developers and testers. The differences are becoming less and less. You should at least try to roughly understand the basic functionality of the newly emerging technology. In machine learning, for example, you should know how the algorithms roughly work and what they do, even if you are not in a position to implement such an algorithm. The same applies to scenario-based testing. You should know the buzzword and know what a scenario is. This goes hand in hand with continuous further training. Foundation level, for example, is still needed and is the entry point. You can also see that all the training courses are still in demand. As a coach and trainer, you are still being asked to support people. I like the interesting outcome of the pandemic dilemma. Traditional training with face-to-face events still exists and is now becoming more common again. At the same time, online training has become a good alternative. At the beginning of the pandemic, people thought it was an emergency aid. Now it is an additional, self-evident form of delivery. We now also offer a third form of delivery, blended learning. This means that we don’t offer the course for three days at a time, but rather over four weeks, for example, at a self-directed rhythm and pace. This has only become possible thanks to the mix of online and onsight. New forms of learning play an important role and make it easier to stay on the ball, as you are no longer forced to follow an externally prescribed schedule.
I don’t see the combination of the pandemic and the technological changes as just a negative impact. At this point, the circle closes and we come back to the beginning and the view into the future. An impact is also a pandemic, for example, which throws everything out of kilter. In retrospect, this is often exactly the point where you switch from one path to another and completely different things are developed.