Agile, Trendsz, Test engineering, Testautomatisering

In de aanvragen van onze opdrachtgevers signaleren we steeds vaker een behoefte aan quality engineers. Met onze visie op testen en kwaliteit – namelijk die van Quality Infected Teams – zijn we daar gelukkig goed op voorbereid. Softwareontwikkeling is complexer geworden en kwaliteitsborging van de software belangrijker. De traditionele software tester heeft in het verleden al plaatsgemaakt voor een allround agile test engineer. Is de quality engineer de volgende stap in de evolutie?

Van traditionele software tester, naar agile test engineer, naar quality engineer

We zien in de markt dat de oorspronkelijke rol van software tester veranderd is. Klanten hebben inmiddels behoefte aan iemand die het team faciliteert om gezamenlijk kwaliteit na te streven. Kwaliteitsborging vindt hierbij niet alleen in het laatste stadium plaats, maar gedurende het gehele ontwikkelproces. Het testvak heeft in het verleden al een sprong gemaakt van traditionele software tester naar agile test engineer. Maken we nu weer een sprong richting de quality engineer? Laten we beginnen met een omschrijving van de rol van de huidige agile test engineer en die van een quality engineer.

 Agile test engineer

De belangrijkste focus van een agile test engineer is het testen van de applicatie op basis van het ontwerp en het vinden van bugs in de gebouwde software. Hiermee laat een tester aan de klant zien of het ontwikkelde product voldoet aan de verwachtingen met betrekking tot het ontwerp, de compatibiliteit, het functioneren, enzovoorts. Het liefst wordt de tester zo vroeg mogelijk betrokken in het ontwerp zodat in deze fase al kritische vragen gesteld kunnen worden om een deel van de bevindingen te voorkomen. Behalve testvaardigheden verwachten we tegenwoordig ook dat de consultant over agile kennis en de nodige technische vaardigheden beschikt. Het automatiseren speelt een steeds grotere rol om bijvoorbeeld meer tijd over te houden voor testtechnieken als exploratory testing.

Quality engineer

Quality engineering legt de focus op processen binnen de productlevenscyclus. Dit is niet voorbehouden aan softwareontwikkeling, maar speelt ook bij industriële producten. Binnen deze processen creëert en implementeert de quality engineer strategieën met als doel de kwaliteit van het product verhogen. Het uitgangspunt is dat iedereen die meewerkt aan een product verantwoordelijk is voor de kwaliteit van zijn of haar fase waarin het product zich bevindt. De theorie is dat, als ieder proces op deze manier geoptimaliseerd wordt, dit uiteindelijk tot een beter product leidt. De quality engineer heeft het overzicht en verzamelt input om inzage te krijgen in de algehele kwaliteit.

Poll

Zie jij jezelf als agile test engineer of als quality engineer?

Bekijk resultaten

Voorkomen is beter dan genezen

Bevindingen doen nadat software is opgeleverd, is altijd reactief. Inmiddels is testen niet langer alleen maar reactief. De agile tester is vanaf het begin betrokken om ervoor te zorgen dat er juiste en kritische vragen gesteld worden. Ook zijn er inmiddels meerdere proactieve methodes en technieken die gebruikt worden, zoals Shift left, DevOps, Continuous Integration / Continuous Deployment (CI/CD) en Test Driven Development (TDD). De laatstgenoemde methoden en technieken zijn te scharen onder het vakgebied quality engineering. Quality engineering kenmerkt zich door een proactieve aanpak. Vaak wordt er een beroep gedaan op quality engineering bij naleving van wettelijke vereisten, standaarden, betrouwbaarheid en veiligheid van IT-diensten.

Het overzien van het grote geheel doormiddel van samenwerking

Binnen quality engineering onderkennen we verschillende rollen die gecombineerd een bijdrage leveren aan de kwaliteit. Je moet dan denken aan onder andere: business architect, IT architect, security officer, testmanager, product owner, projectmanager en productmanager. Al deze rollen zijn belangrijk voor het uiteindelijke product. De quality engineer heeft als doel om ervoor te zorgen dat deze afzonderlijke rollen hun werk zo goed mogelijk kunnen uitvoeren en dat hetgeen ze opleveren een gecombineerde inzage biedt in de algehele kwaliteit van het product. Dit kan bijvoorbeeld een combinatie zijn van zowel geautomatiseerde als manuele taken. Geautomatiseerde taken zijn bijvoorbeeld de aanwezigheid van regressietesten, terwijl code reviews door developers een voorbeeld is van een manuele taak.

Betrokkenheid, nauwe samenwerking en technische vaardigheden

De vaardigheden van de agile test engineer en quality engineer sluiten elkaar niet uit. Sterker nog: testen kan als procesverbetering gezien worden binnen quality engineering. Het testen van de applicatie gebeurt tegenwoordig ook in meerdere fasen van de productlevenscyclus. Verder sluit quality engineering het bestaan van defects niet uit. Vandaar dat we binnen quality engineering nog steeds gebruikmaken van alle testtechnieken die een tester over het algemeen machtig is.

Conclusie

Hoewel de verantwoordelijkheden van een agile test engineer en een quality engineer elkaar tot op zekere hoogte overlappen, focust quality engineering op processen binnen de productlevenscyclus en op het verhogen van de kwaliteit. De quality engineer heeft als doel ervoor te zorgen dat afzonderlijke rollen hun werk zo goed mogelijk kunnen uitvoeren en dat hetgeen ze opleveren een gecombineerde inzage biedt in de algemene kwaliteit van het product. De belangrijkste focus van de agile test engineer is nog steeds het testen van de applicatie op basis van het ontwerp en het voorkomen en vinden van bugs in de gebouwde software.

Is de quality engineer hiermee de volgende stap in de evolutie van de software tester? Wij denken van niet. Het testen van software is binnen het vakgebied van quality engineering een manier om de kwaliteit te verhogen. De aanwezigheid van een quality engineer sluit het bestaan van defects niet uit, vandaar dat we binnen het vakgebied van quality engineering nog steeds gebruikmaken van alle testtechnieken die onze tester over het algemeen machtig is. Wel is het zo dat we binnen Bartosz onze consultants breder opleiden vanuit onze Quality Infected Teams visie. De proactieve aanpak en proactieve methodes en technieken zoals, Shift left, DevOps, Continuous Integration / Continuous Deployment (CI/CD) en Test Driven Development (TDD), die hun origine kennen in het quality engineering vakgebied, zijn wat ons betreft niet meer weg te denken uit de toolbox die onze consultants machtig zijn.

Wil je ons nieuwste Paarsz magazine per post ontvangen? Laat dan je gegevens achter.

Ontwerp zonder titel (19)

Werken bij Bartosz?

Vincent Verhelst

Geïnteresseerd in Bartosz? Dan ga ik graag met jou in gesprek. We kunnen elkaar ontmoeten met een kop koffie bij ons op kantoor. Of tijdens ontbijt, lunch, borrel of diner op een plek die jou het beste uitkomt. Jij mag het zeggen.

Mijn Paarsz