Testen von Software: Nur noch agil!

Agiles Testen bezeichnet das Testen von Software im Rahmen eines agilen Entwicklungsprojekts. Längst hat sich agile Softwareentwicklung gegenüber der früheren Wasserfallmethode durchgesetzt. Beim agilen Ansatz wird das Projekt in kleinere Teile zerlegt, welche dann in sogenannten Sprints abgearbeitet werden. Der Vorteil für den Product Owner: er bekommt nicht irgendwann ein Produkt vor die Füße gelegt, das mehr oder weniger so ist, wie er es sich vorstellt hat, sondern er wird eng in den Entwicklungsprozess einbezogen und hat so viel mehr Einblick und Mitsprachemöglichkeiten im Projekt. 

Dass das Testen von Software in Hinblick auf Funktionalität, Sicherheit und Qualität unabdingbar ist, liegt auf der Hand (auch wenn das Thema leider noch zu oft stiefmütterlich gehandelt wird). In agilen Projekten muss auch das Testen von Software angepasst werden, denn hierbei werden die Tester von Anfang an in den Prozess involviert. Sogar bereits beim Diskutieren der Anforderungen (User Stories) kann das Testteam bereits an Bord sein und seine Inputs geben. Es wird also der Tester in ein crossfunktionales Team integriert und an allen Entwicklungsschritten beteiligt. Vorteil dieser Herangehensweise ist, dass Verständndisfehler viel früher erkannt und behoben werden können und sogar im Idealfall gar nicht erst entstehen. 

Es gibt zwei Ansätze, wie dies in der Praxis umgesetzt werden kann. Zum einen können Tester in das Entwicklungsteam integriert werden und testen kontinuierlich während des Sprints. Der andere Ansatz wäre, dass die Tester immer gleich die Sprintergebnisse testen und dies dann im darauffolgenden Sprint frühestmöglich bearbeitet werden kann. Die erste Variante kann die Entwicklung von Funktionalitäten verzögern bei einer sehr hohen Qualität. Bei der zweiten Variante ist die Umsetzung von Funktionalität schneller und die Qualität wird verzögert geliefert. Beide Varianten haben vor und Nachteile und es ist individuell zu entscheiden, wie die Teams aufgestellt werden müssen, um einen optimalen Projekterfolg zu gewährleisten. 

Unabhängig davon sind bei Vialutions die Tester sogar für das Produkt Backlog und dessen Pflege zuständig, damit hier von Anfang an eine hohes Produkt-Verständnis entsteht, Missverständnisse ausgeräumt werden und die richtigen Testfälle ausgearbeitet und ausgeführt werden. 

Wir bei Vialutions arbeiten erfolgreich mit agilen Teams bestehend aus Entwicklern, Projektleitern, Testern und DevOps und sind davon überzeugt, dass dank dieser Herangehensweise die besten Softwareprodukte entstehen und sowohl die Zufriedenheit auf Kundenseite als auch auf unserer Seite steigt.