New offer for software testers

16.02.2018 – Roland Weber

Guest article for Computerworld from February 16, 2018

The job description of a software tester has changed dramatically in recent years. Unfortunately, many training courses do not meet the current requirements of the market. Rapperswil University of Applied Sciences wants to change that.

Does our software work as planned? This question came to me when, as a young engineer, I first gained experience in software testing many years ago. Our task as a tester was to identify technical deviations from the planned ideal state. We were guided by the now-defunct ISO standard 829. Our mission was to improve quality by eliminating bugs. We measured quality using simple metrics, such as the number of errors found in the test. The attitude behind this was: quality is manageable with a consistent structured approach. Only minimal technical know-how was expected of us as testers. Our superiors demanded a degree of organisational skill and knowledge of some useful testing methods.

New demands change the profession

This changed dramatically when context-driven testing came along. This puts the focus on the added value of software. Software testing is strongly geared to the needs of the customers. After all, what use is a systematically tested piece of software that does not cover the customer's central needs properly due to a specification error? Such fundamental mistakes escape the traditional testing approach.

Testing is less a process that can be planned linearly, but rather a journey of discovery into unknown areas. Knowledge about the market and context of use of our software as well as in-depth technical knowledge have become important. The preferred tools of context-driven testers are exploratory tests (tests without specified test cases) and session-based test management. The sessions last between one and a few hours. We use the results to continuously adapt further procedure to the new findings. We are constantly adding new techniques to previously learned test methods. This makes the work more demanding. For example, test design is no longer planned beforehand, but happens continuously during our tests.

Too few training opportunities

The tester profession is demanding and relevant for the success of a software project. However, many still consider testing a second-class software engineering discipline. This attitude is also reflected in the current education and training opportunities on offer for software testers. A quick search on the Internet shows sobering results. Swiss universities do not play a role in the training of testers. Testing is at best a sideline in software engineering training modules. And if you take a closer look at the training contents, you will find little relevant information for the actual daily work of testers. They are often based on the documentary and policy-driven approach from the early days of the discipline. The International Software Testing Qualifications Board (ISTQB) with its worldwide standardised curricula and certificates has successfully filled this gap as a pioneer. To date, more than 500,000 professionals worldwide are certified, including many in Switzerland.

The problem: The widespread certifications of the ISTQB are a child of their time and are today perceived by many to be less than up-to-date and relevant to practice. The ISTQB strives to adapt its curricula to the changing daily working life of testers, for example with the agile tester module. But the ISTQB's international processes are slowing down and the associated training providers are reluctant to innovate. A little known alternative to the ISTQB is the Black Box Software Testing (BBST) certification offered by the Association for Software Testing. These online training courses focus on craftsmanship, i.e. the methodical craft and its situation-specific application. BBST covers selected topics in a more in-depth and practice-relevant way, but like ISTQB does not claim to have comprehensive testing training. Whatever the assessment of these certification programs, the ISTQB's success shows that there is a need for professional development of software testers, including in Switzerland.

Requirements are increasing

The reasons are obvious: agile software development has become established as the answer to increasingly complex projects. Their focus on providing useful functionality in small product increments is changing the work of testers. The final release test is losing significance. Rather, testing provides timely feedback on the current state of development and is becoming an indispensable part of agile software development. The trend has intensified with DevOps at the latest. The idea of quality as a team issue is gaining ground, previously clear responsibility boundaries are beginning to dissolve. Testers are no longer downstream quality police, but help to build quality into the solutions from the beginning.

All this requires new skills from us testers: a deeper technical understanding and familiarity with the methods and technologies used in the project. We need a common language for daily exchanges on an equal footing with developers and other employees involved in the project. Our credibility as a competent team member is critical to the success of our work. With the increasing digitisation of our everyday lives and more interconnected systems, demands on reliability, performance and security are also increasing. More complexity entails new quality risks that we have to deal with. This changes our projects. We develop in cooperation with partners separate from us in terms of time, space and organisational structure. Especially as a tester, we need to develop an early awareness of quality issues that may arise from such set-ups. We often have to keep the threads together, bringing the right people to the table at the right time. Requirements for the organizational, technical and communication skills of testers thus continue to rise.

New testers urgently wanted

Swiss companies rely on well-trained testers. Without them, testing becomes ineffective and expensive as software solutions become more complex. But qualified testers are hard to find. Rapperswil University of Applied Sciences (HSR) has recognised the signs of the times and is planning a Certificate of Advanced Studies (CAS) for software testing in 2018.

This new course addresses the topics relevant to testers today in a practical way. In addition to classic basics such as test management and design, testing techniques in the field of DevOps, IoT systems and mobile and web applications are part of the program. Introductions to security and performance testing complete the offer. This further education offer is a first important step towards the urgently needed professionalisation of tester training.

Roland Weber is creating the training module Test Techniques for CAS Software Testing on behalf of Rapperswil University of Applied Sciences (HSR). He is the head of the test team and test engineer at Ergon Informatik.