A contentious topic in distributed systems is if/when/how to share databases. Some developers/architects will tell you never to do it. Others, like me, will cautiously mention a few acceptable scenarios.
"Components [within a bounded context] work together very closely; therefore, having shared dependencies increases cohesion... without necessarily causing problems"
Patterns, Principles and Practices of Domain-Driven Design
Who is right? What is the one true way?
In this blog post I won't be wasting time on such futility. Instead I’ll be elaborating on my belief that sharing databases, and other dependencies, within bounded contexts can be sensible and savvy.