Dissecting micro frontends
To achieve our goal of creating a software architecture that enables change, we need to give teams full control of the entire stack. As depicted in Figure 3.1, a single team should own a micro application, its BFF service, and the datastore. This reduces the need for inter-team communication, which adds dependencies on another team's schedule:
These self-sufficient, full-stack, autonomous teams are able to move at their own pace, minimize lead time, and respond to user feedback at will, precisely because they are not dependent on other teams. We will learn more about them in the chapters ahead.
Note
In Chapter 6, A Best Friend for the Frontend, we will see how teams implement BFF services. In Chapter 5, Turning the Cloud into the Database, we will see how to decompose monolithic databases. Then, in Chapter 4, Trusting Facts and Eventual Consistency, we will see how these services communicate...