Schwerpunktthema

Self-contained Systems

Self-contained Systems zerlegen eine Anwendungslandschaft in eigenständige Systeme mit jeweils eigener Oberfläche, Geschäftslogik und Datenhaltung, verbunden nur über lose gekoppelte Integrationsmechanismen.

Self-contained Systems: Architekturprinzipien für eigenständige Systeme

Self-contained Systems (SCS) beschreiben eine Architektur, bei der eine Anwendungslandschaft in mehrere eigenständige Systeme aufgeteilt wird. Jedes System besitzt seine eigene Oberfläche, eigene Geschäftslogik und eigene Datenhaltung und läuft unabhängig von den anderen. Die Integration zwischen den Systemen erfolgt asynchron oder über einfache Links und Frontend-Einbindung, nicht über gemeinsame Laufzeitumgebungen oder synchrone Aufrufketten.

Der Ansatz eignet sich besonders für große Organisationen, in denen mehrere Teams unabhängig voneinander entwickeln und deployen möchten, ohne sich über eine gemeinsame Codebasis oder Release-Zyklen abzustimmen. Das Konzept wurde ursprünglich bei INNOQ entwickelt und wird in der Schulung Flexible Architekturen vertieft.

Diese Seite bündelt unsere Fachartikel, Podcasts und Vorträge zum Thema.

Unsere Leistungen

Wir beraten ehrlich, denken innovativ und entwickeln leidenschaftlich gern. Das Ergebnis sind erfolgreiche Softwarelösungen, Infrastrukturen und Geschäftsmodelle.

Blog-Posts

Podcast

Aktuelles

Vorträge

Primer

Case Studies

Case Study

Der Thermomix® als Online-Plattform mit bis zu 45 Millionen Zugriffen pro Tag

Case Study

Breuninger verbessert Time-to-Market mittels Vertikalisierung und Self-contained Systems

Häufige Fragen

Sie haben Fragen zum Thema Self-contained Systems? Hier finden Sie Antworten auf Fragen, die wir häufig gestellt bekommen.

Was sind Self-contained Systems und wann sind sie sinnvoll?

Self-contained Systems (SCS) teilen ein größeres Softwaresystem in fachlich eigenständige, möglichst unabhängige Webanwendungen. Jedes SCS bringt die für seinen Bereich notwendige Benutzeroberfläche, Geschäftslogik und Datenhaltung mit und kann weitgehend unabhängig entwickelt und deployt werden. Der Ansatz ist besonders sinnvoll, wenn eine große Codebasis, viele Abhängigkeiten oder häufige Abstimmungen zwischen Teams die Weiterentwicklung verlangsamen.

Mehr zu SCS bei INNOQ: Self-contained Systems

Wie unterscheiden sich Self-contained Systems von Microservices?

SCS und Microservices verfolgen ein ähnliches Ziel: Systeme in möglichst unabhängige Teile zu zerlegen. Self-contained Systems sind jedoch klarer als vollständige fachliche Einheiten definiert. Sie enthalten neben Geschäftslogik und Datenhaltung auch ihre eigene Benutzeroberfläche und sind häufig größer geschnitten als einzelne Microservices. Ein SCS kann intern durchaus aus mehreren Services bestehen.

Wie schneidet man ein System sinnvoll in Self-contained Systems?

Die Grenzen von Self-contained Systems sollten sich vor allem an der Fachlichkeit orientieren, nicht an technischen Schichten oder einzelnen Komponenten. Methoden aus dem strategischen Domain-driven Design, etwa Event Storming, helfen dabei, fachliche Verantwortlichkeiten, Abhängigkeiten und mögliche Systemgrenzen sichtbar zu machen. Ziel sind Einheiten, für die jeweils ein Team Verantwortung übernehmen und die es möglichst unabhängig weiterentwickeln kann.

Der INNOQ Primer Self-contained Systems führt vom fachlichen Schnitt bis zu konkreten Integrationstechniken durch die wichtigsten Architekturentscheidungen.

Wie helfen Self-contained Systems bei der Modernisierung von Legacy-Systemen?

SCS ermöglichen eine schrittweise Modernisierung, ohne einen bestehenden Monolithen vollständig neu entwickeln zu müssen. Dazu wird das Bestandssystem entlang fachlicher Grenzen analysiert und nach und nach in eigenständige Subsysteme zerlegt. Sinnvoll ist es, mit Bereichen zu beginnen, die sich vergleichsweise einfach vom Altsystem trennen lassen und gleichzeitig einen hohen fachlichen Nutzen bieten.

INNOQ unterstützt Unternehmen bei solchen evolutionären Modernisierungen: Legacy-Modernisierung

Welche Rolle spielt INNOQ bei Self-contained Systems?

INNOQ hat den Architekturansatz Self-contained Systems mitentwickelt und arbeitet seit vielen Jahren damit in Architektur- und Entwicklungsprojekten. Heute fließen die Erfahrungen aus der Weiterentwicklung des Ansatzes ebenso in unsere Projektarbeit wie in Artikel, Vorträge und den SCS Primer ein.

Mehr dazu: Self-contained Systems und Softwarearchitektur und -entwicklung