Das Wissensportal für IT-Professionals. Entdecke die Tiefe und Breite unseres IT-Contents in exklusiven Themenchannels und Magazinmarken.

SIGS DATACOM GmbH

Lindlaustraße 2c, 53842 Troisdorf

Tel: +49 (0)2241/2341-100

kundenservice@sigs-datacom.de

Der Faktor Mensch

Testautomatisierung bewältigt eine Vielzahl von Herausforderungen – ein Mythos jedoch ist der Glaube, dass die Qualität der Software alleine durch Testautomatisierung sichergestellt werden kann. Heutzutage sollte man auch das Feedback von echten Nutzern einbeziehen und den Faktor Mensch bei der Entwicklung digitaler Produkte berücksichtigen – erfahren Sie hier, welche Möglichkeiten es gibt, seine Kunden und Fans zu einem Teil der digitalen Produktentwicklung zu machen.

  • 27.11.2020
  • Lesezeit: 5 Minuten
  • 73 Views

Die wesentlichen Merkmale einer agilen Entwicklung sind ihre Schnelligkeit und ein hohes Maß an Flexibilität. Zeit und Ressourcen sind begrenzt, und daher ist es oft schwierig, Tests in Sprints zu integrieren, auch wenn dies unerlässlich ist, um die Qualitätsanforderungen der Benutzer zu erfüllen. Agile Entwicklungsprozesse sollen dabei die Transparenz und Flexibilität erhöhen und zu einem schnelleren Einsatz der entwickelten Systeme führen.

Testautomatisierung in agilen Projekten

Agile Softwareentwicklung stellt aber nicht nur an die Entwicklungs- und Testteams spezielle Herausforderungen, sondern auch an die Testautomatisierung – unter anderem verlangt agile Softwareentwicklung zwingend nach agilen und möglichst vollautomatisierten Tests, die ein schnelleres Ausliefern ermöglichen. Außerdem wird ein ausgereiftes Automatisierungsframework ausschlaggebend, damit die Teams neue Testfälle schnell skripten und hinzufügen können.
In jedem Fall sind automatisierte Tests aber mit einem erheblichen Aufwand verbunden.

Die Zeitersparnisse, die in der Praxis erreicht werden, können diesen natürlich ausgleichen. Agile Methoden eignen sich aber nicht für jedes Entwicklungsprojekt. Sie funktionieren nur im Zusammenspiel mit einer agilen Unternehmenskultur. Die stärkere Einbindung des Kunden und die Selbstorganisation der Entwicklerteams sind Gefahren, die einer erfolgreichen Umsetzung oftmals im Wege stehen.

Crowdtesting – Das Testen von Software mithilfe der Internetgemeinde

Damit die Qualität unter diesen Voraussetzungen dennoch erstklassig ist, benötigen Unternehmen ein ebenso agiles und professionelles Test-Management, bei welchen auch der menschliche Faktor berücksichtigt wird. Egal, ob agile Entwicklung oder Wasserfallmodell – Testing ist ein fester Bestandteil des Software Development Lifecycles und Crowdtesting kann bei beiden Methoden eine sinnvolle Ergänzung sein.

Bei der Auslagerung von Testprojekten an die Internetgemeinde ist es wichtig, die Zuständigkeiten und Verantwortlichkeiten klar zu definieren und Crowdtesting sinnvoll in die Gesamtstrategie einzubetten. Auch wenn die Crowd schnell, flexibel und sehr kurzfristig einsatzbereit ist, so muss die Testing-Phase dennoch von Grund auf realistisch geplant und die passende Testart für das jeweilige Projekt oder die jeweilige Entwicklungsstufe gefunden werden.

Die Anforderungen an die Tester sind dabei von Projekt zu Projekt unterschiedlich. Um die passenden Tester auszuwählen, sollten möglichst viele relevante Informationen über diese zur Verfügung stehen. Während bei Usability-Tests Personen ausgewählt werden, die den Merkmalen der potenziellen Zielgruppe entsprechen, sind die demografischen Faktoren bei funktionalen Tests kaum von Bedeutung. Hier sind vielmehr die Erfahrung und die zur Verfügung stehenden Geräte entscheidend.

Einer der kritischsten Faktoren für die erfolgreiche Durchführung von Remote Tests ist aber die Dokumentation der Ergebnisse. Die Tester müssen ihr Vorgehen so ausführlich und präzise wie möglich beschreiben. Die eingereichten Berichte und Bugs müssen im Anschluss vom Testleiter auf Vollständigkeit, Nachvollziehbarkeit sowie Qualität überprüft werden. Haben die Tester wirklich auf den angegebenen Systemen getestet? Wurden alle Arbeitsschritte abgearbeitet? Welchen Schweregrad hat ein Bug?

Wie eine erfolgreiche Durchführung von Remote Tests in der Praxis aussehen kann, erfahren Sie im folgenden Praxisbeispiel.

Connected-Car-Apps

Individueller Testaufbau mithilfe der Crowd

Connected-Car-Apps bieten heute eine Vielzahl nützlicher Funktionen – Nutzer erhalten zahlreiche Möglichkeiten zur Navigation, dem Tracking der Fahrt sowie dem Abrufen von Fahrzeugdaten. Die App wird dabei via Bluetooth mit dem Motorrad verbunden und spiegelt die Features auf dem TFT-Display des Motorrads wider. Der entscheidende Punkt ist hierbei das Zusammenspiel von App und Motorrad-Hardware.

Crowdtesting stellt dabei eine mögliche Ergänzung zu traditionellen Testmethoden dar, da es sich auf unvoreingenommene reale Benutzer stützt. Die Aufgabenstellung an die Tester in unserem Praxisbeispiel war kurz und einfach: Sie wurden gebeten, die Beta-Version einer neuen Connected-App in typischen Anwendungsfällen mit ihrem Motorrad zu testen. Dadurch sollten Fehler und Funktionalitätsprobleme bei Bedienung und Nutzererlebnis gefunden sowie sämtliche auftretende Bugs aufgedeckt werden. Die Use Cases enthielten regelmäßig genutzte Anwendungsfälle wie allgemeine Einstellungen, die Verbindung von Smartphone und Motorrad über Bluetooth, die Navigation, das Abrufen von Fahrzeug- und Tour-Daten sowie das eigenständige Entdecken der App.

Im Rahmen parallel ablaufender Bug-Tests wurde die App mit simulierten Daten gefüllt, um häufig auftretende Fehler finden zu können sowie Lokalisierungstests auf unterschiedlichen Smartphones durchzuführen. Die Bereitstellung der Ergebnisse erfolgte dabei über eine direkte Schnittstelle zum JIRA-System der App-Entwickler, wodurch Bugs im Rahmen der agilen Arbeitsumgebung der Entwickler direkt behoben werden konnten.

Aufgrund besonderer Anforderungen waren die Tester-Rekrutierung und das Community-Management in diesem Fall eine besondere Herausforderung. Gemeinsam mit dem App-Entwickler wurde die Crowd über diverse Online-Kanäle wie einschlägige Foren, Facebook-Gruppen und Motorrad-Websites angesprochen.

In Remote Interviews konnte den Testern bereits vor Release der App Screens der neuen Version gezeigt und somit zusätzlicher Input und Verbesserungsvorschläge eingeholt werden. Bei dieser Art von Interviews können Tests live mitverfolgt werden, was ungefilterte Einblicke in die Gedanken der Tester ermöglicht. Durch die parallele Echtzeit-Kommunikation mit den Testern können gezielt Fragen gestellt und unmittelbares Feedback gesammelt werden.

Alles in allem gibt es viel zu bedenken, wenn Sie Crowdtesting in Ihren Development Lifecycle einbinden wollen – doch dies sollte Sie nicht abschrecken, denn die Vorteile überwiegen den Aufwand um ein Vielfaches und ebnen Ihnen den Weg, Software zu entwickeln, die Ihre Kunden gerne nutzt.

. . .

Author Image
Zu Inhalten
ist Mitgründer und Managing Director des Softwaretesting-Spezialisten Testbirds. Er verantwortet die Weiterentwicklung der Dienstleistungen und der IT-Infrastruktur. Georg verfügt über umfassende Erfahrung im Feld des Enterprise Testing – von automatisierten Tests kompletter IT-Service-Desks bis hin zu Lasttests – und hat zahlreiche IT-Projekte für internationale Konzerne betreut. Er absolvierte den Elitestudiengang „Finanz- und Informationsmanagement“ an der Universität Augsburg und der TU Münc

Artikel teilen