Was bedeutet Zeitabschätzung in QS?
Bevor wir uns mit den Einzelheiten befassen, sollten wir einige Grundlagen erläutern. Bei der Zeitabschätzung in der QA geht es darum, zu prognostizieren, wie lange die Durchführung von Testen im Rahmen eines Softwareentwicklungsprojekts dauern wird. Das ist so, als würde man vor einer Reise einen Reiseplan erstellen – man benötigt die Zeit, um sein Ziel zu erreichen.
Faktoren, die die Abschätzung der Zeit beeinflussen
Welche Faktoren können also Ihre Erwartungen beeinflussen? Unsere erfahrenen Tester waren sich einig, dass mehrere Variablen Ihre Fähigkeit beeinflussen können, die Testzeit genau abzuschätzen. Hier sind einige der wichtigsten Faktoren, die zu berücksichtigen sind:
- Die Komplexität des Projekts: Je komplizierter die Software ist, desto länger dauert das Testen. Berücksichtigen Sie bei der Abschätzung die Anzahl der Leistungsmerkmale, Integrationen und Abhängigkeiten.
- Fachwissen des Teams: Die Fähigkeiten und Erfahrungen Ihres QS-Teams spielen eine wichtige Rolle. Ein Team aus erfahrenen Testern kann Aufgaben schneller erledigen als ein weniger erfahrenes Team.
- Testen der Umgebung: Die Verfügbarkeit und Stabilität der Testumgebung können Ihre Schätzungen beeinflussen. Häufige Einrichtungsprobleme können zu Verzögerungen führen.
- Umfangsänderungen: Seien Sie auf Änderungen des Projektumfangs vorbereitet. Zusätzliche Leistungsmerkmale oder Fehlerentdeckungen können den Zeitrahmen für das Testen verlängern.
- Verfügbarkeit von Ressourcen: Eingeschränkte Ressourcen, wie Testgeräte oder automatisierte Tools zum Testen, können den Testprozess verlangsamen.
Da Sie die Faktoren kennen, die man beim Modell zur Einschätzung der QS-Zeit berücksichtigen sollte, lassen Sie uns die Tipps für die erfolgreiche Abschätzung der Testzeit von Software durchgehen.
Tipps und bewährte Methoden unserer Experten für eine erfolgreiche Schätzung der Testzeiten
Unsere erfahrenen Tester gaben wertvolle Tipps für eine genauere Einschätzung der QS-Zeit:
- Teilen Sie die Aufgaben auf: Unterteilen Sie das Testen in kleinere, überschaubare Aufgaben. So können Sie die einzelnen Komponenten genauer schätzen.
- Verwenden Sie historische Daten: Überprüfen Sie vergangene Projekte und deren Zeitpläne für das Testen. Historische Daten liefern wertvolle Erkenntnisse für die Einschätzung.
- Beraten Sie sich mit dem Team: Arbeiten Sie mit den Mitgliedern Ihres QS-Teams zusammen, um verschiedene Perspektiven und Einblicke in mögliche Herausforderungen zu gewinnen.
- Berücksichtigen Sie Unvorhergesehenes: Planen Sie unter anderem immer Pufferzeiten für unerwartete Probleme oder Verzögerungen ein, die während des Testens auftreten können.
- Überprüfen und anpassen: Bewerten Sie Ihre Einschätzungen kontinuierlich. Wenn Sie einheitlich unterschätzen oder überschätzen, lernen Sie daraus und passen Sie Ihre Vorgehensweise an.
Hört sich systematischer an und ist weniger überwältigend, oder? Wenn Sie immer noch im Unklaren darüber sind, wie Sie die Testzeit abschätzen sollen, machen Sie sich keine Sorgen, unsere erfahrenen Tester statten Sie mit allem aus, was Sie benötigen, unter anderem mit einer vorgefertigten Vorlage.
Testphasen, die Sie abschätzen sollten
Welche Phasen sollten Sie bei Ihren Schätzungen berücksichtigen? Dies ist einer der wichtigsten Aspekte, die bei der Zeitschätzung zu berücksichtigen sind, und unsere erfahrenen Tester sind hier, um Ihnen dabei zu helfen.
Wenn wir uns in der Welt der Schätzung der Zeit für das Testen von Software bewegen, ist es wichtig zu erkennen, dass dieser Prozess mehr ist als nur eine einzelne Berechnung, sondern eine Reise mit vielen Facetten. Im Folgenden sind die wesentlichen Punkte aufgeführt, die bei der Schätzung der Testzeit in den verschiedenen Phasen des Testens zu berücksichtigen sind:
- Planung von Tests: Zeitaufwand für die Entwicklung von Teststrategien, den Entwurf von Testfällen und die Einrichtung der Umgebung.
- Testdurchführung: Der eigentliche Prozess der Ausführung von Testfällen und der Identifizierung von Fehlern.
- Fehlerverwaltung: Zeit, die für das Anmelden, Verfolgen und erneute Testen von Fehlern aufgewendet wird.
- Regressionstesten: Sicherstellen, dass vorhandene Funktionen durch neue Änderungen nicht beeinträchtigt werden.
- Dokumentation: Zeitaufwand für die Dokumentation von Testergebnissen, Berichten und Testabschlussaktivitäten.
Wenn Sie die verschiedenen Phasen des Software-Testens erkunden, wird deutlich, dass die Schätzung der Testzeit ein umfassender Prozess ist. Jede Phase trägt zum Erfolg Ihres Projekts bei, und eine genaue Schätzung der Zeit ist der Kompass, der Sie durch diese komplizierte Reise führt. Jetzt, mit einem tieferen Verständnis dieser Phasen des Testens bewaffnet, wollen wir uns mit einem praktischen Tool ausstatten, um unsere Bemühungen zu rationalisieren – der Vorlage für die Schätzung der Testzeit für Software.
Hier sind einige Möglichkeiten, wie ich Testaufgaben in der Vergangenheit eingeschätzt habe:
Der erste Test wird wahrscheinlich 20-mal so lange dauern wie der letzte.
Der Testaufwand wird wahrscheinlich etwa halb so groß sein wie der Entwicklungsaufwand.
Wie viel Zeit haben ähnliche Aufgaben bei anderen Projekten in diesem oder anderen Unternehmen in Anspruch genommen?
Niemand kann vernünftigerweise erwarten, dass eine Schätzung ohne historische Informationen sehr genau ist.
Schablone für die Abschätzung der Softwareentwicklungszeit
Um Ihnen den Einstieg in die Welt der Schätzung von Testzeiten zu erleichtern, präsentieren wir Ihnen eine starke Vorlage für die Schätzung von Testzeiten. Stellen Sie es sich als Ihren zuverlässigen Kompass auf der Suche nach Präzision und Effizienz in der QS vor. Diese Vorlage für die QS-Zeitschätzung hilft Ihnen, sich in der Softwareentwicklung zurechtzufinden, unter anderem mit den folgenden Elementen:
- Projektname:
- Startdatum des Testens:
- Enddatum des Testens:
- Projektkomplexität (niedrig/mittel/hoch):
- QS-Team Expertise Level (Junior/Intermediate/Senior):
- Stabilität der Testumgebung (stabil/unstabil):
- Geplante Umfangsänderungen (Ja/Nein):
- Ressourcenverfügbarkeit (ausreichend/eingeschränkt):
- Review der historischen Daten (Ja/Nein):
- Kontingenzpuffer (%):
Mit dieser Vorlage können Sie die Besonderheiten des Projekts systematisch bewerten und genauere Zeitschätzungen für Softwaretests vornehmen. Wenn Sie diese Angaben machen, werden Sie feststellen, dass Ihr Weg klarer, kontrollierter und Erfolg versprechender wird. Und mit fast keinem Aufwand müssen Sie es nur noch personalisieren. Wie cool ist das denn?
Nachdem wir nun die wertvollsten Strategien für Sie zusammengefasst und strukturiert haben, sind die wahren Meister ihres Fachs – unsere erfahrenen Tester – gerne bereit, ihr Fachwissen direkt an Sie weiterzugeben. Sie können sich darauf freuen, denn unsere Experten haben sich zusammengefunden, um Ihnen wertvolle Einblicke und Ratschläge zu geben.
Techniken zur Schätzung der QS-Zeit
Die nachstehende Liste von Techniken gilt sowohl für QS-Spezialisten als auch für ihre Kollegen aus der Softwareentwicklung. Diese Modelle zur Schätzung von Softwaretests funktionieren sogar noch besser, wenn das gesamte Team sie anwendet.
Verwenden Sie die Pokerplanung
Die Pokerplanung ist eine erstaunliche Technik, um die Angst des Einzelnen vor hohen Schätzungen zu überwinden. Zu Beginn der Planungssitzung erhält jeder ein Dutzend Karten, auf denen die Anzahl der Stunden steht, die für die Erledigung der Aufgabe benötigt werden. Wenn der Projektleiter ein Ticket vorliest, teilt jeder seine Gedanken dazu mit, wie es angegangen werden sollte. Der allgemeine Arbeitsablauf, die Anzahl der beteiligten Spezialisten und mögliche Blockaden sind nur einige der Aspekte, die Sie ansprechen sollten.
Nach der Diskussion zeigt jeder im Team eine Karte, auf der er die seiner Meinung nach erforderliche Stundenzahl eingetragen hat. Einige Leute würden in der Regel höhere Schätzungen abgeben als andere, aber das ist ja der Sinn der Übung. Führen Sie eine weitere Diskussionsrunde durch, in der die Personen mit den höheren/niedrigeren Karten ihre Mitspieler davon überzeugen, ihre Meinung zu ändern. Letztendlich werden Sie zu einem Konsens kommen und mit der nächsten Story weitermachen, um die gleichen Schritte zu durchlaufen.
Linda Hoff, Test- und Freigabeverwaltung bei Qlik, weist auf wichtige Voraussetzungen für eine sukzessive Pokerplanung hin:
„Ich mag Pokerplanung, FALLS man jemanden im Team hat, der mutig genug ist, hoch zu schätzen. Diese Person war ich schon einige Male. Es ist hart, aber wir haben viel realistischere Schätzungen.“
Ein weiterer großer Vorteil der Pokerplanung besteht darin, dass jeder im Team eine Stimme hat. Dies ist eine wesentliche Voraussetzung für die Anwendung und Einhaltung der Scrum-Methodik beim Softwaretest. Wenn an einer Aufgabe mehrere Mitarbeiter in verschiedenen Stadien beteiligt sind, sollten Sie zumindest den Pessimisten anhören.
Alternativ können Sie auch die Drei-Punkte-Schätzung verwenden. Obwohl diese Technik weitaus weniger ansprechend ist, deckt sie eine Reihe von möglichen Lösungen ab. Sie starten einfach Ihr Problemverfolgungssystem und sehen sich an, wie viele Stunden Sie tatsächlich für die Erledigung der Aufgabe gebraucht haben
In meinem Unternehmen gilt folgendes: Zwischen 1 und 4 Schritten: Einfacher Test, der in 2 Stunden erledigt werden kann. Bei 4-6 Schritten beträgt die Zeit 4 Stunden, und alles zwischen 6-8 Schritten, abhängig von der Komplexität, wird als ein Tag betrachtet. Wenn Sie viele Testfälle haben, in denen Sie Teile in mehreren Testschritten wiederverwenden werden, zählen wir 2 Testfälle pro Tag.
Weitermachen von Stunden
Die Schätzung der QS-Testzeit ist auf mehreren Ebenen schwierig. Dieselbe Aufgabe kann selbst bei zwei QS-Spezialisten mit gleichem Dienstalter unterschiedlich viele Stunden in Anspruch nehmen. In diesem Sinne wird eine straffe Sprintplanung ziemlich schnell durcheinander gebracht. Es geht um , wann, nicht um , ob Sie beginnen, Fristen für bestimmte Aufgaben zu versäumen.
Prioritäten helfen Ihnen zu erkennen, bei welchen Aufgaben es Sie Ihnen am wenigsten bedauern, spät dran zu sein. Der Blick auf die festgelegte Stundenzahl kann jedoch Ihr Verständnis trüben. Hier ist ein toller Ratschlag, den wir in unserer Linkedin Softwaretest-Community von Testingenieurin und YouTube-Autorin Karen Todd. erhalten haben.
„Mir gefällt die Idee der „Aufwandsabschätzung“ im Gegensatz zur Zeitabschätzung. Zeit ist ein schwieriges Thema, denn was für den einen Mitarbeiter eine Stunde dauert, kann für einen anderen fast den ganzen Nachmittag in Anspruch nehmen. Aber was für den einen weniger Aufwand bedeutet, kann für den anderen mehr Aufwand bedeuten. Es ist kompliziert.
Ich mag die T-Shirt-Größe als Anhaltspunkt. Überlegen Sie gemeinsam im Team, wie viele Systeme dieser Punkt berühren wird, wie viele Personen daran beteiligt sein werden, wie komplex er ist, welches Risiko mit seiner Umsetzung verbunden ist... und ordnen Sie die vorgeschlagenen Funktionen/Aufgaben in Gruppen nach „Hemdgröße“ ein (klein, mittel, groß usw.)“
Eine weitere Alternative zu den numerischen Stunden ist Story Points. Sie stellen die relative Komplexität einer User Story im Vergleich zu dem dar, was sich sonst im Backlog befindet. Story Points sind besonders nützlich für Teams mit gemischten Senioritätsstufen. Die Schätzungen der Tests werden durch die Wahl der QS-Spezialisten beeinflusst; die relative Komplexität, ausgedrückt durch Story Points, bleibt gleich.
„Wir sind Agile, also verwenden wir Story Points für die Schätzung. Die Zeit für die Qualitätssicherung wird nicht direkt geschätzt, aber ich erkenne, wenn eine Geschichte viel Potenzial für das Hin und Her mit den Entwicklern hat. Wenn das passiert, ermutige ich sie, ihre Schätzungen höher anzusetzen und ausreichend Zeit für Tests/Nachprüfungen einzuplanen. Das funktioniert gut für mein Team.“
Bereit, Ihren QA-Prozess zu optimieren und die Genauigkeit der Zeitabschätzung zu verbessern? Schauen Sie nicht weiter als aqua cloud. Mit aqua ist Komplexität kein Hindernis mehr – etablieren Sie einen klaren Prozess und Workflow, um die Projektkomplexität zu reduzieren und sicherzustellen, dass jeder Schritt klar definiert ist. Ob Sie ein erfahrener QA-Experte oder ein neues Teammitglied sind, aqua ermöglicht es jedem, effizient mit klaren und strukturierten Testfällen zu testen. Sagen Sie den Kopfschmerzen in der Testumgebung Auf Wiedersehen – aqua ermöglicht es Ihnen, erkannte Fehler strukturiert zu speichern und beschleunigt so die Fehlerbehebung. Und mit dem vollständigen Projektscope, der in aqua gespeichert ist, werden Änderungen am Scope leicht verwaltet und Unklarheiten beseitigt. Transformieren Sie noch heute Ihren QA-Prozess mit aqua cloud.
Vereinfachen, stärken und beschleunigen Sie Ihre Zeitabschätzung mit einer einzigen Lösung
Verfolgen Sie einen termingerechten Ansatz
Während das Testen einen Anfang hat, ist das Ende nicht so klar (es sei denn, es handelt sich um eine Schätzung der Testautomatisierung). Es gibt immer Raum für mehr QS, auch wenn es letztendlich immer länger dauert, die kleinsten Probleme zu finden. Hier erfahren Sie, wie Sie den Spieß umdrehen können:
„In der Regel frage ich: ‚Wie viel Zeit steht mir zur Verfügung?‘, und ich versuche festzustellen, ob ich in der mir zur Verfügung stehenden Zeit eine angemessene Abdeckung erreichen kann. Wenn meine Abdeckung schlecht ist oder ich beim Testen viele Fehler finde, versuche ich, das Risiko abzuschätzen und es den Beteiligten mitzuteilen. Ich lasse sie entscheiden, ob sie mir mehr Zeit geben wollen oder nicht. Das bewahrt mich davor, dass ich mich in Versprechen verstricke, die ich nicht halten kann. Meiner Erfahrung nach kommt das Testen in der Regel zu kurz, wenn es um den Projektplan geht.“
Während die Freigabetermine relativ stabil sind, weiß ein Tester nicht unbedingt, wie tief der Graben einer neuen Funktion ist. Wie kann man die Dinge für den QS-Spezialisten berechenbarer machen? Einfach: führt Unit-Tests durch, um konzeptionelle Fehler zu finden, bevor Ihre Tester den neuen Code überhaupt zu Gesicht bekommen. Mit ein wenig zusätzlicher Arbeit für Ihre Entwickler wird die Aufwandsschätzung für Softwaretests viel einfacher.
Bewerten Sie Ihre Schätzungen neu
Eine Möglichkeit, Enttäuschungen im Leben zu vermeiden, besteht darin, seine Erwartungen anzupassen. Manche Leute glauben, dass man das auch in der Qualitätssicherung machen kann. Schließlich können Sie keine genaue Schätzung verpassen, wenn Sie grobe Schätzungen in Ihre Testmanagement-Software eingeben.
„Wenn wir eine große Aufgabe bekommen, versuchen wir, sie in testbare Teile zu zerlegen und diese abzuschätzen. Sobald die Entwickler mit der Arbeit beginnen, können sie auf Komplikationen stoßen, die zu einer Ausweitung des Umfangs führen oder einfach nur länger als geplant dauern. Falls wir in eine solche Situation geraten, treffen sich die Entwickler und diskutieren und schätzen die verbleibende Arbeit neu ein. Auch das funktioniert gut: lernen, umstellen und noch mehr lernen.“
Dies ist eine gute Taktik, um die Qualitätssicherung mit der fließenden Art der Entwicklung in Einklang zu bringen. Alle potenziellen Hindernisse, die eine User Story auf den nächsten Sprint verschieben, bedeuten, dass Ihre Tester nicht daran arbeiten werden. Sie hätten etwas mehr Zeit damit verbringen können, anderen Funktionen den letzten Schliff zu geben, oder sich auf die wilde Fahrt der Erkundungstests begeben können. Die Planung der Entwicklung in kleineren Abschnitten würde in der Tat auch weniger Unterbrechungen im Kalender der Tester bedeuten.
Nehmen Sie keine Schätzungen vor
Zeitschätzungen sind für die Planung unerlässlich, insbesondere wenn Sie einen ganzen Sprint planen müssen. Aber was ist, wenn ich Ihnen sage, dass Sie überhaupt keine Schätzungen brauchen? Was auch immer Ihre Reaktion war, ich bin es nicht, der Ihnen das sagen wird.
„Wir arbeiten nach dem Kanban-Prinzip, es gibt also ein großes Backlog mit priorisierten Aufgaben anstelle von 2-Wochen-Sprints. Die Entwickler schätzen ihren Aufwand in Story Points ein, aber unser QS-Team tut das nicht. Wenn ein Entwickler eine Funktion einführt, teste ich sie sofort. Wenn mehrere Funktionen auf die QS warten, richten wir uns nach denselben Prioritäten, die die Entwickler für sich selbst setzen.“ Ja, es gibt überhaupt keine „storyspezifischen“ Schätzungen für QA.“
Das gilt nicht nur für uns: Auch das Engineering-Team von Qlik hat keine Freude an knappen Fristen, auch wenn sie nicht so radikal sind.
„Sobald es ein Datum gibt, an dem etwas getan werden soll, ist es sehr schwierig, eine Schätzung vorzunehmen, die nicht von diesem Datum beeinflusst wird. Daher ziehe ich einen Wertefluss ohne angestrebte Freigabetermine gegenüber Freigabeplänen und festen Terminen vor. Wir haben diesen konstanten Fluss für die meisten unserer Features und es ist fantastisch zu sehen, welchen Unterschied das macht.“ Wir haben auch wöchentliche Freigaben, was sehr hilfreich ist. Falls Sie für diese Freigabe noch nicht bereit sind, haben Sie nächste Woche eine neue Chance. Früher hatten wir monatliche Freigaben, und das war schwieriger.“
Dieser Ansatz kann auch erfordern, dass Ihr Produktteam bei den Freigabeterminen flexibel ist. Die Verkürzung von Sprints oder die Abkehr von festen Releases gibt Ihnen jedoch die Freiheit, schneller zu innovieren und neue Dinge so schnell wie möglich zu liefern. Wie gut es bei aqua gelaufen ist und welche weiteren traditionellen Scrum-Tipps es gibt, können Sie in unserem Blog-Artikel nachlesen.
Um die Zeit genau einzuschätzen, fangen Sie an, sie zu verfolgen. Ich habe es für ein paar Wochen gemacht und kann jetzt ziemlich genau abschätzen, wie lange es dauern wird, den Test zu schreiben und auszuführen.
Schlussfolgerung
Schätzungsmethode für Softwaretests sind ein sehr interessantes Thema. Man kann so tun, als gäbe es die Zeit nicht, so arbeiten, als sei die Zeit nicht konstant (was sie in der Softwareentwicklung nicht ist), oder sie sogar ganz ablehnen. Unabhängig davon, welche Technik zur Schätzung von Softwaretests Sie verwenden, ist es von großem Vorteil, den Testern mehr Handlungsspielraum zu geben und andere Beteiligte einzubeziehen.
Wenn Sie den Anteil der unvorhersehbaren Arbeiten reduzieren, können Sie auch das Problem der Schätzungen verringern. Dazu gehört auch die manuelle Testerstellung, da Sie nicht genau wissen, wie viele Tests Sie benötigen, um eine Anforderung vollständig abzudecken. Auch die Zeit für die Erstellung eines Tests kann je nach Komplexität sehr unterschiedlich sein.
Die Lösung besteht darin, künstliche Intelligenz einzubinden. Der KI-Copilot von aqua kann aus einer Beschreibung ganze Testfälle erstellen. Denken Sie einfach an die wichtigsten Tests zur Abdeckung einer Anforderung, und aqua erstellt sie für Sie.
Jetzt, da Sie die Methoden zur Optimierung der Zeitabschätzung in QA kennen, warum warten? Nutzen Sie aqua cloud, um Ihren QA-Prozess zu revolutionieren. Verabschieden Sie sich von Komplexität, da aqua Klarheit in Ihren Workflow bringt und nahtloses Testen für alle Teammitglieder ermöglicht, unabhängig von ihrem Erfahrungslevel. Sagen Sie den Problemen in der Testumgebung Lebewohl, indem Sie erkannte Fehler effizient speichern und Änderungen am Scope mühelos mit aquas umfassender Projektscope-Speicherung verwalten. Machen Sie noch heute den Wechsel zu aqua cloud und erleben Sie die Transformation aus erster Hand.
Befreien Sie Ihren QA-Prozess von den Schwierigkeiten bei der Zeitabschätzung