Be Software Architecture Wise
Be Wise Apps

Read in English · Leer en español · Lire en français

Abschnitt 2.2 von 2.8 · Mittelstufe · 18 Min. Lesezeit

Qualitätsmodelle: ISO/IEC 25010 und wie man es nutzt

Videolektion

4 Min. · auf Englisch gesprochen, mit Untertiteln
Nur anhören (Audio)
Transkript lesen

In der letzten Lektion haben Sie gesehen, dass Qualitätsmerkmale den größten Teil einer Architektur bestimmen. Die naheliegende nächste Frage lautet: welche Qualitäten? Diese Lektion stellt Qualitätsmodelle vor, die wichtigste internationale Norm und wie man sie nutzt, ohne in Papierkram zu versinken.

Wenn Sie einen Gebrauchtwagen kaufen, sorgt eine gute Checkliste dafür, dass Sie nichts vergessen: den Motor, die Bremsen, die Reifen, Rost, die Papiere und den Verbrauch. Nicht jeder Punkt muss perfekt sein. Aber Sie wollen sich jeden angesehen und entschieden haben, ob er Ihnen wichtig ist. Ein Qualitätsmodell ist diese Checkliste für Software.

Sich selbst überlassen, nennen Stakeholder die zwei oder drei Qualitäten, die ihnen zuletzt wehgetan haben, meist Geschwindigkeit und Verfügbarkeit. Ein Qualitätsmodell ist eine strukturierte Liste von Qualitätsmerkmalen, jeweils in engere Teilmerkmale gegliedert. Es erfüllt zwei Aufgaben. Es gibt allen ein gemeinsames Vokabular, sodass Zuverlässigkeit für alle dasselbe bedeutet. Und es dient als Checkliste, die Sie auf Qualitäten aufmerksam macht, die noch niemand angesprochen hat. Es ist eine Karte des Geländes, kein Weg hindurch.

Das am häufigsten zitierte Modell ist die internationale Norm ISO/IEC 25010. Ihre zweite Ausgabe, veröffentlicht zweitausenddreiundzwanzig, definiert die Produktqualität. Sie hat neun Merkmale. Funktionale Eignung fragt, ob das System die richtigen Dinge korrekt tut. Die anderen acht beschreiben, wie gut es sie tut und wie gut es sich betreiben, schützen und ändern lässt. Drei Merkmale haben sich gegenüber der Ausgabe von zweitausendelf geändert. Benutzbarkeit wurde in Interaktionsfähigkeit umbenannt, mit neuem Schwerpunkt auf Inklusivität für Menschen unterschiedlichen Alters und unterschiedlicher Fähigkeiten. Aus Übertragbarkeit wurde Flexibilität, die jetzt Skalierbarkeit umfasst: die Fähigkeit, mit wechselnder Last umzugehen. Und Betriebssicherheit kam hinzu, weil so viel Software heute physische Dinge steuert, von Autos bis zu Medizinprodukten. Wenn ein Vertrag diese Norm nennt, prüfen Sie, welche Ausgabe gemeint ist.

Sie werden auch anderen Listen begegnen. FURPS plus gruppiert Anforderungen in Funktionalität, Benutzbarkeit, Zuverlässigkeit, Performance und Supportfähigkeit und ergänzt Randbedingungen. Es ist kurz, aber Supportfähigkeit wirft vieles in einen Topf. Das Buch Software Architecture in Practice behandelt die Qualitäten, die Architekturen am häufigsten treiben, mit Taktiken zu jeder, was es für Architekten besonders nützlich macht. Und das offene Q42-Modell, gepflegt neben der arc42-Vorlage, versieht weit über hundert benannte Qualitäten mit Merkmalen. Diese Listen überschneiden sich stark. Es gibt keine einzig richtige Art, Qualität zu zerlegen, nur für einen Zweck mehr oder weniger nützliche.

Die große Gefahr ist, dass ein Modell zum Formular wird, voller Aussagen wie „Das System soll wartbar sein“, die niemand liest und niemand testet. Gehen Sie die Merkmale stattdessen einmal mit den Stakeholdern durch, in etwa einer Stunde. Markieren Sie jedes als hoch, mittel, niedrig oder nicht zutreffend, und halten Sie einen Satz Begründung fest. „Nicht zutreffend“ zu schreiben ist nützlich, weil es eine Entscheidung festhält. Sehen Sie sich nur bei den hohen die Teilmerkmale an, um das genaue Anliegen zu finden, etwa Wiederherstellbarkeit statt Zuverlässigkeit im Allgemeinen. Machen Sie dann aus jedem Anliegen ein messbares Szenario, gewichten Sie die Szenarien und legen Sie das Modell bis zum nächsten Review beiseite.

Wenden wir das auf die Mobile-App einer Bank mit eins Komma zwei Millionen Nutzern an. Am Zahltagabend melden sich etwa fünfundzwanzig Prozent innerhalb von zwei Stunden an. Das sind dreihunderttausend Anmeldungen oder etwa zweiundvierzig pro Sekunde. Mit dem Faktor drei für Lastspitzen ergeben sich etwa hundertfünfundzwanzig pro Sekunde. Performance wird also hoch bewertet, mit einem Szenario: Bei dieser Rate erscheinen die Kontostände für fünfundneunzig Prozent der Nutzer über eine 4G-Verbindung innerhalb von zwei Sekunden. Auch Sicherheit ist hoch. Die Teilmerkmale machen sie präzise: nachweisen, welcher Kunde jede Zahlung freigegeben hat, und Credential-Stuffing-Angriffen widerstehen, ohne echte Nutzer auszusperren. Betriebssicherheit wird als nicht zutreffend markiert, weil die App keinen physischen Schaden verursachen kann. Das ist eine Entscheidung, keine Auslassung. In einer Stunde bewertet das Team fünf Merkmale mit hoch, drei mit mittel und eines als nicht zutreffend und schreibt elf Szenarien, jedes mit einer Zahl.

Der vollständige Abschnitt listet jedes Teilmerkmal auf, vergleicht die beiden Ausgaben und enthält das vollständige Bankbeispiel. Als Nächstes lernen Sie in Abschnitt zwei Punkt drei, Qualitätsszenarien zu schreiben, die sich testen lassen. Bis gleich.

Was Sie wissen müssen

Wozu ein Qualitätsmodell dient

Abschnitt 2.1 hat dargelegt, dass Qualitätsmerkmale den größten Teil einer Architektur bestimmen. Die naheliegende nächste Frage lautet: welche Qualitäten? Sich selbst überlassen, nennen Stakeholder die zwei oder drei, die ihnen zuletzt wehgetan haben, meist Geschwindigkeit und Verfügbarkeit, und vergessen den Rest, bis es zu spät ist. Ein Qualitätsmodell ist eine strukturierte Liste von Qualitätsmerkmalen, jeweils in engere Teilmerkmale gegliedert, mit vereinbarten Namen und Definitionen. Es erfüllt zwei Aufgaben. Es gibt allen ein gemeinsames Vokabular, sodass „Zuverlässigkeit“ für den Product Owner, das Testteam und den Lieferanten dasselbe bedeutet. Und es dient als Checkliste, die Sie auf Qualitäten aufmerksam macht, die noch niemand angesprochen hat.

Ein Modell sagt Ihnen nicht, welche Qualitäten für Ihr System wichtig sind oder wie viel Sie von jeder brauchen. Das ergibt sich aus Stakeholdern und Geschäftszielen (Abschnitt 2.8). Es sagt Ihnen auch nicht, wie Sie sie erreichen; das ist die Aufgabe von Taktiken, Mustern und dem Rest dieses Kurses. Es ist eine Karte des Geländes, kein Weg hindurch.

ISO/IEC 25010:2023: das Produktqualitätsmodell

Das am häufigsten zitierte Modell ist ISO/IEC 25010, Teil der Normenfamilie SQuaRE (Systems and software Quality Requirements and Evaluation). Die zweite Ausgabe, veröffentlicht im November 2023, definiert ein Produktqualitätsmodell mit neun Merkmalen. Es gilt für Softwareprodukte und für ICT-Produkte im weiteren Sinn, und die Norm nennt seine Einsatzzwecke: Anforderungen spezifizieren, Anforderungen auf Vollständigkeit prüfen, Design- und Testziele festlegen, Abnahmekriterien definieren und Qualitätsmaße festlegen. Verwandte Normen der Familie legen fest, wie jedes Teilmerkmal gemessen (ISO/IEC 25023) und wie ein Produkt bewertet wird.

Die neun Merkmale sind funktionale Eignung, Leistungseffizienz, Kompatibilität, Interaktionsfähigkeit, Zuverlässigkeit, Sicherheit, Wartbarkeit, Flexibilität und Betriebssicherheit. Das erste beschreibt, ob das System die richtigen Dinge korrekt tut; die anderen acht beschreiben, wie gut es sie tut und wie gut es sich betreiben, schützen und ändern lässt. Das Diagramm unten zeigt die Struktur; die Tabelle danach listet jedes Teilmerkmal mit einer Beispielfrage auf, die ein Architekt stellen könnte.

Die neun Merkmale

Das Produktqualitätsmodell nach ISO/IEC 25010:2023: neun Merkmale, drei davon umbenannt oder neuProduktqualität (ISO/IEC 25010:2023)FunktionaleEignungLeistungs-effizienzKompatibilitätInteraktions-fähigkeitfrüher: Benutzb.ZuverlässigkeitSicherheitWartbarkeitFlexibilitätfrüher: Übertragb.Safetyneu seit 2023
ISO/IEC 25010:2023 gliedert die Produktqualität in neun Merkmale; gegenüber der Ausgabe von 2011 wurden zwei umbenannt und eines hinzugefügt.

Merkmale, Teilmerkmale und eine Beispielfrage für eine Mobile-Banking-App

MerkmalTeilmerkmaleBeispielfrage
Funktionale EignungFunktionale Vollständigkeit, funktionale Korrektheit, funktionale AngemessenheitBerechnet die App die Kreditrate korrekt, und leistet sie alles, was der Kunde braucht, um die Aufgabe zu erledigen?
LeistungseffizienzZeitverhalten, Ressourcennutzung, KapazitätWie schnell erscheint der Kontostand auf einem Mittelklasse-Smartphone über 4G, und wie viele gleichzeitige Nutzer kann das Backend bedienen?
KompatibilitätKoexistenz, InteroperabilitätKann die App Zahlungsdaten mit dem nationalen Echtzeitzahlungsverfahren austauschen und neben anderen Apps laufen, ohne gemeinsame Ressourcen aufzubrauchen?
Interaktionsfähigkeit (früher Benutzbarkeit)Erkennbarkeit der Angemessenheit, Erlernbarkeit, Bedienbarkeit, Schutz vor Benutzerfehlern, Nutzerbindung, Inklusivität, Benutzerunterstützung, SelbstbeschreibungsfähigkeitKann ein Erstnutzer ohne Hilfe einen Dauerauftrag einrichten, und kann jemand mit Screenreader dasselbe?
ZuverlässigkeitFehlerfreiheit, Verfügbarkeit, Fehlertoleranz, WiederherstellbarkeitWenn der Kartenabwicklungspartner ausfällt, können Kunden dann weiterhin Kontostände sehen und Geld zwischen eigenen Konten bewegen?
SicherheitVertraulichkeit, Integrität, Nichtabstreitbarkeit, Verantwortlichkeit, Authentizität, WiderstandsfähigkeitKönnen wir nachweisen, welcher Kunde eine Überweisung autorisiert hat, und widersteht die App Credential-Stuffing-Angriffen?
WartbarkeitModularität, Wiederverwendbarkeit, Analysierbarkeit, Änderbarkeit, TestbarkeitWie lange dauert es, eine neue Kontoart hinzuzufügen, und lassen sich die Überweisungsregeln ohne echtes Kernbankensystem testen?
Flexibilität (früher Übertragbarkeit)Anpassbarkeit, Skalierbarkeit, Installierbarkeit, AustauschbarkeitKann das Backend von 1 auf 5 Millionen Kunden wachsen, und könnten wir den Push-Benachrichtigungsanbieter innerhalb eines Quartals austauschen?
Betriebssicherheit (Safety)Betriebliche Einschränkung, Risikoerkennung, Ausfallsicherheit (Fail Safe), Gefahrenwarnung, sichere IntegrationVor allem für Systeme relevant, die Menschen, Sachen oder der Umwelt schaden können: eine Infusionspumpe, eine Zugsteuerung, ein Industrieroboter.

Einige Definitionen sollte man genau kennen, weil sie vom Alltagsgebrauch abweichen. In ISO/IEC 25010 ist Verfügbarkeit ein Teilmerkmal der Zuverlässigkeit: der Grad, in dem ein System bei Bedarf betriebsbereit und zugänglich ist. Fehlerfreiheit ist der Grad, in dem ein System seine Funktionen im Normalbetrieb ohne Fehler erfüllt. Kapazität unter Leistungseffizienz ist die Höchstgrenze eines Parameters, etwa gleichzeitiger Nutzer oder Transaktionen pro Sekunde, bei der die Anforderungen noch erfüllt werden. Skalierbarkeit steht unter Flexibilität; darin zeigt sich eine Sicht auf Skalierung als Fähigkeit, sich an wechselnde Last anzupassen, statt als Frage roher Geschwindigkeit. Widerstandsfähigkeit, neu unter Sicherheit, ist die Fähigkeit, den Betrieb unter einem Angriff aufrechtzuerhalten. Die Abschnitte 2.4 bis 2.7 greifen diese Qualitäten vertieft auf; Abschnitt 2.5 zeigt, wie man Verfügbarkeit berechnet.

Was sich gegenüber der Ausgabe von 2011 geändert hat

Die erste Ausgabe, ISO/IEC 25010:2011, löste das ältere Modell ISO/IEC 9126 ab und war ein Jahrzehnt lang die Standardreferenz. Viele Lehrbücher, Ausschreibungsunterlagen und Vorlagen verwenden noch ihre acht Merkmale, daher lohnt es sich zu wissen, was sich verschoben hat.

ISO/IEC 25010: 2011 im Vergleich mit 2023

ThemaAusgabe 2011Ausgabe 2023
Anzahl der MerkmaleAchtNeun
BenutzbarkeitBenutzbarkeit, einschließlich Ästhetik der Benutzungsoberfläche und BarrierefreiheitUmbenannt in Interaktionsfähigkeit; Ästhetik ersetzt durch Nutzerbindung; Barrierefreiheit aufgeteilt in Inklusivität und Benutzerunterstützung; Selbstbeschreibungsfähigkeit hinzugefügt
ÜbertragbarkeitÜbertragbarkeit: Anpassbarkeit, Installierbarkeit, AustauschbarkeitUmbenannt in Flexibilität; Skalierbarkeit als Teilmerkmal hinzugefügt
ZuverlässigkeitReife, Verfügbarkeit, Fehlertoleranz, WiederherstellbarkeitReife ersetzt durch Fehlerfreiheit
SicherheitVertraulichkeit, Integrität, Nichtabstreitbarkeit, Verantwortlichkeit, AuthentizitätWiderstandsfähigkeit hinzugefügt (einem Angriff standhalten)
Betriebssicherheit (Safety)Nur innerhalb der Nutzungsqualität behandelt (Risikofreiheit)Neues Produktmerkmal mit fünf Teilmerkmalen
NutzungsqualitätTeil von ISO/IEC 25010 (Effektivität, Effizienz, Zufriedenheit, Risikofreiheit, Kontextabdeckung)In eine eigene Norm verschoben, ISO/IEC 25019:2023 (Nutzen, Risikofreiheit, Akzeptanz)

Die Umbenennungen sind mehr als Kosmetik. „Interaktionsfähigkeit“ weitet den Blick von der einfachen Bedienung auf den gesamten Informationsaustausch zwischen Nutzern und Produkt in verschiedenen Nutzungskontexten, und das neue Teilmerkmal Inklusivität rückt Barrierefreiheit für Menschen unterschiedlichen Alters und unterschiedlicher Fähigkeiten vom Rand ins Zentrum. „Flexibilität“ bündelt die Qualitäten, mit denen ein Produkt Veränderungen in seiner Umgebung bewältigt: neue Plattformen, neue Installationsziele und mehr oder weniger Last. Dass Betriebssicherheit als Produktmerkmal hinzukam, spiegelt wider, wie viel Software heute physische Dinge steuert, von Autos bis zu Medizinprodukten.

Die zweite strukturelle Änderung: Die Nutzungsqualität, also die Qualität, die Menschen bei der Nutzung des Produkts in einem realen Kontext erleben, hat nun eine eigene Norm, ISO/IEC 25019:2023. Ihre drei Merkmale sind Nutzen (Benutzbarkeit, Barrierefreiheit und Eignung in der Nutzung), Risikofreiheit (wirtschaftliche Risiken, Risiken für Gesundheit und Menschenleben sowie Umwelt- und gesellschaftliche Risiken) und Akzeptanz (Erfahrung, Vertrauenswürdigkeit und Konformität). Die Trennung verdeutlicht eine für Architekten nützliche Unterscheidung: Produktqualität ist das, was Sie bauen und am Produkt testen können; Nutzungsqualität ist das Ergebnis für echte Menschen, das auch von Schulung, Kontext und der Art abhängt, wie das Produkt eingesetzt wird.

Andere Listen, denen Sie begegnen werden

ISO/IEC 25010 ist nicht die einzige Taxonomie, und in der Praxis werden oft einfachere oder anders geschnittene Listen verwendet. FURPS+ ging aus FURPS hervor, einer bei Hewlett-Packard entwickelten Klassifikation, die Robert Grady und Deborah Caswell in Software Metrics: Establishing a Company-Wide Program (1987) darlegten. FURPS gruppiert Anforderungen in Funktionalität (Functionality), Benutzbarkeit (Usability), Zuverlässigkeit (Reliability), Performance und Supportfähigkeit (Supportability); die spätere Erweiterung „+“ ergänzt Randbedingungen: Design-, Implementierungs-, Schnittstellen- und physische Randbedingungen sowie in manchen Fassungen Geschäftsregeln. Bekannt wurde FURPS+ durch den Rational Unified Process und seine Nachfolger. Seine Stärke ist die Kürze; seine Schwäche, dass „Supportfähigkeit“ Wartbarkeit, Testbarkeit, Konfigurierbarkeit, Installierbarkeit und Lokalisierung in einen Topf wirft.

Bass, Clements und Kazman erheben in der vierten Auflage von Software Architecture in Practice (2021) keinen Anspruch auf Vollständigkeit. Sie widmen je ein Kapitel den Qualitäten, die Architekturen am häufigsten treiben: Verfügbarkeit, Deploybarkeit, Energieeffizienz, Integrierbarkeit, Änderbarkeit, Performance, Betriebssicherheit, Sicherheit, Testbarkeit und Benutzbarkeit, gefolgt von einem Kapitel über den Umgang mit weiteren Qualitäten. Zu jeder geben sie ein allgemeines Szenario und einen Katalog von Taktiken an. Ihre Liste ist am Design statt an der Bewertung ausgerichtet, was sie für Architekten besonders nützlich macht.

Mark Richards und Neal Ford verwenden in Fundamentals of Software Architecture den Begriff Architekturmerkmale und ordnen sie in Gruppen wie betriebliche (Verfügbarkeit, Performance, Skalierbarkeit), strukturelle (Änderbarkeit, Erweiterbarkeit, Übertragbarkeit) und übergreifende (Sicherheit, Barrierefreiheit, Recht). Das offene Q42-Modell von Gernot Starke, gepflegt neben der arc42-Vorlage, wählt wieder einen anderen Ansatz: Es versieht weit über hundert benannte Qualitäten mit neun Dimensionen (effizient, flexibel, wartbar, betreibbar, zuverlässig, betriebssicher, sicher, geeignet, benutzbar) und bietet für jede Beispielanforderungen.

Diese Listen unterscheiden sich im Detail, überschneiden sich aber stark. Die Uneinigkeit ist selbst lehrreich: Es gibt keine einzig richtige Zerlegung von „Qualität“, nur für einen Zweck mehr oder weniger nützliche. Ein Standardmodell hilft, wenn Sie mit dem Einkauf, mit Prüfern oder anderen Organisationen kommunizieren müssen; einem Produktteam dient im Alltag vielleicht eine schlankere Liste besser.

Ein Modell als Checkliste nutzen, ohne Bürokratie zu schaffen

Die große Gefahr eines Qualitätsmodells ist, dass es zum Formular wird. Eine Anforderungsvorlage mit einer Überschrift für jedes der 40 Teilmerkmale verleitet dazu, jedes Feld zu füllen, und heraus kommt ein Dokument voller Aussagen wie „Das System soll wartbar sein“, das niemand liest und niemand testet. Der Aufwand verteilt sich gleichmäßig auf Qualitäten, die sehr ungleich wichtig sind, und die zwei oder drei Qualitäten, die die Architektur wirklich entscheiden, gehen im Rest unter.

Besser ist es, das Modell als Anstoß für ein Gespräch zu behandeln. Gehen Sie die Merkmale einmal zügig mit den Stakeholdern durch und fragen Sie bei jedem: Ist das für unser System wichtig, und wenn ja, wie sähe ein Versagen aus? Verwerfen Sie die irrelevanten ausdrücklich (zu schreiben „Betriebssicherheit: nicht zutreffend, die App kann keinen physischen Schaden verursachen“ ist nützlich, weil es eine Entscheidung festhält). Machen Sie aus den relevanten eine kleine Zahl konkreter, messbarer Szenarien (Abschnitt 2.3). Gewichten Sie sie (Abschnitt 2.8). Dann legen Sie das Modell bis zum nächsten Review beiseite.

Ein schlanker Weg, das Modell anzuwenden

  1. Die neun Merkmale durchgehenLesen Sie in einer einstündigen Sitzung jedes Merkmal laut vor und fragen Sie die Stakeholder, ob es wichtig ist. Notieren Sie, wem es wichtig ist und warum.
  2. Relevanz markierenKennzeichnen Sie jedes Merkmal als hoch, mittel, niedrig oder nicht zutreffend, und halten Sie zu jeder Entscheidung einen Satz Begründung fest.
  3. Bei den hohen in die Tiefe gehenSehen Sie sich nur bei Merkmalen mit hoher Relevanz die Teilmerkmale an, um das genaue Anliegen zu finden, etwa Wiederherstellbarkeit statt Zuverlässigkeit im Allgemeinen.
  4. Szenarien schreibenFormulieren Sie jedes genaue Anliegen als ein oder zwei messbare Szenarien mit Stimulus, Kontext und Antwortmaß.
  5. Priorisieren und verknüpfenGewichten Sie die Szenarien und verknüpfen Sie jedes mit den Designentscheidungen, die es treibt, damit die Liste kurz und lebendig bleibt.

Ausgearbeitetes Beispiel

Ausgearbeitetes Beispiel: ISO/IEC 25010 auf eine Mobile-Banking-App anwenden

Eine mittelgroße Bank löst ihre Mobile-App und ihr Backend ab. Sie hat 1,2 Millionen aktive App-Nutzer; am Abend des Zahltags melden sich etwa 25 % davon zwischen 18:00 und 20:00 Uhr an. Das Team geht die neun Merkmale in einer Stunde durch und hält das Ergebnis fest.

Schätzung der Spitzenlast1.200.000 × 25 % = 300.000 Anmeldungen in 2 Stunden = 300.000 ÷ 7200 s ≈ 42 Anmeldungen pro Sekunde im Mittel; mit dem Faktor 3 für Lastspitzen ≈ 125 pro Sekunde
Funktionale Eignung: hochZinsen, Gebühren und Kontostände müssen auf den Cent genau stimmen. Szenario: Jeder angezeigte Kontostand stimmt innerhalb von 5 Sekunden nach einer gebuchten Transaktion mit dem Hauptbuch des Kernsystems überein.
Leistungseffizienz: hochSzenario: Bei 125 Anmeldungen pro Sekunde wird der Startbildschirm mit den Kontoständen für 95 % der Nutzer über eine 4G-Verbindung innerhalb von 2 Sekunden angezeigt. Akku- und Datenverbrauch auf dem Smartphone zählen ebenfalls (Ressourcennutzung).
Kompatibilität: mittelMuss mit dem nationalen Echtzeitzahlungsverfahren und den gesetzlich vorgeschriebenen Open-Banking-APIs interoperieren; muss auf den beiden neuesten Hauptversionen beider mobiler Betriebssysteme laufen.
Interaktionsfähigkeit: hochInklusivität und Schutz vor Benutzerfehlern sind am wichtigsten. Szenario: Jemand mit Screenreader kann ohne sehende Hilfe eine Zahlung an einen neuen Empfänger abschließen; die App warnt vor einer Zahlung an einen Empfängernamen, der nicht zum Konto passt.
Zuverlässigkeit: hochWiederherstellbarkeit und Fehlertoleranz. Szenario: Fällt die Kartenplattform aus, funktionieren Kontostände und Überweisungen zwischen eigenen Konten weiter; der volle Service ist innerhalb von 30 Minuten wiederhergestellt.
Sicherheit: hochAuthentizität, Nichtabstreitbarkeit und Widerstandsfähigkeit. Szenario: Jede Zahlung wird mit starker Kundenauthentifizierung autorisiert und so aufgezeichnet, dass die Bank nachweisen kann, wer sie freigegeben hat; 10.000 Credential-Stuffing-Versuche pro Minute werden gedrosselt, ohne echte Nutzer auszusperren.
Wartbarkeit: mittelÄnderbarkeit und Testbarkeit. Szenario: Ein neues Sparprodukt lässt sich in weniger als 6 Wochen einführen, ohne die Zahlungskomponente zu ändern.
Flexibilität: mittelSkalierbarkeit. Szenario: Das Backend kann durch zusätzliche Instanzen auf 3 Millionen Nutzer wachsen, ohne Neuentwurf.
Betriebssicherheit: nicht zutreffendDie App kann keinen physischen Schaden verursachen; Risiken für Geld sind unter Sicherheit und Zuverlässigkeit abgedeckt. Ausdrücklich festgehalten, damit die Entscheidung sichtbar ist.
ErgebnisFünf Merkmale mit hoch bewertet, drei mit mittel, eines als nicht zutreffend. Insgesamt elf Szenarien, jedes mit einer Zahl. Die drei wichtigsten (Sicherheit, Zuverlässigkeit, Performance in der Zahltagsspitze) werden zu den Qualitätszielen auf der ersten Seite des Architekturdokuments.

Die Rechnung verwandelt „viele Nutzer am Zahltag“ in eine testbare Auslegungsgröße (etwa 125 Anmeldungen pro Sekunde in Lastspitzen).

Die Teilmerkmale haben ihre Aufgabe erfüllt: Aus „Sicherheit“ wurden Authentizität, Nichtabstreitbarkeit und Widerstandsfähigkeit, die jeweils andere Mechanismen nahelegen.

Betriebssicherheit als nicht zutreffend zu markieren ist eine Entscheidung, keine Auslassung. Fügt die Bank später ein Feature hinzu, das Schaden verursachen könnte, zeigt der Eintrag, dass er neu bewertet werden muss.

Häufige Fragen

Muss ich ISO/IEC 25010 zitieren, um Architektur richtig zu betreiben?

Nein. Die Norm ist wertvoll als gemeinsames Vokabular und als Checkliste und unverzichtbar, wenn Verträge oder Aufsichtsbehörden auf sie verweisen. Viele hervorragende Teams nutzen eine schlankere Liste. Entscheidend ist, dass die wichtigen Qualitäten identifiziert, messbar gemacht und priorisiert werden.

Wohin gehört Skalierbarkeit: zur Performance oder zur Flexibilität?

In ISO/IEC 25010:2023 ist sie ein Teilmerkmal der Flexibilität, während Kapazität unter Leistungseffizienz steht. In der Praxis hängen beide eng zusammen, und Abschnitt 2.4 behandelt sie gemeinsam. Lassen Sie nicht zu, dass Streit über die Einordnung das Schreiben des Szenarios verzögert.

Kommt „Observability“ im Modell vor?

Nicht unter diesem Namen. Teile davon entsprechen der Analysierbarkeit (Wartbarkeit) und der Verantwortlichkeit (Sicherheit). Viele Fachleute behandeln sie heute als eigenständige Qualität; Abschnitt 2.7 geht darauf ein.

Prüfen Sie Ihr Verständnis

Wie wurden Benutzbarkeit und Übertragbarkeit in ISO/IEC 25010:2023 umbenannt?

Aus Benutzbarkeit wurde Interaktionsfähigkeit, aus Übertragbarkeit Flexibilität.

Unter welches Merkmal ordnet ISO/IEC 25010:2023 die Verfügbarkeit ein?

Unter Zuverlässigkeit, neben Fehlerfreiheit, Fehlertoleranz und Wiederherstellbarkeit.

Warum ist es nützlich, bei einem Merkmal „nicht zutreffend“ einzutragen, statt das Feld leer zu lassen?

Es hält eine bewusste Entscheidung mit ihrer Begründung fest, sodass Prüfende sehen, dass sie bedacht wurde, und die Entscheidung neu bewertet werden kann, wenn sich das System ändert.

Was ist die größte Gefahr, wenn man ein Qualitätsmodell in eine Anforderungsvorlage verwandelt?

Man füllt jedes Feld mit vagen Aussagen, der Aufwand verteilt sich gleichmäßig auf Qualitäten sehr unterschiedlicher Bedeutung, und die wenigen Qualitäten, die die Architektur wirklich entscheiden, gehen unter.

Weiter · 2.3QualitätsszenarienDas sechsteilige Szenario, das „schnell“, „sicher“ und „leicht zu ändern“ in testbare Anforderungen verwandelt, mit Beispielen für sechs Qualitäten, typischen Fehlern und dem Weg vom Szenario zur Fitness Function.Weiter →

Quellen und weiterführende Literatur

Haben Sie eine Frage zu diesem Abschnitt? ArchitectBot, der KI-Lernassistent des Kurses, antwortet zuerst aus dem Kurs.

Fragen: „Wir haben eine Vorlage für nichtfunktionale Anforderungen nach ISO 25010 mit 40 Zeilen. Wie kürze ich sie auf etwas, das mein Team tatsächlich nutzt?“