Testmanagement

Alles im Griff mit dem „Cheat Sheet Test Management“

Wie behält man die Übersicht über die Abläufe im Test? Für Projektleiter oder Product Owner ist dieser Gesamtüberblick essentiell. Oft werden sie diese Frage von jenen hören, die die Gesamtverantwortung für ein Produkt oder ein bestimmtes Releaseziel übernommen haben, aber selbst nicht täglich im Test mitarbeiten – durch rasche Veränderungen und Ergebnisse muss man diese Personen immer wieder auf den neuesten Stand bringen. Ich habe eine Checkliste zusammengestellt, die Ihnen dabei helfen soll im Cockpit alles im Griff zu behalten. Ich nenne diese Liste auch gern mein persönliches „Cheat Sheet“.

Testmanagement - Alles im Griff

Finden Sie die richtige Vorgehensweise

  • Achten Sie bei der Software-Entwicklung darauf, das richtige Vorgehensmodell einzusetzen, einen erfolgreichen Weg mit dem Team bei der Analyse der Anforderungen einzuschlagen und die einzelnen Prozesse in das neu zu erstellende System zu integrieren – agile Methoden, wie z.B. Scrum sind oftmals Modelle, die zu wenig Iterationen und Integrationsschritte vorsehen.
  • Denken Sie auch an Alternativen, wie z.B. Kanban in IT, dies hilft Ihnen die richtige Vorgehensweise zu finden.

 

Integrieren Sie ihre Stakeholder frühzeitig und regelmäßig

  • Holen Sie frühzeitig und regelmäßig Anforderungen und Vorstellungen der Stakeholder über das zukünftige System ein.
  • Sorgen Sie dafür, dass das Team sich regelmäßig mit den Stakeholdern austauscht – Entwickler und auch Tester, die die Geschäftsanforderungen nicht verstehen, werden schlechte Software abliefern.
  • Diskutieren Sie vor der Implementierung Anforderungen und Geschäftsprozesse mit Experten. Die erste Lösung ist oft nicht die beste – zwei Stunden zusätzliche Reviews oder Diskussionen können zwei Monate zusätzlichen Implementierungsaufwand verhindern.
  • Verwenden Sie für Stakeholder eine einfach anzuwendende Testautomatisierung für Akzeptanztests (wie z.B. FitNesse/Selenium) – Stakeholder, die mit selbst durchgeführten Testläufen “spielen” können, werden eine konstruktivere Haltung gegenüber dem Projekt einnehmen.

 

Informieren Sie immer rechtzeitig die Tester

  • Informieren Sie die Tester umfassend. Sorgen Sie dafür, dass die Tester regelmäßig mit Entwicklern, Projektleitern, Stakeholder und End-Usern sprechen – Tester, die zu viel Zeit in die Suche von Anforderungen investieren, liefern am Ende schlechte Testergebnisse.
  • Bevor Sie eine Entscheidung treffen, diskutieren Sie die Release-Planung mit dem gesamten Team inklusive Tester. Tester, die nicht informiert werden was aktuell zu testen oder noch nicht zu testen ist, können keinen erfolgreichen Test durchführen.
  • Investieren Sie Zeit in die Erstellung passender Anforderungen UND kommunizieren Sie diese im Team, so dass jedes Team-Mitglied die Chance hat diese zu verstehen.
  • Setzen Sie in größeren Projekten einen erfahrenen Tester/Testmanager ein, um die Testaktivitäten zu koordinieren und halten Sie ihn immer am laufenden. Der Testmanager sollte oft mit Testern, Entwicklern, Stakeholdern und Projektleitern kommunizieren – überprüfen Sie dies in regelmäßigen Abständen, nicht jeder ist ein Kommunikationsexperte.

 

Das richtige Team zur richtigen Zeit

  • Es ist eine gute Idee die Software von End-Usern testen zu lassen, aber meistens haben sie nicht die Zeit, die der Test erfordern würde. Überzeugen Sie die Stakeholder, ihr Projekt früh genug mit ausreichend vielen und qualifizierten Mitarbeitern zu besetzen. Ändern Sie das Team, wann immer es notwendig erscheint – in frühen Phasen sind nur wenige, aber erfahrene Tester notwendig, in späteren Phasen können Tester die Mehrheit im Team bilden.
  • Planen Sie eine Einarbeitungszeit für neue Teammitglieder ein, bevor bestehende Mitglieder das Team verlassen – zu Beginn benötigen Sie nicht hoch qualifizierte Wissensträger, sondern gute Praktiker, die lediglich eine Anleitung benötigen.
  • Der Testaufwand sollte zwischen 20-60% des Iterationsaufwandes betragen, abhängig vom frühen/späten Testbeginn oder dem Einsatz von Standard-Software, etc. Wenn Sie es nicht genau wissen, nehmen Sie 30% als Faustregel – denken Sie daran, wenn Sie den Aufwand planen und ihr Team besetzen.

 

Verlassen Sie sich nicht auf Ihre Lieferanten

  • Tests sollen früh stattfinden, 70% der automatisierten Tests sollten Unit-Tests sein (Faustregel: Der Rest sollte sich auf Service-Tests und UI-Tests aufteilen).
  • Lassen Sie Lieferanten ausreichende Tests nachweisen und ihre eigenen Tester die Unit-, Integrations- und Systemtests der Lieferanten bewerten – Lieferanten werden oft nach gelieferten Funktionalitäten und nicht nach Qualität bezahlt.
  • Fehlerhaft entwickelter Code zeigt sich erst spät im Projekt, die Fehlerkorrektur schlägt dann fehl und die Zuverlässigkeit der Software ist nicht mehr gewährleistet. Einige Projekte können nicht gerettet werden und scheitern zu einem späten Zeitpunkt.
  • Lassen Sie ihre Tester Smoke-Tests definieren, die ein Minimum an Funktionalität und ausreichend Zuverlässigkeit sicherstellen, um mit den Akzeptanz-Tests fortzufahren – Lieferungen, die den Smoke-Test nicht bestehen, werden zurückgewiesen.

 

Kontrollieren Sie Code-Änderungen und Auslieferungen

  • Verwenden Sie ein passendes Änderungsmanagement für Code und Tests und definieren Sie einen Auslieferungsprozess. Beides muss im Team abgestimmt sein. Tester sollten immer genau wissen, welche Version sich im Test befindet.
  • Die Tester sollen ein Set von teilweise automatisierten Tests definieren, die eine korrekte Hauptfunktionalität sicherstellen – gewöhnlich werden nur 20-30% der Funktionalität regelmäßig verwendet und sind für den Produktbetrieb entscheidend. (Glauben Sie nicht alles was Stakeholder Ihnen vielleicht erzählen.)

 

Nur ein dokumentiertes Ergebnis ist ein gutes Ergebnis

  • Fordern Sie Ihr Team auf, sich an die Vereinbarungen und Regeln zur Dokumentation der Testergebnisse zu halten. Fehler, deren Behebung übersehen wird, können ein Projekt ruinieren.
  • Verwenden Sie ein geeignetes Fehlerverfolgungstool und setzen Sie einen erfahrenen Mitarbeiter für die Installation und Konfiguration ein. Fehlerverfolgung ist wie ein „Haarschnitt“ – nicht jeder passt.

 

Erstellen Sie gewissenhafte Berichte über den Testfortschritt

  • Der Testfortschritt sollte in regelmäßigen Meetings dargestellt und diskutiert werden – schreiben Sie nicht nur langweilige one-way Berichte.
  • Kontrollieren Sie regelmäßig Zeit, Kosten, eingesetzte/verfügbare Ressourcen und den Testfortschritt – verlassen Sie sich nicht nur darauf, was Ihnen Team-Mitglieder berichten.
  • Achten Sie immer auf eine Nachvollziehbarkeit von den Anforderungen zu den Tests (User-Story à Akzeptanzkriterien à Testfall à Testlauf). Verwenden Sie für die Dokumentation und Verfolgung ein Tool – Sie sollten immer wissen aus welchem Grund ein Testlauf notwendig war.

 

Und nun heißt es, einfach die Sache angehen! Und nicht vergessen, letztendlich kommen die Leut’ beim Reden z‘samm!

 

Passende Artikel

Kommentare gesperrt.