Der Lebenszyklus eines Bugs ist der Prozess, den jeder gefundene Defekt durchläuft: von seiner Entdeckung bis zur Schließung. Im IT-Bereich hat sich der Lebenszyklus eines Bugs formalisiert, um die Bearbeitung von Defekten zu beschleunigen, Risiken zu minimieren und Transparenz in den Arbeitsabläufen zu schaffen.
Geschichte der Frage:
Frühe Bug-Tracking-Systeme erlaubten nur die Protokollierung von Fehlern. Mit der zunehmenden Komplexität von Software entstand der Bedarf an strukturiertem Tracking des Status von Bugs und der Beschreibung aller Phasen ihrer Bearbeitung.
Problem:
Ohne formale Phasen können Defekte verloren gehen, "hängen bleiben" oder als nicht geschlossen gelten, selbst wenn sie behoben wurden. Auch kommt es häufig zu Missverständnissen zwischen QA und Entwicklern aufgrund fehlender Transparenz darüber, wer was tun sollte.
Lösung:
Die Standardisierung von Phasen (z.B.: Neu, Offen, Zuweisen, In Arbeit, Behoben, Retest, Geschlossen, Wiedereröffnet) und die Beschreibung der Aktionen in jeder Phase helfen, den Prozess der Defektbearbeitung zu ordnen und transparent zu gestalten.
Wesentliche Merkmale:
Kann ein Bug geschlossen werden, wenn er beim Tester reproduziert wurde, aber nicht beim Programmierer?
Nein, der Bug muss von beiden Seiten genehmigt und gemäß den im Bug-Report verfassten Schritten reproduziert werden.
Was tun, wenn die Antwort auf einen Bug 'Won't Fix' lautet?
Der QA sollte den Grund für die Ablehnung klären. Wenn der Grund begründet ist (geringe Kritikalität, entspricht den Anforderungen), kann der Bug mit einem Kommentar geschlossen werden.
Muss QA einen Bug neu erstellen, wenn das Problem nach seiner Schließung erneut auftritt?
Nein, der Bug sollte in den Status „Wiedereröffnet“ versetzt werden, und es sollten neue Details zur Reproduktion hinzugefügt werden.
Im Unternehmen wurde nur die grundlegende Funktionalität des Bug-Logs verwendet. Nach der Behebung des Defekts markierte der Entwickler ihn als gelöst, der Tester führte keinen Retest durch, Bugs kamen im Release zurück.
Vorteile:
Nachteile:
Das Team nahm den standardisierten Lebenszyklus eines Bugs mit obligatorischem Retest und Beschreibung der Schließungsgründe vor dem Release an.
Vorteile:
Nachteile: