Self-contained Systems

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Self-contained Systems (SCS) sind ein Architekturmuster der Informationstechnik, bei dem Funktionen in mehrere unabhängige Systeme separiert werden. So wird das logische Gesamtsystem zu einer Kollaboration mehrerer kleiner Software-Systeme. [1][2][3]

Eigenschaften von Self-contained System[Bearbeiten | Quelltext bearbeiten]

SCS haben folgende Eigenschaften:

  1. Jedes SCS ist eine unabhängige Web-Anwendung.
  2. Jedes SCS wird von einem Team entwickelt.
  3. Kommunikation mit anderen SCSs oder Drittsysteme soll - wenn möglich - asynchron erfolgen.
  4. Ein SCS kann optional eine Service-API haben.
  5. Jedes SCS muss Daten und Logik enthalten.
  6. Ein SCS soll seine Feature für Endkunden mit einer UI nutzbar machen.
  7. Um enge Kopplung zu vermieden, darf ein SCS keinen Geschäftscode mit anderen SCS teilen.

Umsetzungen [4] implementieren so große Systeme - vor allem Web-Anwendungen.

Self-contained Systems und Microservices[Bearbeiten | Quelltext bearbeiten]

Self-contained Systems sind Microservices ähnlich, aber es gibt einige Unterschiede: Ein System enthält weniger SCS als Microservices. Außerdem können Microservices mit anderen Microservices kommunizieren - sogar synchron. SCS hingegen sollen idealerweise gar nicht oder nur asynchron kommunizieren. Schließlich können Microservices eine getrennte UI haben, während ein SCS eine UI enthält.[5]

Usage[Bearbeiten | Quelltext bearbeiten]

Es gibt einige Systeme, die nach SCS-Ideen aufgebaut sind - beispielsweise bei Otto [6] und GALERIA Kaufhof [7].

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Self-contained Systems Website.
  2. heise developer Blog zu Self-contained Systems.
  3. Ursprünglicher Artikel zu den Ideen.
  4. Codecentric Blog.
  5. Self-contained Systems Website: SCS vs. Microservices.
  6. Otto Blog.
  7. Kaufhof Blog.