Kontinuierliche Software-Qualitätsüberwachung

mehr Sicherheit und Vertrauen

Viele Software-Anwender kennen das Problem: Eine Funktion, die es schon lange im Softwaresystem gibt, funktioniert auf einmal nicht mehr." Gerade heute, wo ich doch die Software am dringendsten brauche funktioniert ein Teil der Basisfunktionalität nicht mehr." Solche Situationen treten meist am ungünstigsten Zeitpunkt auf. Wie kann man solche Situationen vermeiden? Welche Vorkehrungen kann man treffen, damit man auf eine kontinuierliche Softwarequalität über einen längeren Zeitraum vertrauen kann?

Ein Ansatz dies zu bewerkstelligen ist es, kritische Softwareteile kontinuierlich (z.B. 1x am Tag in der Nacht) mittels automatischen Prüfprogrammen auf ihre Funktionalität zu testen. Dabei können Unit-Tests, Schnittstellen-Tests, Tests über die grafische Benutzeroberfläche (=GUI Tests), Performance Tests oder sogar System Tests durchgeführt werden. Die automatisch ermittelten Prüfergebnisse werden analysiert und können im Falle einer Fehlfunktion an den zuständigen IT-Verantwortlichen weitergeleitet werden (z.B. per SMS/Email) damit Gegenmaßnahmen eingeleitet werden können. Überdies werden die automatisch ermittelten Prüfergebnisse übersichtlich im sequality Software Cockpit visualisiert und dienen so als objektiver Beleg für die dargebotene Software Qualität (oder deren Abwesenheit).

Die nachstehende Infografik zeigt den prinzipiellen Aufbau eines kontinuierlichen Qualitätssicherungssystems:

Aufbau einer kontinuierlichen Qualitätsüberwachung: Testergebnisse werden kontinuierlich im Software Cockpit visualisiert.

„…mit der Einführung der kontinuierlichen Überwachung haben wir uns schon viel Ärger erspart, weil wir sofort draufkommen, wenn irgendetwas nicht funktioniert und nicht erst zufällig nach ein paar Tagen bemerken, dass etwas schon ein paar Tage nicht funktioniert, oder noch schlimmer: falsch funktioniert…“

„…es ist einfach ein beruhigendes Gefühl, wenn man weiß, dass im Hintergrund immer alles auf Herz und Nieren geprüft wird. So gewinnen wir immer mehr Vertrauen in unser System“

„Verlässliche Funktionalität ist eine Investition in unsere Reputation. Außerdem können wir mit den objektiven Daten gegenüber unserem Software-Lieferanten belegen, wie zuverlässig die Software über einen längeren Zeitraum funktioniert und welche Fehler vermehrt auftreten.“

„Das Software Cockpit macht die Arbeit der Software Tester transparent und hilft uns die Projektarbeit besser zu steuern.“

Die Umsetzung der benötigten Infrastruktur kann innerhalb kurzer Zeit erfolgen und stellt somit sicher, dass der Return of Investment rasch erfolgen kann. Setzt man beim Testautomatisierungssystem auf Open-Source Werkzeuge (z.B. Selenium) lassen sich überdies Lizenzkosten sparen und rasche Umsetzungsergebnisse erzielen.

Dass das Konzept des von uns eingesetzten Sofware Cockpits von sehr guter Qualität ist bezeugt eine Auszeichnung von der DASMA (Deutschsprachige Anwendergruppe für Software Metriken und Aufwandsschätzung) sowie einigen eingeladenen Vorträgen auf österreichischem und deutschen Veranstaltungen.