Teil1: Qualitätsmanagement – Ein Begriff der häufig durch Marketingfloskeln aufgeladen ist und dessen Wichtigkeit oft verkannt oder nicht richtig ernstgenommen wird. Dabei hat modernes Qualitätsmanagement viele Facetten, die allesamt die Projektentwicklung bereichern können und in nur einem Beitrag zu kurz kämen.
Im ersten Teil unserer Themenreihe dazu, wollen wir uns daher zunächst dem Umgang mit Bugs widmen.
Bugs sind längst kein Tabuthema mehr
Jeder Entwickler, Onlineshopper oder gar Gamer kennt es: Bugs. Kleine oder große Fehler, die sich in einer Software eingeschlichen haben und so zu unterschiedlich großen Beeinträchtigungen führen können. Die entstehenden Auswirkungen am Beispiel einer E-Commerce-Plattform sind zunächst einmal klar. Neben dem eventuellen finanziellen Verlust erleiden Shopbetreiber und im E-Commerce tätige Unternehmen einen Vertrauens- und Reputationsverlust, wenn der Onlineshop nicht ordnungsgemäß funktioniert oder die Bedienung hakelig ist. Noch kritischer gestaltet sich das für Unternehmen, die gerade erst dabei sind, im E-Commerce Fuß zu fassen. Mit einem fehlerhaften Webshop lässt sich keine Marke und schon gar kein Erfolg aufbauen. Kunden, die wegen eines Bugs ins Hadern mit einer Marke geraten, stellen sich sicher häufig die Frage: „Gibt’s dort kein Qualitätsmanagement?“.
Speziell in Zeiten in denen die Digitalisierung der Schalthebel für Erfolg und Misserfolg eines Unternehmens ist, gilt es, ein besonderes Augenmerk auf die Qualitätssicherung zu legen. Klar, in der Regel sollte jedes Unternehmen – allen voran E-Commerce-Dienstleister – über dedizierte QM-Prozesse verfügen. Diese sind aber meist nicht so ausgeprägt, wie sie sein sollten. Denn Fakt ist: Ein modernes Qualitätsmanagement kann die Projektentwicklung bereichern. Eine der vielen Aufgaben ist es dabei unter anderem, die generelle Angst vor Bugs zu nehmen – und zwar sowohl auf der Entwickler- als auch der Kundenseite.
[otw_shortcode_info_box border_type=“bordered“ border_color_class=“otw-black-border“ border_style=“bordered“ rounded_corners=“rounded-10″ background_color_class=“otw-silver“]
Was ist ein Bug?
Bug ist der englische Begriff für Käfer oder Ungeziefer. Wie dieses Wort allerdings zum Begriff für einen System- oder Softwarefehler wurde, ist umstritten. Die gängigste Erklärung ist, als in den 40er Jahren eine Motte in einen der ersten Computer krabbelte und so für den Ausfall eines der Relais sorgte. Andere, nicht so gängige Begriffe sind unter anderem Defect, Finding oder Fehlfunktion.
In der Softwareentwicklung bezeichnet ein Bug ein Fehlverhalten (visuell oder funktional). Eine bestimmte Spezifikation wurde nicht oder falsch umgesetzt, oder die Laufzeitumgebung arbeitet anders als erwartet.
Auch Fälle wie Mehrdeutigkeit, Ungenauigkeit oder Unvollständigkeit können ein Bug sein.
[/otw_shortcode_info_box]
Bugs können sowohl unter- als auch überschätzt werden
Um die Rolle des Qualitätsmanagements in diesem Themenfeld genauer einordnen zu können, ist es wichtig, den Begriff „Bugs“ zu clustern. Es gibt verschiedene Gründe dafür, dass Bugs auftreten. Der Ursprung liegt unter anderem bei der Entwicklung, dem Design oder den Anforderungen. Dabei macht die Entwicklung einen sehr kleinen Teil aus – was sicher im Gegensatz zu der Einschätzung vieler steht. Tatsächlich entsteht über die Hälfte der Fehler durch die Anforderungen, gefolgt von der Umsetzung des Designs.
Ebenso verschieden wie die Gründe, ist auch die Kritikalität der Bugs: Es gibt kleine, die den meisten Nutzern unter Umständen gar nicht auffallen und dann gibt es solche, die sogar geschäftsschädigend sein können.
Dazu ein Beispiel:
Fehler | Auswirkung |
Button an einer falschen Position | Kosmetisch / unschön |
Kontaktformular funktioniert nicht | Blockiert den Funktionsablauf |
Checkout funktioniert nicht | Blockiert den Geschäftsablauf |
An diesem Beispiel ist sehr gut zu erkennen, dass Art und Schwere von Bugs häufig ein Gradmesser dafür sein können, ob Kunden auf einem Onlineshop verweilen und sogar einen Kauf tätigen oder sofort zur Konkurrenz wechseln – ganz abgesehen davon, dass einem potentiellen Käufer gar nichts anderes übrig bleibt als abzuspringen, wenn zum Beispiel etwas Essentielles wie der Checkout nicht funktioniert.
Außerdem ist hier noch wichtig zu erwähnen, dass der gleiche Bug je nach Umfeld eine andere Kritikalität haben kann. Will heißen: Auf einem Onlineshop, der eher als Warenkatalog dient und der Checkout eine eher untergeordnete Rolle spielt, ist ein Bug beim Bestellvorgang nicht so schwerwiegend wie bei einer rein auf Umsatz priorisierten E-Commerce-Plattform.
Und die Kritikalität ist der springende Punkt, durch den sich die wesentliche Grundfunktion des Qualitätsmanagements herauskristallisiert: Eine ständige Abwägung zwischen Kritikalität, Priorität und Umfeld. Dieser Prozess ist ein wesentlicher Faktor, um eine Antwort auf die Frage zu geben „Was kostet ein Bug?“. Je später ein Bug in der Projektentwicklung gefunden wird, desto teurer kann es werden, weil mehrere Personen beteiligt sein können.
Natürlich ist hier auch die Frage wichtig, in welchem Bereich die Ursache des Bugs liegt. Wird zum Beispiel erst in der Entwicklung ein Fehler im Design gefunden, muss zunächst noch einmal ein Designer ran, bevor die Entwickler ihre Arbeit fortsetzen können. Bei besonders kritischen Fällen kann dies sogar dazu führen, dass die gesamte Prozesskette von vorne beginnen muss, beispielsweise wenn der Fehler erst nach der Umsetzung gefunden wird. In diesem Fall würden die Behebungskosten noch einmal deutlich ansteigen. Dieses Beispiel macht klar, wie wichtig es ist, einen Bug möglichst früh zu finden.
Vorteile von Qualitätsmanagement im Projekt
Welche Vorzüge es hat, einen offenen und strukturierten Umgang mit Bugs zu pflegen, ist offensichtlich – schließlich können dadurch größere Unfälle wie zum Beispiel Gewinnverluste eingedämmt werden.
Doch es wäre falsch, zum einen das Thema Qualitätsmanagement nur auf Bugs zu reduzieren und zum anderen den Nutzen nur durch die unmittelbaren Auswirkungen auf die E-Commerce-Plattform zu bemessen. Auf ein dediziertes QM in der Projektentwicklung zu setzen, hat ebenfalls auch direkte, positive Einflüsse auf das Projekt an sich:
- Zeitersparnis: Dank der Spezialisierung und der angesprochenen Einplanung in die Projekte wird das QM für die Aufgaben weniger Zeit benötigen.
- Treffsicherheit: Modernes QM kann durch die verschiedenen Sichtweißen (beispielsweise einnehmen der Kundensicht) eher auf Fehler im Projekt stoßen.
- Mehr Überblick: Einzelne Entwickler haben oft nicht den Blick für das ganze Projekt, ein Qualitätsmanager kann diese Schnittstelle füllen und so eine exaktere Fehlerbestimmung bewerkstelligen. Außerdem kann die Projektentwicklung so von mehr Weitsicht profitieren, da die Erfahrung des Qualitätsmanagers im Regelfall einige Fehler vorbeugen kann.
- Größerer Fokus: Der QM-Mitarbeiter kann durch seinen Überblick über das Projekt auch bei der Kundenkommunikation behilflich sein. Das gilt ebenfalls für die Einarbeitung neuer Mitarbeiter ins Projekt oder die Dokumentation.
- Reduzierter Testaufwand: Durch Gruppierung und Skalierung von Testaufwänden kommt es zu deutlich weniger Tests. Das ist zum Beispiel sinnvoll, wenn mehrere Entwickler an einem Feature arbeiten.
Damit wird deutlich, dass ein Qualitätsmanager möglichst von Anfang an mit in das Projekt eingebunden werden sollte, im besten Fall schon beim Anforderungsmanagement und den Workshops vor Projektstart.
Bugs finden, zu einem Ursprung zuordnen und diese dann je nach Schwere zu priorisieren. Modernes Qualitätsmanagement nimmt die Angst vor Bugs und zeigt allen Beteiligten, wie mit Fehlern umgegangen werden sollte. Fehler sind nichts Schlimmes und gehören zu jeder agilen Projektentwicklung dazu. Wichtig ist es, eine positive und gesunde Fehlerkultur zu etablieren, die die Projektentwicklung bereichert.
Teil 1 – Modernes Qualitätsmanagement: Keine Angst vor Bugs
Teil 2 – Modernes Qualitätsmanagement: Testing nicht unterschätzen
Teil 3 – Modernes Qualitätsmanagement: Methoden und Werkzeuge
Bild: iStock