3-Schritte Leitfaden zur Identifikation von Software Bugs - Welche müssen wirklich behoben werden?
Einleitung
Fehlerbehebungen in Software, engl. bug fixing, sind ein wesentlicher Bestandteil des Qualitätssicherungsprozesses und machen einen wesentlichen Unterschied in der kontinuierlichen Integration des Produktes beim Kunden aus. Als IT-Verantwortlicher denken Sie vielleicht, der Code Ihres Teams ist tadellos, perfekt, und korrekt. Aber wissenschaftliche Studien als auch Erfahrungen haben zeigen, Fehler schleichen sich ein. Stressig kann es dann werden, wenn die Fehler kurz vor der Veröffentlichung auftauchen. Wenn eine harte Frist eingehalten werden soll, muß in der Regel eine kritische Entscheidung getroffen werden:
Welche Fehler beheben Sie sofort und mit welchen Fehlern leben Sie?
Dieser 3-Schritte Leitfaden zeigt IT-Verantwortlichen, wie solche Entscheidungen zu treffen sind.
1. Unternehmensziele definieren
Nicht alle Unternehmen haben dieselben Ziele und damit IT-Strategien, wie mit Fehlern in der Software umzugehen ist. Zum Beispiel konzentrieren sich E-Commerce-Unternehmen auf Conversion-Raten, Medienunternehmen sorgen sich um Bounce-Raten, Mobile App-Unternehmen legen Wert auf ihre App-Bewertungen, und Fintech-Unternehmen stellen Informationssicherheit über alles. Softwarebugs, die Sie priorisieren und beheben möchten, hängen vollständig von Ihren Unternehmenszielen ab. Nehmen Sie sich also zuerst Zeit, diese zu definieren, bevor Sie mit dem nächsten Schritt fortfahren.
2. Erstellen Sie einen Schweregradbewertungsprozess
Nun ist es an der Zeit, den Fehlern basierend auf Ihren Geschäftszielen einen Schweregrad zuzuweisen. Der Schweregrad ist die Auswirkung eines Fehlers auf das Software-Programm. Häufig wird der Grad in Kategorien wie niedrig, hoch und kritisch eingeteilt. Agile Software-Umgebungen wie Jira, Pivotal und viele andere machen es Ihnen leicht, diese Kategorien nach Ihren Wünschen zu kennzeichnen. Während die Kriterien, wann ein Fehler in den einzelnen Kategorien zugeordnet wird von IT-Unternehmen zu IT-Unternehmen einzigartig ist, haben wir hier einige allgemeine Richtlinien zusammengefasst, die Ihnen einen Überblick verschaffen.
NIEDRIG
Minimale Auswirkungen auf die Verwendung des Produkts.
Das Produkt zeigt unbeabsichtigtes Verhalten, die allgemeine Verwendung ist jedoch nicht betroffen.
Nur wenige Benutzer, Produkte oder Artikel sind betroffen.
Ein Feature / eine Funktion ist defekt oder nicht verfügbar, aber eine einfache Problemumgehung löst das Problem.
HOCH
Schwerwiegende Auswirkungen auf die Verwendung des Produkts, aber die Hauptfunktionalität ist intakt.
Eine große Anzahl von Benutzern, Produkten oder Artikeln ist betroffen.
Nicht triviale Funktionen sind fehlerhaft oder nicht verfügbar, und es gibt keine Problemumgehung.
Wesentliche Funktionen sind fehlerhaft oder nicht verfügbar, es gibt jedoch eine Problemumgehung (daher kein Showstopper).
KRITISCH
Der Fehler verhindert die Kernfunktionalität der Anwendung, Website oder Mobilen App.
Ein Showstopper verhindert, dass der Benutzer mit dem Hauptprozess fortfährt, z. der Checkout-Prozess.
Der Fehler verursacht einen potenziellen und bemerkenswerten Umsatzverlust für das Unternehmen, das die App oder Website ausführt.
Für den weiteren Kontext kann es hilfreich sein, Ihren Testern spezifische Beispiele für Fehler und die Schweregrade mitzugeben, die Sie ihnen in einem "Fehlerbewertungsblatt" zuweisen. Bitte beachten Sie jedoch, dass dies allgemeine Richtlinien sind. So etwas wie ein inhaltlicher / visueller Fehler, bei dem ein Bild nicht geladen wird, kann für einen E-Commerce-Shop von entscheidender Bedeutung sein (Hypothese: Käufer kaufen nicht, was sie nicht sehen können), während sie sich auf einer Fintech-Website befinden.
3. Priorisieren Sie Fehler anhand des Schweregrads
Es wird nun Zeit zu priorisieren, welche Fehler behoben werden müssen, damit das Programm für die Veröffentlichung gut genug ist und den Kundenanforderungen genügt. Sie haben die Dinge ermittelt, die Ihrem Unternehmen am wichtigsten sind, und Sie haben anhand des von Ihnen zugewiesenen Schweregrads deutlich gemacht, welche Fehler diese Ziele beeinflussen. Genauso wie nicht alle Fehler gleich erstellt werden, werden auch nicht alle kritischen Fehler gleich erstellt.
Konzentrieren wir uns auf das E-Commerce-Beispiel.
Stellen Sie sich vor, Ihr Team hat einen Fehler gefunden, bei dem gültige Kreditkartennummern als ungültig markiert und nicht verarbeitet werden. Dies behindert den Umsatz und wird als kritisch eingestuft. Ein anderer Tester hat einen Fehler gefunden, bei dem Artikel einer bestimmten Produktlinie nicht zum Warenkorb hinzugefügt werden können. Gemäß Ihrem Fehlerbewertungsprozess wurde dies auch als kritisch gekennzeichnet. Beide Fehler verhindern das Auftreten von Transaktionen. Welchen beheben Sie also zuerst? Da der erste Fehler jeden Artikel im Geschäft betrifft, während der zweite nur einen Teil des Geschäfts betrifft, sollte dem ersten eine höhere Priorität zugewiesen und zuerst behoben werden.
Wie kann ich einen guten Bug-Fixing Prozess implementieren
Obwohl das Bedürfnis aufkommen mag, Sie müssen jeden gefundenen Fehler gleichrangig beheben, sorgen erfahrene Teams dafür, dass zuerst die wichtigen Bugs priorisiert werden. Wenn Sie also das nächste Mal in einer solchen Situation sind, versetzen Sie sich in die Lage Ihrer Kunden und überlegen Sie, welcher Software-Bug die größten Auswirkungen auf den Kunden zum Beispiel in Hinblick auf das Geschäftsmodell hat. Sobald Sie diesen Prozess standardisiert haben, sind Sie auf dem besten Weg, qualitativ hochwertigere Software schneller zu versenden.
Wir vom Team ditCraft haben uns auf das QA-Management und Testing von Software spezialisiert. Unsere Experten sind darauf trainiert die Geschäftsprozesse des Kunden zu analysieren und eine optimale Strategie zu implementieren, die richtigen Fehler zu beheben.
Wenn auch Sie von unseren langjährigen Erfahrungen profitieren wollen, nehmen Sie Kontakt mit uns auf.