Software Engineering, Software Architecture, Microservices, Distributed Systems, Systems Thinking.
collaboratively build it. It is also much easier and feasible to build tighter guarantees within smaller subsystems, which interact with each other with different sets of loose guarantees. Hence it is very important to get these boundaries right. You can call them bounded contexts, objects, etc but