Evaluierung von Software-Qualität

Foto von David Travis auf Unsplash

Die Evaluierung von Software-Qualität für eingekaufte Software ist schwierig. Einige Indikatoren gibt es allerdings, die eine Beurteilung ermöglichen.

Die angelegte Qualitäts-Messlatte liegt um so höher, je geringer die Bereitschaft ist, den Risikofall zu tragen. Sind die Kosten eines möglichen Risikos hoch oder gibt es andere Gründe, die Wahrscheinlichkeit für ein unerwartetes Verhalten zu reduzieren, dann lohnt das Investment in eine höhere Qualität.

Das Interessante dabei: Nicht die Hersteller entscheiden, wie viel Qualität es sein darf. Ausschliesslich die Anwender, der Anwendungszweck und die Konsequenzen von unerwartetem Verhalten entscheiden, wie hoch die Qualitäts-Messlatte liegen muss.

Wir fassen Software-Qualität als Funktion von unerwartetem Verhalten auf.

Innerliche Aspekte von Software-Qualität

Die innere Software-Qualität, insbesondere die Code-Qualität, beeinflusst maßgeblich die Lebensdauer und Fehleranfälligkeit einer Anwendung.

Der Software-Lebenszyklus erstreckt sich über Jahre, während die meiste Zeit in Wartung und Weiterentwicklung investiert wird. Regressionsfehler, durch Code-Änderungen verursacht, bedrohen die Stabilität.

Automatisierte Tests sind entscheidend, um den exponentiell wachsenden Testaufwand zu bewältigen. Entkoppelung und Kapselung der Code-Komponenten sind essenziell, um die Wartbarkeit sicherzustellen. Refactoring, das „Putzen“ des Codes, ist wie die Pflege von Wohnungen, um technische Schulden zu vermeiden. Kontinuierliches Refactoring und automatisierte Tests sind Schlüssel für langfristige Softwarequalität. Technische Prinzipien wie das Single-Responsibility-Prinzip sind unerlässlich.

Äusserliche Aspekte der Software-Qualität

Je nach Stakeholder-Gruppe wird der Schwerpunkt von Software-Qualität auf andere Aspekte gelegt. Im Folgenden werden einige Äusserliche Aspekte der Software-Qualität betrachtet. Die Auflistung ist nicht vollständig, gibt jedoch schon einen guten Überblick.

Ein wichtiger Aspekt der Software-Qualität ist für viele Menschen der Funktionsumfang einer Software. Lange Zeit hat man darunter meist den maximal möglichen Funktionsumfang verstanden – dementsprechend waren auch die Auswahlverfahren durch Maximal-Listen geprägt.

Zwischenzeitlich hat sich mehr und mehr die Erkenntnis durchgesetzt, dass die “eierlegende Wollmilchsau” nie benötigt wird und ein unnötig hoher Funktionsumfang sich außerdem negativ auf weitere Aspekte der Software-Qualität (wie z.B. Usability, Performance und Wartbarkeit) auswirken kann.

Datenschutz
Wir, procelo GmbH (Firmensitz: Schweiz), würden gerne mit externen Diensten personenbezogene Daten verarbeiten. Dies ist für die Nutzung der Website nicht notwendig, ermöglicht uns aber eine noch engere Interaktion mit Ihnen. Falls gewünscht, treffen Sie bitte eine Auswahl:
Datenschutz
Wir, procelo GmbH (Firmensitz: Schweiz), würden gerne mit externen Diensten personenbezogene Daten verarbeiten. Dies ist für die Nutzung der Website nicht notwendig, ermöglicht uns aber eine noch engere Interaktion mit Ihnen. Falls gewünscht, treffen Sie bitte eine Auswahl: