Common Services are defined for all developers to use
The perfect program would simply call existing services SOA is about being pragmatic:
- Iterative and incremental adoption and build out “Wrap and Reuse” instead of “Rip and Replace”
- Going back into legacy code that is running fine, rip it apart, insert new functionality is typically not a good idea
- Sometimes a rewrite in a more open and scalable language is the correct answer
- The rules to use create and use these services is called governance
Governance is the BOTH the definition and enforcement of these rules aka policies