Es wird geschätzt, dass Software-Entwickler 100 bis 150 Fehler für jede tausend Codezeilen machen.4 Laut einem Bericht des Consortium for IT Software Quality (CISQ) „ist selbst ein kleiner Teil dieser Fehler – sagen wir 10 Prozent – schwerwiegend, doch eine relativ kleine Anwendung von 20.000 Codezeilen weist etwa 200 schwerwiegende Codierungsfehler auf.“ 5
Softwaretests sind für die Isolierung und Eindämmung von Fehlern von entscheidender Bedeutung. Ein guter QA-Prozess kann Hunderte oder sogar Tausende von Defekten aufdecken und die Testteams müssen sie alle bewältigen. Durch die Integration der Fehlerverfolgung in den Test-Workflow wird die Effizienz verbessert, indem den Testern geholfen wird, den Status jedes Fehlers zu priorisieren, zu überwachen und darüber zu berichten.
„Die Fehlerverfolgung trägt dazu bei, dass im System gefundene Fehler auch tatsächlich behoben werden“, sagt Agile Consultant Yvette Francino. „Tracking-Tools bieten nicht nur eine Möglichkeit, die Nachverfolgung sicherzustellen, sondern liefern auch wertvolle Metriken. Je nach verwendetem Tool kann das Team Fehler mit geändertem Code, Tests oder anderen Daten verknüpfen, was eine Rückverfolgbarkeit oder Analyse von Fehlertrends ermöglicht. Wenn ein bestimmtes Modul voller Fehler ist, ist es vielleicht an der Zeit, dieses Modul zu überprüfen und neu zu schreiben.“ 6
Im Idealfall sollten die Tests so schnell wie möglich durchgeführt werden – wenn Fehler einfacher und weitaus kostengünstiger zu beheben sind. Eine frühere Studie von IBM ergab, dass die Behebung von Fehlern, die nach der Produktion oder nach der Veröffentlichung festgestellt werden, 15-mal teurer sein kann als Fehler, die zu Beginn der Entwicklung behoben werden.
Viele Teams nutzen jetzt eine Methodik, die als kontinuierliche Tests bezeichnet wird. In diesem Fall werden Qualitätstests und Feedback in allen Entwicklungsphasen durchgeführt, vom Entwurf und der Codierung bis zur Bereitstellung. Auch moderne Technologien wie künstliche Intelligenz (KI) können den Testprozess unterstützen, indem sie Fehler frühzeitig im Lebenszyklus erkennen und analysieren.