Rocky Lothka has an interesting quote when he talks about Object Oriented designs:
"Reuse leads to coupling, coupling leads to high cost, high cost leads to anger, and anger leads to the dark side"
Now this is not just true for object orientation, it also applies to (web) services. Applications that use multiple web services and thus depend on multiple external systems are 'coupled'. Although at a technical level technologies like web services make that there is no binary dependency the logical, or business dependency is still very much there.
Headaches to ponder:
- How does my app behave when the web service is unavailable?
- What is the 'business' consequense of the technical solution for your chosen solution?
- How to deal with backup and restore if multiple systems go down?
Or if just one goes down for that matter.