Similar to the microservice architecture, a Self-Contained System (SCS) divides an application into numerous independent components (here its called: systems). The major difference between SCS and a microservice architecture: First, the number of independent services is significantly higher in the microservice architecture that the number of systems in an SCS. Second, in the microservice architecture, the microservices communicate with each other (also synchronously) and may have their own user interface. In contrast, in an SCS the communication between the SCS systems should be asynchronous, the integration is achieved via the UI.

So much for the differences. By the way, SCS is mainly used for web applications. Here are a few central characteristics for a Self-Contained System: Each SCS is typically developed by a separate team (Note: independence often leads to less reusability of functions). Each SCS has its own logic and data layer.

Advantages at a glance

  • Available UI (Web or HTML)
  • Separation of functionality into autarkic systems
  • Free choice of programming language per system
  • Any architecture in an SCS

There are also - as always in life - a few disadvantages

  • Integration via UI complex
  • Delegation between the SCS only via links
  • reusability limited
  • Discrepancy Integration via UI or API
Author

Sebastian Zang has cultivated a distinguished career in the IT industry, leading a wide range of software initiatives with a strong emphasis on automation and corporate growth. In his current role as Vice President Partners & Alliances at Beta Systems Software AG, he draws on his extensive expertise to spearhead global technological innovation. A graduate of Universität Passau, Sebastian brings a wealth of international experience, having worked across diverse markets and industries. In addition to his technical acumen, he is widely recognized for his thought leadership in areas such as automation, artificial intelligence, and business strategy.