Techniken zur Schätzung von Softwaretests
Was ist eine Softwaretestschätzung?
Die Testschätzung ist eine Managementaktivität, die sich annähert Wie lang Die Fertigstellung einer Aufgabe würde dauern. Eines davon ist die Aufwandsschätzung für den Test Dur und wichtig Aufgaben im Testmanagement.
Warum Testschätzung?
Zwei Fragen, die Sie von Ihren Kunden erwarten können, wenn Sie potenzielle Testaufträge besprechen, sind:
Bei kleinen Projekten sind diese Fragen relativ einfach zu beantworten. Aber für das große Projekt wie Testen Auf der Website der Guru99 Bank müssen Sie sich die Beantwortung dieser Fragen gut überlegen.
Was ist zu schätzen?
- Ressourcen: Dafür sind Ressourcen erforderlich durchführen jegliche Projektaufgaben. Dabei kann es sich um Personen, Ausrüstung, Einrichtungen, Finanzmittel oder alles andere definieren, was für den Abschluss einer Projektaktivität erforderlich ist.
- Zeiten: Zeit ist die wertvollste Ressource in einem Projekt. Jedes Projekt hat eine Lieferfrist.
- Menschliche Fähigkeiten : Menschliche Fähigkeiten bedeuten die Produktwissen und den Erfahrung der Teammitglieder. Sie wirken sich auf Ihre Einschätzung aus. Beispielsweise wird ein Team, dessen Mitglieder über geringe Testkompetenzen verfügen, mehr Zeit für die Fertigstellung des Projekts benötigen als ein Team mit hohen Testkompetenzen.
- Kosten: Die Kosten sind das Projekt Haushalt. Im Allgemeinen bedeutet es wie viel Geld es dauert, das Projekt abzuschließen.
Wie schätzen?
Liste der Techniken zur Schätzung von Softwaretests
- Projektstrukturplan
- 3-Punkte-Schätztechnik für Softwaretests
- Breitband-Delphi-Technik
- Funktionspunkt-/Testpunktanalyse
- Verwendung – Case-Point-Methode
- Prozentuale Verteilung
- Ad-hoc-Methode
Nachfolgend finden Sie den 4-Schritte-Prozess zur Schätzung
Sie erfahren, wie Sie diese Techniken kombinieren, um den Kostenvoranschlag für die Fallstudie der Guru99 Bank zu ermitteln.
Schritt 1) Teilen Sie die gesamte Projektaufgabe in Teilaufgaben auf
Eine Aufgabe ist eine Arbeit, die jemandem gegeben wurde. Dazu können Sie die verwenden Projektstrukturplan Technik.
Bei dieser Technik wird ein komplexes Projekt in Module unterteilt. Die Module werden in Untermodule unterteilt. Jedes Untermodul wird weiter in Funktionalität unterteilt. Das bedeutet, dass die gesamte Projektaufgabe in die kleinste Aufgaben.
Verwenden Sie die Work Break Down-Struktur, um das Guru99 Bank-Projekt in 5 kleinere Aufgaben aufzuteilen:
Danach können Sie jede Aufgabe aufteilen Teilaufgabe. Der Zweck dieser Aktivität besteht darin, eine Aufgabe zu erstellen als detailliert as möglich.
Aufgabe | Unteraufgabe |
---|---|
Analysieren Sie die Spezifikation der Softwareanforderungen | Untersuchen Sie die Soft-Anforderungsspezifikationen |
Interview mit dem Entwickler und anderen Stakeholdern, um mehr über die Website zu erfahren | |
Erstellen Sie die Testspezifikation | Entwerfen Sie Testszenarien |
Erstellen Sie Testfälle | |
RevTestfälle prüfen und überarbeiten | |
Führen Sie die Testfälle aus | Bauen Sie die Testumgebung auf |
Führen Sie die Testfälle aus | |
RevErgebnisse der Testausführung anzeigen | |
Melden Sie die Mängel | |
erstellen Sie Defekt Berichte | |
Melden Sie die Mängel |
Schritt 2) Weisen Sie jede Aufgabe einem Teammitglied zu
In diesem Schritt wird jede Aufgabe dem zugewiesen angemessen Mitglied im Projektteam. Sie können die Aufgabe wie folgt zuweisen
Aufgabe | Mitglieder |
---|---|
Analysieren Sie die Spezifikation der Softwareanforderungen | Alle Mitglieder |
Erstellen Sie die Testspezifikation | Tester/Testanalyst |
Bauen Sie die Testumgebung auf | Testadministrator |
Führen Sie die Testfälle aus | Tester, Testadministrator |
Mängel melden | Tester |
Schritt 3) Aufwandsschätzung für Aufgaben
Es gibt zwei Techniken, die Sie anwenden können, um den Aufwand für Aufgaben abzuschätzen
- Funktionale Punktmethode
- Dreipunktschätzung
Methode 1) Funktionspunktmethode
Bei dieser Methode schätzt der Testmanager Größe, Dauer und Kosten für die Aufgaben
Schritt A) Schätzen Sie die Größe der Aufgabe
In Schritt 1, haben Sie die gesamte Projektaufgabe mithilfe der WBS-Methode bereits in kleine Aufgaben unterteilt. Jetzt schätzen Sie den Umfang dieser Aufgaben ein. Lasst uns mit einer bestimmten Aufgabe üben“Erstellen Sie die Testspezifikation"
Der Umfang dieser Aufgabe hängt von der Funktionsgröße des zu testenden Systems ab. Die funktionale Größe spiegelt die wider Betrag der Funktionalität, die für den Benutzer relevant ist. Je mehr Anzahl an Funktionalität, desto mehr Komplex System ist.
Bevor mit der eigentlichen Schätzung des Aufgabenaufwands begonnen wird, werden die Funktionspunkte in drei Gruppen unterteilt Complex, Mittel Einfach wie folgt:
Aufgrund der Komplexität der Softwarefunktionen muss der Testmanager genügend Gewicht zu jedem Funktionspunkt. Zum Beispiel
Gruppe an | Gewichtung |
---|---|
Complex | 5 |
Medium | 3 |
Einfacher | 1 |
Nehmen wir zur Verdeutlichung eine einfache Beispielübung:
Schauen Sie sich die Softwarespezifikationen der Website Guru99 Bank an hier, der Softwareentwickler hat die Softwaremodule bereits ausführlich beschrieben, können Sie das bestimmen Komplexität der Website-Funktionen durch Angabe der Gewichtung für jedes Modul?
Je komplexer der Funktionspunkt, desto größer ist der Aufwand, ihn zu testen. Die Website ist unterteilt in 12 Funktion Punkte können Sie bestimmen Komplexität der einzelnen Funktionspunkte wie folgt:
Nein. | Modulname | Anwendbare Rollen | Beschreibung | Gewichtung |
---|---|---|---|---|
1. | Kontostandsabfrage | Geschäftsführer
Kunden |
Kunde: Ein Kunde kann mehrere Bankkonten haben. Er kann nur den Kontostand einsehen
Manager: Ein Manager kann den Saldo aller Kunden einsehen, die unter seiner Aufsicht stehen |
3 |
2. | Überweisung | Geschäftsführer
Kunden |
Kunde: Ein Kunde kann Geld von seinem „eigenen“ Konto auf ein beliebiges Zielkonto überweisen lassen.
Manager: Ein Manager kann Gelder von jedem Quellbankkonto auf das Zielkonto überweisen |
5 |
3. | Mini-Erklärung | Geschäftsführer
Kunden |
Ein Mini-Kontoauszug zeigt die letzten 5 Transaktionen eines Kontos an
Kunde: Ein Kunde kann nur die Miniauszüge seiner „eigenen“ Konten einsehen Manager: Ein Manager kann den Miniauszug jedes Kontos einsehen |
3 |
4. | Maßgeschneiderte Erklärung | Geschäftsführer
Kunden |
Mit einem benutzerdefinierten Kontoauszug können Sie Transaktionen in einem Konto nach Datum und Transaktionswert filtern und anzeigen
Kunde: Ein Kunde kann den individuellen Kontoauszug nur seiner „eigenen“ Konten einsehen Manager: Ein Manager kann den benutzerdefinierten Kontoauszug jedes Kontos einsehen |
5 |
5. | Passwort ändern | Geschäftsführer
Kunden |
Kunde: Ein Kunde kann nur das Passwort seines Kontos ändern.
Manager: Ein Manager kann nur das Passwort seines Kontos ändern. Er kann die Passwörter seiner Kunden nicht ändern |
1 |
6. | Neuer Kunde | Geschäftsführer | Manager: Ein Manager kann einen neuen Kunden hinzufügen.
Manager: Ein Manager kann Details wie Adresse, E-Mail und Telefonnummer eines Kunden bearbeiten. |
3 |
7. | Neuer Account | Geschäftsführer | Derzeit bietet das System zwei Arten von Konten
Ein Kunde kann mehrere Sparkonten haben (eines auf seinen Namen, das andere auf einen gemeinsamen Namen usw.). Er kann mehrere Girokonten für verschiedene Unternehmen haben, die ihm gehören. Oder er kann mehrere Giro- und Sparkonten haben. Manager: Ein Manager kann ein neues Konto für einen bestehenden Kunden hinzufügen. |
5 |
8. | Konto bearbeiten | Geschäftsführer | Manager: Ein Manager kann Kontodetails für ein bestehendes Konto hinzufügen und bearbeiten | 1 |
9. | Konto löschen | Geschäftsführer | Manager: Ein Manager kann ein Konto für einen Kunden hinzufügen oder löschen. | 1 |
10 | Kunde löschen | Geschäftsführer | Ein Kunde kann nur gelöscht werden, wenn er/sie kein aktives Giro- oder Sparkonto hat
Manager: Ein Manager kann einen Kunden löschen. |
1 |
11 | Deposit | Geschäftsführer | Manager: Ein Manager kann Geld auf jedes beliebige Konto einzahlen. Wird normalerweise durchgeführt, wenn Bargeld in einer Bankfiliale eingezahlt wird. | 3 |
12 | Widerruf | Geschäftsführer | Manager: Ein Manager kann Geld von jedem Konto abheben. Wird normalerweise durchgeführt, wenn Bargeld in einer Bankfiliale abgehoben wird. | 3 |
SCHRITT B) Schätzen Sie die Dauer der Aufgabe
Nach der Klassifizierung der Komplexität der Funktionspunkte müssen Sie schätzen Dauer um sie zu testen. Dauer bedeutet wie viel Es braucht Zeit, um die Aufgabe zu erledigen.
- Gesamtaufwand: Der Aufwand, alle Funktionen der Website vollständig zu testen
- Gesamtfunktionspunkte: Gesamtzahl der Module der Website
- Schätzung definiert nach Funktionspunkten: Der durchschnittliche Aufwand zur Vervollständigung eines Funktionspunktes. Dieser Wert hängt von der ab PRODUKTIVITÄT des Mitglieds, das diese Aufgabe übernimmt.
Angenommen, Ihr Projektteam hat geschätzte definierte Funktionspunkte von 5 Stunden/Punkte. Den Gesamtaufwand zum Testen aller Funktionen der Website Guru99 Bank können Sie wie folgt abschätzen:
Gewichtung | Anzahl der Funktionspunkte | Total | |
---|---|---|---|
Complex | 5 | 3 | 15 |
Medium | 3 | 5 | 15 |
Einfacher | 1 | 4 | 4 |
Funktion Gesamtpunktzahl | 34 | ||
Schätzung pro Punkt definieren | 5 | ||
Geschätzter Gesamtaufwand (Person Hours) | 170 |
Der Gesamtaufwand für die Aufgabe „Erstellen der Testspezifikation“ der Guru99 Bank beträgt also rund 170 Arbeitsstunden
Sobald Sie den erforderlichen Aufwand verstanden haben, können Sie Ressourcen zuweisen, um zu bestimmen, wie lange die Aufgabe dauern wird (Dauer), und dann können Sie die Arbeits- und Nebenkosten schätzen.
Das obige Beispiel zeigt auch die Bedeutung des Mitglieds in Ihrem Team. Wenn Sie haben talentiert und erfahrensten Mitglieder können Sie die zugewiesene Aufgabe im erledigen klein Zeit, und Ihr Projekt wird zum Stichtag oder früher abgeschlossen sein.
SCHRITT C) Schätzen Sie die Kosten für die Aufgaben
Dieser Schritt hilft Ihnen, die letzte Frage des Kunden zu beantworten:Wie viel kostet es?"
Angenommen, Ihr Team verdient durchschnittlich 5 USD pro Stunde. Der Zeitaufwand für die Aufgabe „Testspezifikationen erstellen“ beträgt 170 Stunden. Dementsprechend betragen die Kosten für die Aufgabe 5 x 170 = 850 USD. Jetzt können Sie das Budget für andere Aktivitäten in WBS berechnen und das Gesamtbudget für das Projekt ermitteln.
Als Projektmanager müssen Sie entscheiden, wie Sie das erhalten die meisten kehren zurück für die Investition Ihres Unternehmens. Je mehr genau Ihre Schätzung der Projektkosten beträgt leben Sie werden in der Lage sein, das Budget Ihres Projekts zu verwalten.
Methode 2) Dreipunktschätzung
Die Drei-Punkte-Schätzung ist eine der Techniken, die zur Schätzung einer Aufgabe verwendet werden können. Die Einfachheit der Drei-Punkte-Schätzung macht sie zu einem sehr nützlichen Werkzeug für einen Projektmanager, der eine Schätzung durchführen möchte.
Bei der Drei-Punkte-Schätzung gilt nach drei Werte werden zunächst für jede Aufgabe basierend auf erzeugt Vorerfahrungen or beste Vermutungen folgendermaßen
Beim Schätzen einer Aufgabe muss der Testmanager drei Werte bereitstellen, wie oben angegeben. Die drei identifizierten Werte schätzen, was in einem passiert optimaler Zustand, was ist der höchstwahrscheinlich, oder was wir denken, dass es das sein würde schlimmsten Fall Szenario.
Sehen wir uns an, wie die obigen drei Werte im folgenden Beispiel verwendet werden
Für die Aufgabe „Erstellen Sie die Testspezifikation„Können Sie den Testaufwand abschätzen? Denken Sie daran, dass Sie es müssen alles abdecken die Module der Guru99 Bank-Website wie in beschrieben Funktionspunktmethode
Sie können wie folgt schätzen
- Die bester Fall Diese Aufgabe zu erledigen ist 120 Arbeitsstunden (ca. 15 Tage). In diesem Fall haben Sie ein talentiertes Team, das die Aufgabe in kürzester Zeit erledigen kann.
- Die höchstwahrscheinlich Fall, um diese Aufgabe abzuschließen 170 Arbeitsstunden (ca. 21 Tage). Dies ist ein Normalfall, Sie haben genügend Ressourcen und Fähigkeiten, um die Aufgabe zu erledigen
- Die schlimmsten Fall Diese Aufgabe zu erledigen ist 200 Arbeitsstunden (ca. 25 Tage). Sie müssen viel mehr Arbeit leisten, da Ihre Teammitglieder nicht erfahren sind.
Weisen Sie nun jedem Parameter wie unten beschrieben den Wert zu
Der Aufwand zur Erledigung der Aufgabe kann mit berechnet werden Doppeldreiecksverteilung Formel wie folgt:
In der obigen Formel ist Parameter E bekannt als Gewichteter Durchschnitt. Es handelt sich um die Schätzung der Aufgabe „Testspezifikation erstellen“.
Aber Ihr Chef könnte Sie fragen
In der obigen Schätzung bestimmen Sie einfach a möglich und nicht ein sicher Wert, wir müssen über den wissen Wahrscheinlichkeit dass die Schätzung korrekt ist. Sie können die andere Formel verwenden:
In der obigen Formel bedeutet die SD die Standardabweichung. Dieser Wert könnte Ihnen Informationen über die geben Wahrscheinlichkeit dass die Schätzung korrekt ist.
Jetzt können Sie die Schätzung für die Aufgabe „Erstellen der Testspezifikation“ abschließen.
Um die Aufgabe „Erstellen der Testspezifikation“ auf der Website der Guru99 Bank abzuschließen, benötigen Sie 166.6 ± 13.33 Mannstunden (153.33 bis 179.99 Mannstunden)
Schritt 4) Validieren Sie die Schätzung
Sobald Sie eine Gesamtschätzung für alle im Projektstrukturplan genannten Aufgaben erstellt haben, müssen Sie diese an die weiterleiten Geschäftsführung, Wer wird Überprüfen und genehmigen es.
Das Vorstandsmitglied könnte aus dem CEO, dem Projektmanager und anderen Stakeholdern bestehen.
Der Vorstand prüft und bespricht mit Ihnen Ihren Kostenvoranschlag. Sie können ihnen Ihre Einschätzung erläutern logisch und vernünftig damit sie Ihren Kostenvoranschlag genehmigen können.
Best Practices für Testschätzungen
In diesem Thema werden allgemeine Tipps zum Schätzen der Testgenauigkeit vorgestellt.
Fügen Sie etwas Pufferzeit hinzu:
Bei Ihrem Projekt können viele unvorhersehbare Dinge passieren, z. B. dass ein talentiertes Teammitglied plötzlich seinen Job kündigt, die Tests länger dauern als geschätzt usw. Deshalb müssen Sie in Ihrer Schätzung einen Puffer einplanen. Ein Puffer in der Schätzung ermöglicht es, eventuell auftretende Verzögerungen zu bewältigen.
Kontoressourcenplanung im Kostenvoranschlag
Was sollten Sie tun, wenn einige Mitglieder Ihres Teams längere Zeit im Urlaub sind? Es könnte das Projekt verzögern. Die Ressourcenplanung in der Schätzung spielt eine Schlüsselrolle. Die Verfügbarkeit von Ressourcen trägt dazu bei, dass die Schätzungen realistisch sind. Hier müssen Sie die Urlaubstage Ihres Teammitglieds berücksichtigen, in der Regel lange Urlaubstage.
Nutzen Sie die Erfahrungen aus der Vergangenheit als Referenz
Bei der Erstellung der Zeitschätzungen fließen Erfahrungen aus vergangenen Projekten ein. Da einige Projekte möglicherweise Ähnlichkeiten aufweisen, können Sie die frühere Schätzung wiederverwenden. Wenn Sie beispielsweise ein Projekt wie das Testen einer Website durchführen, können Sie aus dieser Erfahrung lernen und versuchen, alle Schwierigkeiten oder Probleme zu vermeiden, mit denen Sie in früheren Projekten konfrontiert waren.
Bleiben Sie bei Ihrer Einschätzung
Schätzung ist nur Schätzung, denn es kann passieren Wrongs.In frühen Phasen des Projekts sollten Sie dies häufig tun Überprüfen Sie die Testschätzungen erneut und nehmen Sie Änderungen vor wenn benötigt. Wir sollten den Kostenvoranschlag nicht verlängern, nachdem wir das Problem behoben haben, es sei denn, es gibt wesentliche Änderungen in den Anforderungen oder Sie müssen mit dem Kunden über den Neuvoranschlag verhandeln
Vorlage für Softwaretest-Schätzung
Laden Sie das Software Test Estimation Excel (.xlsx) herunter.
Andere Techniken
Breitband-Delphi-Technik, Use-Case-Point-Methode, Prozentverteilung und Ad-hoc-Methode sind weitere Schätztechniken in der Softwareentwicklung.
Video zu Schätzungstechniken für Softwaretests
Klicke hier wenn das Video nicht zugänglich ist
Video Transcript
- Lass uns eine Übung machen – für die Flugreservierungsantrag Erstellen Sie einen Projektstrukturplan
- Verschiedene Testaufgaben wie „Anmeldefunktion prüfen“, „Neue Bestellfunktion prüfen“, „Fax-Funktionalität prüfen“ und andere ähnliche Funktionen sowie den Aufwand schätzen, der zum Testen dieser Funktionen erforderlich ist
- So kann beispielsweise die Anmeldefunktion in 2 Stunden getestet werden. Erstellen Sie ebenfalls eine Liste aller Aufgaben und des entsprechenden Aufwands. Unterbrechen Sie das Schulungstutorial und führen Sie die Übung durch. Ich hoffe, Sie haben den erforderlichen Aufwand gut eingeschätzt.
- Dies ist eine Bottom-Up-Strategie zur Testschätzung. Die Technik wird Bottom-Up genannt, da Sie anhand der Aufgaben, die sich auf der untersten Ebene der Projektstrukturhierarchie befinden, die Dauer, Abhängigkeiten und Ressourcen schätzen.
- Bei der Bottom-Up-Strategie werden Schätzungen nicht von einer einzelnen Person vorgenommen, sondern von allen Beteiligten, einzelnen Mitwirkenden, Experten und erfahrenen Mitarbeitern gemeinsam. Die Idee besteht darin, die kollaborative Weisheit der Teammitglieder zu nutzen, um zu genauen Testschätzungen zu gelangen
- Da Sie nun über beträchtliche Erfahrung mit dem Flugreservierungssystem verfügen. Nutzen Sie diese Erfahrung, um den Aufwand für die Vollständigkeit abzuschätzen Funktionsprüfung der Website. – http://newtours.demoaut.com/
- Die Funktionalität dieser Website ist mit der Flugreservierungsanwendung identisch, sie ist jedoch webbasiert. Unterbrechen Sie das Tutorial und führen Sie die Übung jetzt durch
- Ich hoffe, dass Sie aufgrund Ihrer Erfahrungen eine gute Einschätzung des Aufwands für den Test der Website getroffen haben
- Dies ist der Top-Down-Ansatz zur Schätzung, der auf Erfahrung basiert.
- Eine andere Technik besteht darin, Projekte anhand ihrer Größe und Komplexität zu klassifizieren und dann zu sehen, wie lange ein Projekt einer bestimmten Größe und Komplexität in der Vergangenheit gedauert hat.
- Ein anderer Ansatz ist die Bestimmung des durchschnittlichen Aufwands pro Jahr Testfall in der Vergangenheit für ähnliche Projekte analysieren und dann geschätzte Testfälle des aktuellen Projekts verwenden und so den Gesamtaufwand ermitteln
- Anspruchsvollere Schätzmodelle beinhalten komplexe mathematische Modelle. In der Praxis wird in den meisten Projekten ein Top-down-Ansatz zur Schätzung verwendet.
- Testschätzungen können durch viele Faktoren beeinflusst werden, wie z. B. Zeitdruck, Personenfaktoren, geografische Verteilung des Testteams usw