For example, searching for posts with titles, in this category. The title is in the Blog module, and the category is in the Taxonomy module.
For this reason, the Blog module is attached to the Taxonomy module (hardcoded) and no new taxonomy module can be replaced.
This means that each module can expose a list of interfaces and endpoints (contracts). Then a team can build his own module as long as those contracts are conserved.
Where is the problem?
For example, searching for posts with titles, in this category. The title is in the Blog module, and the category is in the Taxonomy module. For this reason, the Blog module is attached to the Taxonomy module (hardcoded) and no new taxonomy module can be replaced.
This means that each module can expose a list of interfaces and endpoints (contracts). Then a team can build his own module as long as those contracts are conserved.