“For a traditional company transforming to Agile principles, these are often hard to achieve due to the high-coupling of legacy systems across products. Over time these cross-dependencies should be removed and new systems migrated to the control of the single team that owns them.”
A collection of components that are completely independent is not a product. How many dependencies exist among Google’s components, or Amazon’s components? — a-lot. That’s why, for example, Google has massive on-demand automated integration testing.
Autonomous self-organizing teams also only work if the organization can afford to create a well funded self-service tools organization, so that teams can act independently without messing everyone else up, because the tooling detects mistakes that break other things. Not every organization can afford to create such a tools group.