Im digitalen Zeitalter scheinen oft nur diese beiden binären Zustände zu existieren. Die eigenständige oder werksseitige Programmierung von Alltagsgegenständen wird mittlerweile als normal empfunden. Entweder es funktioniert alles auf Anhieb oder es scheitert wegen zu vieler Bugs. Grauzonen werden durch polarisierende Aussagen der Werbe-Medien oft merklich aufgehellt oder abgedunkelt, je nach Ausrichtung und Intention des jeweiligen Mediums.

Durch Social Media und der damit verbundenen Möglichkeit, eine eigene Stellung zu beziehen und Produktbewertungen abzugeben, wird dieser Effekt themenübergreifend noch deutlicher spürbar und ist dennoch offensichtlich von der heutigen Gesellschaft als selbstverständlich akzeptiert. Überspitzt wird diese Wahrnehmung durch Sarkasmus, Selbstironie und einer Portion Galgenhumor heruntergespielt.

Man nimmt es hin, dass Fehler passieren, dass Produkte zunächst erst einmal ein Update benötigen, um funktionsfähig zu sein. „Shit happens!“, es ist wie es ist. „It’s not a bug – it’s a feature!“ heißt es oft mit einem aufgesetzten Lächeln, wenn beispielsweise Softwarelösungen oder programmgestützte Geräte ein Fehlverhalten an den Tag legen.

Woher kommt eigentlich der Begriff „Bug“?

Als „Bug“ wird im Allgemeinen ein Software- bzw. Programmfehler bezeichnet. Historisch gesehen existiert diese Benennung schon recht lange – immerhin seit dem 19. Jahrhundert. Man beschrieb damit kleine Fehler in mechanischen oder elektrischen Teilen. So wurde beispielsweise erklärt, dass das Rauschen in der Telefonleitung vom Knabbern kleiner Käfer an der Leitung herrühre. Auch Edison, der Erfinder der Glühbirne, nutzte dieses Vokabular, um Fehler zu beschreiben, die seine Erfindungen in den Anfangsstadien noch aufwiesen.

1947 schließlich wurde der erste „Bug“ dokumentiert. Eine Motte wurde in einem Relais des Mark II Aiken Relay Calculator gefunden und entfernt, um die Funktionalität wieder herzustellen. Von der Computerpionierin Grace Hopper wurde diese schließlich ins Logbuch geklebt, um diesen Moment zu dokumentieren.

Mittlerweile sind Rechnersysteme nicht mehr auf Relaisschaltungen aufgebaut, den Effekt eines Software-Fehlverhaltens nennt man jedoch auch heute noch so wie früher.

Zahlreiche Verfahren im Sinne ausgeklügelter Qualitätsmanagement-Systeme sind heute bei der Programmierung an der Tagesordnung. Auch hier ist die Betitelung einiger Werkzeuge an den dokumentierten Vorfall angelehnt.

Debugger und Bugtracker

Mit Hilfe von Debuggern werden die fehlerhaften Codestellen noch während der Programmierung durch strategische Platzierung von Haltepunkten „aufgespürt“. Alle wichtigen Werte und Eckdaten des Programmcodes können während der Laufzeit an diesen Punkten geprüft werden. Die Fehlersuche kann dadurch teilweise enorm eingeschränkt werden.

Bugtracker werden eingesetzt, um auftretende Fehler zu dokumentieren und die Kommunikation zwischen Anwender und Entwickler hinsichtlich der Fehlerbeschreibung zu optimieren. Die Eingrenzung des Fehlers steht neben der Dokumentation und Priorisierung der Fehler im Vordergrund. Bekannte Open Source Lösungen sind beispielsweise Bugzilla oder Mantis.

Qualitätsmanagement als feste Projektphase

Oft ist der Druck durch fixe Launch- und Releasedates sehr hoch. Damit sind leider auch viele (Software-)Produkte zum Datum Ihrer Fertigstellung noch relativ fehleranfällig.

„Gut Ding will Weile haben!“ – eine Weisheit, die schon früher den Umstand beschrieben hat, dass man einen Puffer für Nachbesserungen noch vor der Veröffentlichung einplanen muss. Eine BETA-Phase unter Einbeziehung erster, ausgewählter Produktiv-Umgebungen bietet oft die Möglichkeit, über Fehlerkorrekturen ein zufriedenstellendes Ergebnis zu erzielen. Ein schlüssiger Bugreport ist die Grundlage jeder Optimierungsmaßnahme. Der anschließende Support und die nachgelagerte Optimierung dürfen natürlich ebenfalls bei keinem Softwareprojekt fehlen. Qualitätsmanagement (QM) bildet einen wichtigen Projektanteil.

Welche Methoden und Werkzeuge zur Sicherstellung eines ausreichenden Qualitätslevels setzen Sie ein? Welchen Stellenwert räumen Sie der Qualitätssicherung ein?

Thomas von Mengden
Letzte Artikel von Thomas von Mengden (Alle anzeigen)

Große Auswahl an günstigen Domain-Endungen – schon ab 0,08 € /Monat
Jetzt Domain-Check starten