Testabschätzungstechniken im Softwaretest
⚡ Intelligente Zusammenfassung
Methoden zur Aufwandsschätzung für Softwaretests ermöglichen es, den Zeitaufwand und die Kosten von Tests abzuschätzen. Ein vierstufiger Prozess – Aufgaben aufteilen, Verantwortliche zuweisen, Aufwand schätzen und mit den Stakeholdern abstimmen – wandelt vage Zeitpläne in einen nachvollziehbaren Plan um, der von der Geschäftsleitung genehmigt werden kann.
Was ist eine Softwaretestschätzung?
Schätzung von Softwaretests Die Aufwandsschätzung ist eine Managementaktivität, die den Zeitaufwand und die Kosten einer Testaufgabe abschätzt. Die Erstellung einer verlässlichen Kostenschätzung ist eine der wichtigsten Aufgaben im Bereich der Testplanung. Testmanagement weil es die Entscheidungen bezüglich Zeitplan, Budget und Ressourcen beeinflusst.
Warum die Schätzung von Testaufwand wichtig ist
Kunden stellen vor der Unterzeichnung eines Testauftrags immer zwei Fragen:
Bei kleinen Projekten lassen sich diese Fragen leicht beantworten. Bei einem größeren Projekt – beispielsweise dem Testen der Guru99 Bank-Website – Sie benötigen eine strukturierte Vorgehensweise, um die Antwort zu verteidigen.
Was ist zu schätzen?
- Ressourcen: Personal, Ausrüstung, Einrichtungen, Finanzierung und alles andere, was zur Durchführung der Arbeiten erforderlich ist.
- Zeit: Die wertvollste Ressource in jedem Projekt – jede Veröffentlichung hat eine Deadline.
- Menschliche Fähigkeiten: Das Wissen und die Erfahrung des Teams. Stärkere Tester sind schneller als ein weniger erfahrenes Team.
- Kosten: Das Projektbudget – wie viel Geld benötigt wird, um die geplanten Tests durchzuführen.
So schätzen Sie
Die gängigen Methoden zur Aufwandsschätzung bei Softwaretests sind:
- Projektstrukturplan (PSP).
- Drei-Punkt-Schätzung.
- Breitband-Delphi.
- Funktionspunkt- oder Testpunktanalyse.
- Anwendungsfallpunktmethode.
- Prozentuale Verteilung.
- Ad-hoc-Methode.
Das unten beschriebene vierstufige Verfahren kombiniert verschiedene Techniken, um zu einer fundierten Schätzung zu gelangen. Das Beispiel verwendet die GuruFallstudie zur 99 Bank.
Schritt 1) Teilen Sie das Gesamtprojekt in Teilaufgaben auf.
Verwenden Sie die Projektstrukturplan Eine Technik, um ein komplexes Projekt in Module, Untermodule und schließlich in die kleinsten sinnvollen Aufgaben zu unterteilen. Schätzungen sind auf der Ebene der einzelnen Teilprojekte deutlich zuverlässiger als bei vagen Projektüberschriften.
Wende die Technik an, um die GuruDas 99 Bank-Projekt wurde in fünf kleinere Aufgaben unterteilt:
Jede Aufgabe wird dann in Teilaufgaben unterteilt, bis jede Zeile detailliert genug ist, um eine Schätzung zu ermöglichen.
| Aufgabe | Teilaufgabe |
|---|---|
| Analyse der Software-Anforderungsspezifikation | Untersuchen Sie die Anforderungsspezifikationen. |
| Befragen Sie Entwickler und andere Beteiligte, um mehr über die Website zu erfahren. | |
| Erstellen Sie die Testspezifikation | Test-Szenarien entwerfen. |
| Testfälle erstellen. | |
| RevTestfälle ansehen und überarbeiten. | |
| Führen Sie die Testfälle aus | Erstellen Sie die Testumgebung. |
| Führe die Testfälle aus. | |
| RevErgebnisse der Testausführung ansehen. | |
| Melden Sie die Mängel | erstellen Sie Defekt Berichten. |
| Melden Sie die Mängel. |
Schritt 2) Weisen Sie jede Aufgabe einem Teammitglied zu.
Weisen Sie jede Teilaufgabe dem am besten geeigneten Verantwortlichen zu.
| Aufgabe | Eigentümer |
|---|---|
| Analyse der Software-Anforderungsspezifikation | Alle Teammitglieder |
| Erstellen Sie die Testspezifikation | Tester / Testanalyst |
| Erstellen Sie die Testumgebung | Testadministrator |
| Führen Sie die Testfälle aus | Tester, Testadministrator |
| Mängel melden | Tester |
Schritt 3) Aufwandsschätzung für jede Aufgabe
In dieser Phase eignen sich zwei sich ergänzende Techniken gut:
- Funktionspunktmethode.
- Drei-Punkt-Schätzung.
Methode 1) Funktionspunktmethode
Der Testmanager schätzt Größe, Dauer und Kosten für jede Aufgabe.
Schritt A) Schätzen Sie den Umfang der Aufgabe ab
Nehmen wir die Aufgabe „Testspezifikation erstellen“. Ihr Umfang hängt von der funktionalen Größe des zu testenden Systems ab – je mehr Funktionen, desto komplexer das System. Funktionspunkte werden typischerweise in drei Gruppen eingeteilt: Komplex, Mittel und Einfach.
Basierend auf der Komplexität ordnet der Testmanager jedem Funktionspunkt ein Gewicht zu:
| Gruppe an | Gewichtung |
|---|---|
| Complex | 5 |
| Medium | 3 |
| Einfacher | 1 |
Das GuruDie Website der 99 Bank ist in 12 Funktionsbereiche unterteilt. Deren Komplexität wird im Folgenden zusammengefasst.
| # | Modul | Anwendbare Rollen | Beschreibung | Gewichtung |
|---|---|---|---|---|
| 1 | Kontostandsabfrage | Manager, Kunde | Kunde: Nur den Saldo eigener Konten einsehen. Manager: Kontostand jedes betreuten Kunden einsehen. |
3 |
| 2 | Überweisung | Manager, Kunde | Kunde: Geld vom eigenen Konto auf ein beliebiges Ziel überweisen. Manager: Geld von jeder Quelle an jedes Ziel überweisen. |
5 |
| 3 | Mini-Erklärung | Manager, Kunde | Die letzten fünf Transaktionen eines Kontos. Kunde: Nur eigene Konten einsehen. Manager: Beliebiges Konto anzeigen. |
3 |
| 4 | Maßgeschneiderte Erklärung | Manager, Kunde | Nach Datum oder Wert gefilterte Transaktionen. Kunde: Nur für eigene Konten. Manager: jedes Konto. |
5 |
| 5 | Passwort ändern | Manager, Kunde | Kunde: eigenes Passwort ändern. Manager: Ändern Sie Ihr eigenes Passwort (nicht das des Kunden). |
1 |
| 6 | Neuer Kunde | Geschäftsführer | Kundendaten (Adresse, E-Mail, Telefonnummer) hinzufügen und bearbeiten. | 3 |
| 7 | Neuer Account | Geschäftsführer | Spar- und Girokonten; ein Kunde kann mehrere Konten jeder Art besitzen. Der Bankmanager richtet neue Konten für bestehende Kunden ein. | 5 |
| 8 | Konto bearbeiten | Geschäftsführer | Bearbeiten Sie die Details eines bestehenden Kontos. | 1 |
| 9 | Konto löschen | Geschäftsführer | Ein bestehendes Kundenkonto löschen. | 1 |
| 10 | Kunde löschen | Geschäftsführer | Einen Kunden löschen Sie nur dann, wenn keine aktiven Konten mehr vorhanden sind. | 1 |
| 11 | Deposit | Geschäftsführer | Zahlen Sie Bargeld auf ein beliebiges Konto in der Filiale ein. | 3 |
| 12 | Widerruf | Geschäftsführer | Sie können in der Filiale von jedem beliebigen Konto Bargeld abheben. | 3 |
Schritt B) Schätzen Sie die Dauer der Aufgabe
Sobald die Komplexität festgelegt ist, schätzen Sie die benötigte Testdauer für jede Gruppe.
- Gesamtaufwand: Wir haben uns sehr bemüht, jede Funktion der Website zu testen.
- Gesamtpunktzahl der Funktion: Gesamtzahl der Module der Website.
- Schätzung pro Funktionspunkt: Durchschnittlicher Aufwand pro Punkt; hängt von der Teamproduktivität ab.
Angenommen, die Schätzung des Teams pro Funktionspunkt beträgt 5 Stunden/PunktDer Gesamtaufwand für die GuruEin Beispiel für die 99 Bank ist:
| Gruppe an | Gewichtung | Funktionspunkte | Gesamt |
|---|---|---|---|
| Complex | 5 | 3 | 15 |
| Medium | 3 | 5 | 15 |
| Einfacher | 1 | 4 | 4 |
| Funktion Gesamtpunktzahl | 34 | ||
| Schätzung pro Punkt | 5 | ||
| Geschätzter Gesamtaufwand (Personenstunden) | 170 | ||
Der Gesamtaufwand für die Erstellung der Testspezifikation beträgt etwa 170 PersonenstundenSobald der Aufwand bekannt ist, können Sie Ressourcen zuweisen, um Dauer und Kosten zu bestimmen.
Schritt C) Schätzen Sie die Kosten für die Aufgaben
Dieser Schritt beantwortet die zweite Frage des Kunden: „Wie viel kostet es?“. Gehen Sie von einem durchschnittlichen Teamstundensatz von aus. $ 5 / StundeDie obige Aufgabe dauert 170 Stunden, die Kosten betragen also 170 × $5 = $850Wenden Sie die gleiche Berechnung auf alle WBS-Aufgaben an, um das Projektbudget zu ermitteln.
Je genauer die Kostenschätzung, desto besser lässt sich das Projektbudget verwalten und desto besser kann sichergestellt werden, dass jeder Dollar einen Ertrag bringt.
Methode 2) Drei-Punkt-Schätzung
Die Drei-Punkt-Schätzung ist eine strukturierte Technik, bei der der Testmanager drei Werte pro Aufgabe angibt – die optimistisch, höchstwahrscheinlich und pessimistisch Aufwand – basierend auf bisherigen Erfahrungen oder besten Schätzungen.
Für „Testspezifikation erstellen“ könnten die drei Werte wie folgt lauten:
- Best Case: 120 Personenstunden (~15 Tage) mit einem starken, erfahrenen Team.
- Höchstwahrscheinlich: 170 Personenstunden (~21 Tage) mit einem typischen Team und Ressourcen.
- Schlimmsten Fall: 200 Personenstunden (~25 Tage) mit einem weniger erfahrenen Team und zusätzlichem Nacharbeitsaufwand.
Berechnen Sie den gewichteten Durchschnitt mithilfe der PERT-Formel:
Die Wertschöpfung E ist das gewichteter Durchschnitt — die geschätzte Kopfzeile für „Testspezifikation erstellen“.
Um das Vertrauen auszudrücken EBerechnen Sie die Standardabweichung:
Bei der GuruBeispiel der Bank 99: Die Schätzung ergibt sich zu 166.6 ± 13.33 Personenstunden — eine Spanne von 153.33 bis 179.99 Personenstunden.
Schritt 4) Validieren Sie die Schätzung
Fassen Sie alle Aufwandsschätzungen aus dem Projektstrukturplan zusammen und legen Sie den Plan dem Management (CEO, Projektmanager, wichtige Stakeholder) zur Prüfung und Genehmigung vor.
Erläutern Sie dem Vorstand die Kostenschätzung logisch, damit die Vorstandsmitglieder die Annahmen, die gewählten Techniken und die eingeplante Risikostreuung verstehen.
Testschätzung beste Praktiken
Pufferzeit hinzufügen
Pläne halten der Realität selten stand – Teammitglieder verlassen das Team, Tests dauern länger als erwartet, Abhängigkeiten geraten ins Wanken. Planen Sie daher in jede Schätzung einen angemessenen Puffer ein, damit der Zeitplan kleinere Überraschungen auffangen kann.
Planen Sie die Ressourcenverfügbarkeit
Berücksichtigen Sie geplante Urlaube, Schulungen und Bereitschaftsdienste. Schätzungen, die die Verfügbarkeit außer Acht lassen, sehen auf dem Papier gut aus, erweisen sich in der Praxis jedoch als unzureichend.
Nutzen Sie frühere Erfahrungen als Referenz
Historische Daten aus ähnlichen Projekten sind von unschätzbarem Wert. Wenn Sie letztes Jahr eine vergleichbare Website getestet haben, lernen Sie aus den tatsächlichen Ergebnissen, den aufgetretenen Problemen und den Maßnahmen, die letztendlich zum Erfolg geführt haben.
Halten Sie sich an die Schätzung – aber überprüfen Sie sie noch einmal.
Schätzungen sind nicht konservativ.tracts; das sind bestmögliche Schätzungen. RevÜberprüfen Sie die Ziele an festgelegten Meilensteinen und passen Sie sie nur an, wenn sich die Anforderungen wesentlich ändern oder neue Informationen die Situation verändern. Verhandeln Sie jede Änderung transparent mit dem Kunden.
Vorlage für Softwaretest-Schätzung
Laden Sie die Excel-Datei zur Schätzung von Softwaretests (.xlsx) herunter.
Andere Schätzverfahren
Neben WBS, Funktionspunkt- und Dreipunkt-Schätzung werden noch einige andere Verfahren häufig angewendet:
- Breitband-Delphi: iterative Konsensschätzung durch ein Expertengremium.
- Anwendungsfallpunktmethode: Der Aufwand ergibt sich aus der Anzahl und Komplexität der Anwendungsfälle.
- Prozentuale Verteilung: weist dem Testen einen festen Prozentsatz des gesamten Projektaufwands zu.
- Ad-hoc-Methode: Expertenurteil bei fehlenden historischen Daten.
Bottom-Up- vs. Top-Down-Schätzung
Eine praxisorientierte Betrachtungsweise der Schätzung lässt sich ebenfalls in zwei sich ergänzende Strategien unterteilen:
- Bottom-up-Schätzung: Basierend auf den Aufgaben der untersten Ebene des Projektstrukturplans. Mehrere Beteiligte, erfahrene Mitarbeiter und Mitwirkende tragen ihre Zahlen zusammen, um ein genaues Gesamtergebnis zu erzielen. Ideal, wenn die Arbeit gut verstanden ist.
- Top-Down-Schätzung: Das Projekt wird nach Größe und Komplexität klassifiziert und mit abgeschlossenen Projekten ähnlicher Art verglichen. Außerdem wird der durchschnittliche Aufwand pro Projekt berücksichtigt. Testfall und skaliert mit der prognostizierten Fallzahl. Nützlich zu Beginn eines Projekts, wenn noch wenige Details vorliegen.
Die meisten Teams kombinieren die beiden Ansätze – Top-Down für die wichtigste Kennzahl, Bottom-Up für die Zuverlässigkeit – und ergänzen das Ergebnis durch ausgefeilte Modelle, wenn das Budget den Aufwand rechtfertigt.















