Gute Qualitätssicherung startet so zeitig wie möglich – und erstreckt sich über den gesamten Softwarelebenszyklus. Doch häufig ist das leichter gesagt als getan. Vor allem hybride Vorgehen, zunehmend auch in Verbindung mit cloudbasierter Architektur können ganz eigene Herausforderungen bereithalten.
Wir unterstützen Sie, hier nicht den Überblick zu verlieren und auch unter sich ändernden Umständen weiterhin die bestmögliche Qualität(-ssicherung) zu erreichen!
Die Beseitigung von Mängeln während des Produktivbetriebes ist kostspielig. Daher sollte bereits zu Beginn der Anforderungsaufnahme die Qualitätssicherung gestartet und die Tester eingebunden werden.
Schlechte Qualität von Spezifikationen ist oft ein Grund für das Fehlschlagen eines Projektes beziehungsweise Produktes. Intensive Absprachen zwischen den Hauptbeteiligten - Business/Product Owner, Fachbereich, Anwender, Entwickler und Tester - spielen dabei eine sehr große Rolle.
Durch die gemeinsame Erarbeitung und Klärung der Anforderungen von Beginn an kann so die gemeinsame Vision vermittelt werden, was geliefert wird. Ebenso lassen sich Verständnislücken schließen. Start smart, start early!
Durch bestimmte Mechanismen kann frühzeitig eine hohe Qualität erreicht werden:
Bereits während der Entwicklung können bestimmte Funktionstests (Unittests) nach der Fertigstellung des Codes kontinuierlich überprüft werden. Dies kann aber nie ein vollumfänglicher Test sein, sondern deckt nur bestimmte Testfälle ab. Durch anschließende fachliche oder kundenspezifische Tests lassen sich business-relevante Szenarien überprüfen.
Die Testautomatisierung bietet hier für die Regressionstests ein ideales Werkzeug.
Nach der erfolgreichen Entwicklung erfolgt der Abnahmetest durch den Fachbereich oder Kunden. Dies kann aus verschiedenen Blickwinkeln erfolgen. Dabei sollten nicht nur fachliche Aspekte einbezogen, sondern auch betriebs- sowie sicherheitsrelevante Themen betrachtet werden.
Nur durch kontinuierliche Tests (Regressionstests) nach jeder Änderung und jedem Deployment lässt sich eine hohe Softwarequalität erreichen. Für den Betrieb einer Anwendung sind regelmäßiges Reporting und Monitoring ausschlaggebend.
Durch das Monitoring der verschiedenen Komponenten lassen sich Systemausfälle oder Grenzwertüberschreitungen überwachen und ein schnelles Handeln kann erfolgen. Das Sammeln und Auswerten von Leistungsdaten hilft ebenso zur kontinuierlichen Systemoptimierung. Durch das Reporting lässt sich Transparenz schaffen, um die richtigen Entscheidungen zu treffen.
Fehlerverhütung vs. Fehlerkosten
In der jüngeren Vergangenheit scheint sich im Themenbereich Qualitätssicherung einiges zu bewegen – man denke nur an Begrifflichkeiten wie „Shift-Left“. Ganz so neu sind viele dieser Themen am Ende aber doch nicht. Nebenstehendes Bild verdeutlicht diesen Sachverhalt. Bereits seit den 70er Jahren ist bekannt, dass Fehlerkosten umso höher sind, je später sie im Entwicklungszyklus gefunden werden.
Daher gab und gibt es Bestrebungen, die Qualität der Anforderungen zu erhöhen und eventuelle Abweichungen direkt im Review der Anforderungen sichtbar zu machen. Damit können Fehler frühzeitig identifiziert werden und sind somit "günstiger" in der Behebung.
Andere Branchen machen vor, wie Qualitätssicherung (sowohl konstruktiv als auch analytisch) von Anfang an eingebunden werden kann. Beispielhaft sei nachfolgend der Vergleich zum Automotive Sektor aufgezeigt:
Im Automobilbereich wird in der Fertigung von Anfang an durch Materialprüfung, Simulationstests, Stresstests bis hin zur Endmontage die Qualitätssicherung betrieben. Erst nach zahlreichen bestanden Tests rollt das Neufahrzeug vom Band. Dieser hohe Qualitätsstandard sollte auch in allen Softwareprodukten Einzug erhalten. Schließlich soll das Vertrauen beim Kunden auch dort oberste Priorität haben. Denn auch in der Automobilbranche erhält, zum Beispiel durch den Einzug der Steuergeräte, der elektronische Funktionstest mittels Maschinendaten-Analysen immer mehr an Bedeutung.
In Webinaren und weiteren Formaten stellen wir Ihnen unser Expertenwissen zur Verfügung.
Gern stehen wir Ihnen mit Know-how, konkreten Unterstützungsleistungen und zugehörigen Lizenz- und Supportangeboten zur Verfügung.