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:
Qualitaetsmerkmale
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.