Self-contained systems
Self-contained system (SCS) is an architectural pattern of information technology , are separated in the functions in a plurality of independent systems. In this way, the overall logical system becomes a collaboration between several small software systems.
Features of self-contained system
SCS have the following properties:
- Each SCS is an independent web application.
- Each SCS is developed by a team.
- Communication with other SCSs or third-party systems should - if possible - take place asynchronously.
- An SCS can optionally have a service API.
- Every SCS must contain data and logic.
- An SCS should make its feature usable for end customers with a UI.
- To avoid tight ties, an SCS must not share a business code with other SCS.
Implementations implement such large systems - especially web applications.
Self-contained systems and microservices
Self-contained systems are similar to microservices , but there are some differences: A system contains fewer SCS than microservices. In addition, microservices can communicate with other microservices - even synchronously. SCS, on the other hand, should ideally not communicate at all or only communicate asynchronously. Finally, microservices can have a separate UI while an SCS contains a UI.
application
There are some systems that are based on SCS ideas - for example at Otto and GALERIA Kaufhof.
Web links
Description of the SCS approach on scs-architecture.org