Konzept: Flowdown ergänzender Anforderungen
Flowdown ergänzender Anforderungen ist die Technik, mit der nicht funktionale Anforderungen für die Analyseelemente (und anschließend die Designelemente) abgeleitet werden können.
Beziehungen
Hauptbeschreibung

Einführung

Im Rahmen des Analyseprozesses entwickelt der Architekt ein erstes Lokalitätsdiagramm. Die Lokalitätssicht ist eine Synthese der nicht funktionalen Aspekte und liefert den Kontext für die Adressierung nicht funktionaler Anforderungen wie Zuverlässigkeit und Kapazität.

Standardentwicklungsverfahren ermöglichen die Kalkulation von Kapazität, zulässigen Fehlerraten usw. Die Anwendung dieser Verfahren ergibt für jedes Lokalitätselement eine Gruppe abgeleiteter ergänzender Anforderungen. Die Lokalitätsmerkmale werden über diese Anforderungen bestimmt. Die abgeleiteten Anforderungen und Merkmale werden bei der Partitionierung von Subsystemen (lokalitätsübergreifend) bestimmt und verfeinert.

Die ergänzenden Anforderungen auf Systemebene wirken sich auch auf die Subsysteme aus (Hardware, Software, Mitarbeiter), die zusammen mit den Subsystemmerkmalen und den Lokalitätsmerkmalen die gewünschten Systemmerkmale liefern.

Messwerte für Servicequalität

Servicequalität (QoS, Quality of Service) ist ein Begriff, der Aspekte nicht funktionaler Anforderungen beinhaltet. Die Liste solcher Merkmale kann sehr umfangreich sein und viele Attribute wie Zuverlässigkeit, Wartungsfreundlichkeit und Benutzerfreundlichkeit und unter Umständen rein auf die Entwicklung bezogene Besonderheiten wie Sicherheit, menschliche Faktoren usw. umfassen. Wichtige Besonderheiten bei der Entwicklung werden normalerweise von Experten dieser Disziplinen bearbeitet. Die Problemstellungen, die oft in die Zuständigkeit des System- und des Softwareentwicklers fallen, haben mit folgenden Fragen zu tun:

  • Leistung - Wie gut führt das System zeitlich gesehen seine Funktionen aus, d. h. Reaktionsfähigkeit, Durchsatz, Einhaltung von Terminen.
  • Zuverlässigkeit/Fehlertoleranz - Wie lange kann das System die erforderlichen Funktionen ausführen, bevor ein Fehler auftritt, und wie gut (ordnungsgemäß) kann das System mit Teilausfällen umgehen. Die mittlere Zeit zwischen auftretenden Fehlern ist ein Maß für die Zuverlässigkeit des Systems.
  • Wartungsfreundlichkeit - Wie einfach lässt sich das System am Laufen halten und wie leicht lassen sich Probleme diagnostizieren und beheben. Die mittlere Reparaturzeit ist ein Maß für die Wartungsfreundlichkeit des Systems.

Vor der Erstellung des Systems muss der Systementwickler sich häufig auf Systemmodelle verlassen, um Alternativlösungen definieren und nicht funktionale Anforderungen zuordnen und kalkulieren zu können. Diese Modelle werden analysiert, um festzustellen, wie gut sie den Anforderungen der gewünschten Servicequalitätsstufen gerecht werden. Dann kann eine Lösung ausgewählt werden (normalerweise werden die Kosten als Faktor berücksichtigt). Solche Branchenstudien sind beim Systemdesign auf allen Präzisierungsstufen wichtig. Die Synthese von geeigneten Lösungen hängt sehr stark von den Fähigkeiten und der Erfahrung des Architekten ab. Die Analyse dieser Lösungen (über mathematische Modelle, Simulation usw.) muss relativ mechanisch verlaufen. Selbst dann variiert die Zuverlässigkeit dieser Analysen beträchtlich mit der Güte der Eingabedaten und der Genauigkeit der Modelle.

Es steht ein Fundus von Techniken zur Verfügung, um die Analyse von Modellen in Bezug auf die zuvor genannten Messwerte für Servicequalität lenkbar zu machen, z. B. RMA (Rate Monotonic Analysis) für die Untersuchung der Leistung von echtzeitorientierten, eingebetteten Softwaresystemen [siehe Klein, M. H., et al. A Practitioners' Handbook for Real-Time Analysis: Guide to Rate Monotonic Analysis for Real-Time Systems, Kluwer Academic Publishers, 1993] und FMECA (Failure Mode Effects and Criticality Analysis) für die Identifizierung und Charakterisierung von Hardwarefehlern und Sicherheitsrisiken [siehe Kececioglu, Dimitri, Reliability Engineering Handbook, Vol. 2,  PTR Prentice Hall, 1991].

Unterstützung für diese Analysearten erfolgt über die Bereitstellung von Profilen für UML. Siehe hierzu UML Profile for Schedulability, Performance, and Time Specification und UML Profile for Modeling Quality of Service and Fault Tolerance Characteristics and Mechanisms. Diese Profile (verfügbar über www.omg.org) definieren Anmerkungen für UML-Modelle, die die Analyse für die im Profil definierten Merkmale ermöglichen. Des Weiteren können mit verschiedenen vorhandenen und künftigen Modellanalysetechniken und -tools quantitative Prognosen erstellt werden.