Within a SOA individual services should not interact with each other.
When given a requirement for one service, that could really be made into two separate services/units of work. What is the best action ?
Creating two, where service A contains both units, and service B contains only the “first” unit/service breaks DRY ? To clarify, where one is assumed to be dependent on the other the completely independent unit of work can be placed into its own service, and the two combined units can be placed in a second service.
Given a requirement for one service that can and maybe should be split into two, what should do do ?
Perhaps I am misreading your OP but you can have a service
Bthat exposes an interface for a specific functionality offered and a serviceA(orCorDfor that matter) that consumes that interface to offer the specific functionality offered byA.Services can use a functionality offered by another service via its interface. But they are not coupled, in the sense that the same interface could be implemented via a different set of services