We've been discussing and predicting loosely coupled solutions (SOA) for years. SOA has finally become the acceptable approach to how solutions are built. The concept of applications has evolved from monolithic silos to abstract groupings of headless services used to resolve business problems. This evolution to distributed systems requires ceding some control to headless services that weren't necessarily designed in the context of your business problem. This means we need to calculate SLOs/MTTR/etc of our solution by incorporating the availability, constraints, and performance thresholds of those underlying headless services. This is really not that conceptually different from the pre-SOA days because we always had some aspects of our applications that weren't 100% under our control (e.g vendor-provided resources like SQL Server or IBM mainframe gateways).
Solution providers need to be able to swap out underperforming services to achieve better overall solution performance. Not an easy thing to do unfortunately (not yet, anyway).