Softwarequalitätsmerkmale
R 2.0.0
Beschreibung
Im Leitfaden „Systems and Software Quality Requirements and Evaluation (SQuaRE)“, der in dem Standard ISO 25010 verankert ist, sind relevante Qualitätskriterien für Softwareprodukte erläutert. Anhand dieser Merkmale lässt sich die Softwarequalität bewerten und verdeutlichen, dass diese Qualität vielfältiger ist als die reine Abwesenheit von Fehlern.
Funktionale Eignung
Das Qualitätsmerkmal der funktionalen Eignung ist grundsätzlich von hoher Relevanz für Softwareprojekte. Es soll sicherstellen, dass die spezifizierten Anforderungen vollständig und korrekt umgesetzt wurden. Zu prüfen ist, ob der beabsichtigte Nutzen für die Anwendenden erfüllt wird und ob der Einsatz der Software die Erreichung bestimmter Aufgaben und Ziele erleichtert. Die funktionale Eignung der Software soll auch nach Änderungen an bestehenden Anwendungen sichergestellt sein. Zu diesem Zweck werden Regressionstests durchgeführt, die sicherstellen sollen, dass die bestehenden Funktionen nach Modifikationen der Software weiterhin korrekt und zuverlässig ausgeführt werden.
(Leistungs-)Effizienz
Das Merkmal (Leistungs-)Effizienz bezieht sich darauf, wie gut die Software mit den verfügbaren Ressourcen umgeht. Dazu zählen u.a. Rechenleistung, Speicher- und Netzwerknutzung, die z.B. in angemessenem Antwortzeitverhalten resultieren sollen. Der schonende und nachhaltige Umgang mit den Kapazitäten zählt ebenfalls zu den Zielen des Merkmals (Leistungs-)Effizienz. Im Falle von technischen Änderungen (z.B. Betriebssystemanpassung, Änderungen an der Datenbank) wird das Thema (Leistungs-)Effizienz berührt und muss demzufolge geprüft werden.
Kompatibilität
Die Kompatibilität zielt als Qualitätsmerkmal darauf ab, sicherzustellen, dass die Anwendung in verschiedenen Umgebungen mit unterschiedlicher Hardware, Betriebssystemen oder auch im Zusammenspiel mit anderen Anwendungen reibungslos funktioniert. Geprüft wird außerdem die Fähigkeit der Software, ohne Konflikte auf unterschiedlich konfigurierten Plattformen, Browsern oder mobilen Geräten mit anderen Komponenten zusammenzuwirken.
Zuverlässigkeit
Der stabile und fehlerfreie Betrieb von Software über einen längeren Zeitraum soll mit dem Qualitätsmerkmal Zuverlässigkeit überprüft werden. Vertrauen in die Funktionstüchtigkeit der Software entsteht durch eine verlässlich verfügbare Anwendung. Risiken von Ausfällen oder unerwartetem Fehlverhalten werden durch eine gewisse Reife der Software reduziert.
Benutzbarkeit
Endnutzer der Software sollen in der Lage sein, Anwendungen effektiv und dem Einsatzzweck entsprechend nutzen zu können. Aber auch die Attraktivität, d.h. die positive Nutzererfahrung fällt unter dieses Merkmal. Ein geringer Aufwand zum Erlernen der Software sowie eine einprägsame Bedienbarkeit steigert ebenfalls die Zufriedenheit der Nutzenden. Im Rahmen von Usability Tests werden diese und auch weitere Punkte geprüft, wie z.B. die Reduzierung von Barrieren, um auch Menschen mit Behinderungen den uneingeschränkten Zugang zu den digitalen Inhalten zu ermöglichen
Sicherheit
Ein weiteres wichtiges Kriterium der Softwarequalität ist die Sicherheit, deren Anforderungen darauf abzielen, die Anwendung vor unbefugtem Einwirken Dritter, Datenverlust, Manipulation und weiteren Sicherheitsrisiken zu schützen. Die Integrität, Vertraulichkeit und Verfügbarkeit von Daten und Systemen muss sichergestellt werden. Bekannte Maßnahmen als Teil dieses Merkmals sind Penetrationstests, bei denen durch Experten typische Angriffe auf Schwachstellen der Software simuliert werden.
Wartbarkeit
Schon zu Beginn des Softwareentwicklungsprozesses ist auf die Wartungsfreundlichkeit zu achten. Das Merkmal Wartbarkeit beinhaltet die Möglichkeit zur effizienten Fehlerbehebung, Erweiterbarkeit, Testbarkeit und Anpassbarkeit. Eine übersichtliche Gliederung in beherrschbare Module sowie eine tragfähige und erweiterbare Architektur sind gerade bei sehr großen Projekten probate Mittel. Diese Elemente bereiten einen langlebigen und nachhaltigen Lebenszyklus der Anwendung vor.
Übertragbarkeit
Die Eignung der Software, mit geringem Anpassungsaufwand von einer Umgebung in eine andere übertragen und installiert zu werden, ist ebenfalls ein wichtiges Qualitätskriterium. In diesen Bereich fallen zum einen Voraussetzungen wie unterschiedliche Betriebssysteme und Anwendungsumgebungen, wie z.B. die Nutzung auf mobilen Endgeräten. Gerade in umfangreicheren Softwareentwicklungsprojekten sind die verschiedenen Umgebungen (fachliche und technische Test-, Staging-, Produktionsumgebungen usw.) von großer Bedeutung. Häufig müssen in den Projektphasen Umgebungen fristgerecht bereitgestellt werden, wobei eine unkomplizierte Installierbarkeit der Anwendung Voraussetzung ist. Eine einmalig erfolgreich durchgeführte Installation reicht in diesen Fällen nicht aus.
Für alle genannten Kriterien ist es gleichermaßen wichtig, diese bereits in der Konzeptionsphase sowie während des gesamten Softwareentwicklungsprozesses bedacht werden.
Quellen
-
ISTQB Glossary Softwarequalitätsmerkmale, abgerufen am 19.08.2024
-
ISO 25010: Software and Data Quality ISO 25010, abgerufen am 13.02.2024
-
Wikipedia Softwarequalität, abgerufen am 13.02.2024
-
Vogel Communications Group, dev insider-was ist softwarequalität?, abgerufen am 13.02.2024