Organizations, Subdomains, and Microservices
Explore the fundamental concepts of organizations, subdomains, bounded contexts, and microservices to improve software development. Understand how to define clear boundaries, form cohesive teams, and align business needs with technical architecture. This lesson helps you create scalable systems that meet user expectations and reduce complexity by mapping microservices to bounded contexts.
We'll cover the following...
A couple of important definitions upfront
In modern and large IT organizations, we typically have many teams and applications as well as an elaborate graph of requirements. If we are not careful when forming or managing such environments, we can introduce an unintentional overhead that can create complications and slow down a significant portion of the company. In smaller organizations, similar problems can quickly occur with growth if we do not plan properly ahead of time.
Before I clarify and chop the described problem in the next sections, it is essential that you understand basic concepts of
The course will base several important suggestions on these terms, as they help define boundaries for applications, systems, and subsystems. In this context, the borderline is more important than what is inside it.
Make sure to familiarize yourself with these concepts before we go any further. If you are already familiar with them, then let’s quickly recap to refresh your memory:
- A subdomain is a part of an overall problem that an entire organization solves. For example, an established brand can have a subdomain of “Sales” that expresses how it sells its products online.
- A bounded