Architekturprinzip zur gliedernden Aufteilung eines Systems in klar abgegrenzte Verantwortungsbereiche zur Verbesserung von Wartbarkeit, Testbarkeit und Wiederverwendung.
Separation of Concerns (SoC) ist ein Architekturprinzip, das Systeme in klar abgegrenzte Verantwortungsbereiche trennt, um Wartbarkeit und Testbarkeit zu verbessern. Es fördert lose Kopplung und hohe Kohäsion, erleichtert parallele Entwicklung sowie Wiederverwendung und reduziert Komplexität und erleichtert Refactoring.
Grad der Abhängigkeiten zwischen Modulen; niedriger ist besser.
Maß für inhaltliche Zusammengehörigkeit innerhalb eines Moduls.
Zählt Refactorings zur Einhaltung von SoC-Prinzipien und deren Auswirkungen.
Ein Onlineshop trennt Präsentation, Geschäftslogik und Datenzugriff in separate Module zur vereinfachten Wartung.
Zahlungsfunktionen werden als eigenständiger Service implementiert, um Verantwortlichkeiten und Skalierung zu isolieren.
Ein Backend stellt APIs bereit, während verschiedene UIs (Web, Mobile) unabhängig entwickelt werden können.
Analyse ist die Basis: Verantwortlichkeiten identifizieren.
Grenzen definieren: Module, Schichten und Schnittstellen festlegen.
Iteratives Extrahieren und Testen von Komponenten.
Governance einrichten: Contracts, Versioning und Dokumentation sicherstellen.