Crowd-Testing 01.12.2014, 14:30 Uhr

pro Bug 25 Franken

Beim Crowd-Testing kann jeder mitmachen. Denn Cloud und Mobile macht die Entwicklung von Software immer komplexer, immer fehleranfälliger und immer teurer. Firmen suchen nach Alternativen.
Früher war ein Bug noch ein Bug. Computer bestanden aus Tausenden mecha­nischer Relais, nahmen ganze Stockwerke in Beschlag und waren mehrere Tonnen schwer. Verirrte sich dann einmal ein Käfer (Bug) zwischen die Kontakte einer Relaisschaltung, dann gab es eine Funktionsstörung, der Käfer verendete und musste entfernt (debugged) werden, damit das Relais wieder korrekt funktionierte. Bugs waren damals eine klar begrenzte und exakt lokalisierbare Angelegenheit. Heute ist die Sache komplizierter geworden. Applikationen laufen on-premise und in der Cloud, unbemerkt im Backend oder deutlich sichtbar auf Dutzenden von mobilen Geräte­typen in den Händen der Endanwender. Die weiter fortschreitende hochgradige Vernetzung von Apps, Plattformen und Devices macht den Job der Software-Tester immer aufwendiger und komplexer. «It’s not a bug, it’s a feature», über diesen, dem Software-Konzern Microsoft nachgesagten Spruch konnte man vor ein paar Jahren noch herzlich lachen. Heute bleibt profes­sionellen Software-Testern das Lachen eher im Halse stecken. Denn dem Sourcecode, der auf den ersten Blick korrekt aussieht, ist es gar nicht anzusehen, ob er in irgendeinem Kontext einmal zur Fehlerquelle oder sogar zum Einfallstor für Cyberkriminelle werden könnte. Der früher klar erkennbare Bug ist zum Chamäleon geworden.

Testbudgets steigen

Getrieben durch die Trends Mobile, Vernetzung und Cloud sind Software-Tests zur aufwendigen und kostspieligen Angelegenheit geworden. Der von Capgemini, HP und Sogeti herausgegebene World Quality Report 2014–15 hat branchenübergreifend und weltweit 1543 IT-Führungskräfte befragt: CIOs, IT-Direktoren, QA/Testmanager und Vice Presidents of Applications – auch aus der Schweiz. Eines der Ergebnisse: Die Qualitätssicherungs- und Testing-Budgets in Unternehmen mit mehr als Tausend Mitarbeitenden werden in den nächsten Jahren bislang nicht gekannte Ausmasse erreichen. 2012 gaben IT-Chefs noch 12 Prozent des IT-Gesamtbudgets für Testzwecke aus, 2013 waren es 23 Prozent und 2014 schon 26 Prozent – Tendenz weiter steigend.

Kostenspirale stoppen

Es gibt jedoch eine Möglichkeit, die Kosten­spirale zu stoppen. Tests verlaufen in der Regel in mehreren Schritten und Stufen. Sogenannte Smoketests loten zunächst die Basisfunktionalität einer Software aus: Macht jeder Button und jeder Menüpunkt das, was er tun sollte? Dann folgen aufwendigere, funktionale Performance- und Lasttests – zum Teil automatisiert: Regelbasierte Testskripte klopfen die Standardfehlerquellen und -nadelöhre ab. Für Backend- und System-Software ist dieses Prozedere wohl so bald durch nichts zu ersetzen. Aber bei Applikationen für Endanwender sieht es anders aus. Ob eine Software auch bedienfreundlich ist, können nur menschliche Benutzer beurteilen. Und Benutzerfreundlichkeit hat sich über die letzten Jahre zum Killerkriterium für den Erfolg und die Akzeptanz einer Software-Anwendung gemausert. Die entscheidend weiterführende Idee wird dem Ovum-Analysten Paul Herzlich zugeschrieben: Wenn wir schon Software für Endanwender mit unterschiedlichen Geräten, Betriebssystemen, persönlichen Clouds und individuellem Kontext entwickeln, dann lassen wir sie doch am besten gleich von ihnen testen. Das sogenannte Crowdsourced Testing war geboren.

Bezahlen pro Bug

Crowdsourced Testing adaptiert das Cloud-Bezahlmodell «Bezahlen nach Verbrauch bzw. konsumiertem Service» auf das Testing-Prozedere. Zwei Beispiele: Bei 99tests.com können Software-Schmieden oder Grossunternehmen mit eigener Software-Entwicklungsabteilung ein «Team von 50 professionellen Testern» für drei Tage mieten. 99tests verspricht, innerhalb der drei Tage 50 Bugs zu finden und verlangt dafür 995 US-Dollar. Oder man bezahlt 25 Dollar pro Bug und lässt dem Testteam eine Woche lang Zeit. Für anspruchsvollere Projekte wird ein kostenintensiverer Enterprise Service angeboten. Je nach Variante engagiert der Dienstleister Profitester, die mit der jeweiligen Branche vertraut sind, und stellt einen dedizierten Testmanager ab. Auf der Kundenreferenzliste stehen kleinere US-amerikanische und indische Firmen wie foodpanda, Giftopera, StreamerApp und Zepo. Es gebe jedoch auch bereits Kunden in Österreich und Deutschland, wie man uns auf Nachfrage versicherte. 99tests ist im indischen Bangalore beheimatet, unterhält ein Team von 1600 Software-Testern und führt vor allem Tests von mobilen und Web-Applikationen durch. Lesen Sie auf der nächsten Seite: So werden Sie selbst Tester

10 Millionen Tester

Software-Veteranen im Silicon Valley kamen 2013 auf die Idee, die Crowdsourced-Testing-Firma MyCrowd zu gründen. MyCrowd brüstet sich mit insgesamt 10 Millionen Freelancern, um Software auf Bugs und Bedienfreundlichkeit abklopfen zu können. Gemeint sind wohl weniger professionelle Software-Tester wie bei 99tests, sondern echte Endanwender mit unterschiedlichem Kenntnisstand und individueller IT-Umgebung. Bezahlt wird nicht pro Testteam und Zeitaufwand, sondern ganz konsequent pro aufgefundenem Bug. MyCrowd setzt pro Fehler ein Kopfgeld aus und unterscheidet zwischen leichten visuellen Defekten wie falschen Fonts oder überlappenden Elementen (3 Dollar), mittelschweren Delikten wie funktionalen Fehlermeldungen (6 Dollar) und schwereren Verbrechen, die den Bildschirm einfrieren lassen oder sogar das Gerät zum Absturz bringen (15 Dollar). Dabei hat der Kunde volle Kostenkontrolle. Er kann ein maximales Testbudget – zum Beispiel 500 Dollar – ausloben und einen sogenannten «Bug Hunt» starten. Web-Dashboards informieren in Echtzeit über den Stand der Fehlerjagd. Ist das Budget erschöpft, stellen die Freelance-Tester ihre Arbeit ein. Zurzeit bastelt MyCrowd an Konnektoren, um auch Applika­tionen für Microsoft Office 365 und Google Docs von der Crowd testen lassen zu können. Crowdsourced Testing gewinnt an Beliebtheit. Laut World Quality Report 2014–15 haben 27 Prozent der Teilnehmer bereits im vergangenen Jahr Crowd-Testinitiativen gestartet und wollen sie in Zukunft weiter ausbauen. Weitere 27 Prozent planen Crowdsourcing-Tests noch in diesem oder Anfang nächsten Jahres. Die Autoren des Reports konstatieren, dass Crowdsourcing niemals professionelle Qualitätssicherungs- und Testteams vollständig ersetzen werde, ob in-house oder als ausgelagerte Dienstleistung (vgl. Artikel zu Offshore Testing, S. 20). Auch seien nicht alle IT-Lösungen für diese Art des Testens gleichermassen geeignet. Zudem hätten viele Unternehmen Sicherheitsbedenken, sensitive Informationen an Tester ausser Haus zu geben. Crowdsourced Testing sei jedoch sehr gut dafür geeignet, schnell Feedback von Endanwendern in Sachen «Customer Experience» und Benutzerfreundlichkeit zu erhalten.

Wahrscheinlich fehlerfrei

Die sogenannte Weisheit der Crowd gibt aber nicht nur bei der Qualitätskontrolle bereits fertiger Software-Produkte und -Komponenten nützliche Hinweise. Auch bei der Entwicklung von Sourcecode kann die Crowd Hilfestellung leisten. Die Rede ist von Crowdsourced Development; Marcel Bruch referierte darüber auf der diesjährigen Jazoon, der Java-Entwicklerkonferenz in Zürich. Bruch ist CEO und Gründer der Firma Codetrails und leitet dort das Projekt Eclipse Code Recommenders. Die Idee dahinter: Die Korrektheit von Software ist heute keine Ja/Nein-Frage mehr. Denn je nach Kontext verhalten sich Programme unterschiedlich. Getrieben durch Mobile, Cloud und hochgradige Vernetzung existieren jedoch mittlerweile extrem viele solcher Kontexte. Bruchs Code Recommender stellt Software-Entwicklern daher keinen Freifahrtschein aus, vergibt kein finales Gütesiegel, sondern spricht lediglich Code-Empfehlungen aus. Best Practices der Art: Programmierer vor dir haben bei der Lösung deines Problems diese und jene Software-Konstrukte benutzt und haben damit gute Erfahrungen gemacht. Die Wahrscheinlichkeit ist also hoch, dass diese Konstrukte in vielen Kontexten möglichst fehlerfrei laufen. Eine Art Trial-and-Error-Verfahren: Bruchs Software-Checker nutzt dabei die Erfahrungen der Software-Entwickler-Crowd.


Das könnte Sie auch interessieren