Which key features of SOA allow services to interact without being aware of each other's implementation details?
Well-defined interfaces
Loose coupling
Service granularity
Stateless service design