Samodzielny system (oprogramowanie)
W informatyce samodzielny system (SCS) to podejście oparte na architekturze oprogramowania , które koncentruje się na podziale funkcjonalności na wiele niezależnych systemów, dzięki czemu kompletny system logiczny jest wynikiem współpracy wielu mniejszych systemów oprogramowania.
Charakterystyka systemu samowystarczalnego
SCS mają pewne cechy:
- Każdy SCS jest autonomiczną aplikacją internetową.
- Każdy SCS jest własnością jednego zespołu.
- Komunikacja z innymi SCS lub systemami innych firm odbywa się w miarę możliwości asynchronicznie.
- SCS może mieć opcjonalny interfejs API usługi.
- Każdy SCS musi zawierać dane i logikę.
- SCS powinien udostępniać swoje funkcje użytkownikom końcowym za pomocą własnego interfejsu użytkownika.
- Aby uniknąć ścisłego powiązania, SCS nie powinien współdzielić żadnego kodu biznesowego z innymi SCS.
- Wspólna infrastruktura powinna zostać zredukowana, aby zwiększyć dostępność i zmniejszyć sprzężenie.
Wdrożenia z wykorzystaniem tego podejścia tworzą większe systemy – w szczególności aplikacje webowe. Dostępnych jest wiele studiów przypadków i dalszych linków.
Samodzielne systemy i mikrousługi
Chociaż samodzielne systemy są podobne do mikrousług , istnieją pewne różnice: system zwykle zawiera mniej SCS niż mikrousługi. Również mikroserwisy mogą komunikować się z innymi mikroserwisami – nawet synchronicznie. SCS preferuje brak komunikacji lub komunikację asynchroniczną. Mikrousługi mogą również mieć oddzielny interfejs użytkownika, w przeciwieństwie do SCS, które zawierają interfejs użytkownika.
Stosowanie
Znanych jest sporo zastosowań SCS – np. w Otto i Galerii Kaufhof .