Was haben Architekturstile mit Qualitätsmerkmalen zu tun?
Architekturstilen und ISO 25010
Architekturstile bestimmen, wie gut bestimmte "Qualitätsmerkmale" einer Software (gemäß ISO 25010) erfüllt werden können.
Definition: Architekturstile
- Wiederverwendbare Muster, die Strukturen und Beziehungen innerhalb eines Softwaresystems definieren.
- Beispiele:
- Schichtenarchitektur
- Event-basierte Architektur
- Microservices
- Client-Server
- Jeder Stil unterstützt verschiedene Architektur- und Qualitätsmerkmale unterschiedlich stark.
Qualitätsmerkmale (ISO 25010)
Die "Qualitätsmerkmale" der ISO 25010 helfen, Software nach spezifischen Kriterien zu bewerten:
Architekturstile haben großen Einfluss auf diese Merkmale.
Einfluss von Architekturstilen
- Beispiel: Schichtenarchitektur
- Fördert die Wartbarkeit durch klare Trennung der Verantwortlichkeiten.
- Unterstützt die Sicherheit, da Schichten wie die Datenzugriffslogik besser abgeschirmt werden können.
Einfluss von Architekturstilen (Fortsetzung)
- Beispiel: Event-Driven Architecture
- Leistungseffizienz: Asynchrone Verarbeitung ermöglicht schnelle Reaktionen.
- Zuverlässigkeit: Höhere Fehlertoleranz durch Ereigniswarteschlangen.
Einfluss von Architekturstilen (Fortsetzung)
- Beispiel: Microservices
- Wartbarkeit: Kleinere, unabhängige Dienste.
- Skalierbarkeit: Performance lässt sich durch Skalierung einzelner Services verbessern.
- Übertragbarkeit: Ausführung in unterschiedlichen Umgebungen möglich.
Wichtige Abwägungen
- Der richtige Architekturstil hängt von den priorisierten Qualitätsmerkmalen ab.
- Es gibt keine “beste” Architektur – es ist immer eine Abwägung zwischen Merkmalen wie Skalierbarkeit, Einfachheit und Sicherheit nötig.
- Es kann notwendig sein,
- mehrere Architekturstile zu kombinieren,
- den Architekturstil mit der Zeit zu anzupassen/migrieren.