SOA Patterns > Basics > SOA Project Fundamentals > Project and Lifecycle Stages > Service Discovery
In order to ensure the consistent reuse of agnostic services and service capabilities, project teams carry out a separate and explicitly defined Service Discovery process. The primary goal of this process is to identify one or more existing agnostic services, such as utility or entity services, within a given service inventory that can fulfill generic requirements for whatever business process the project team is tasked with automating.
The primary mechanism involved in performing Service Discovery is a service registry, which contains relevant metadata about available and upcoming services as well as pointers to the corresponding service contract documents that can include SLAs. The communications quality of the metadata and service contract documents play a significant role in how successful this process can be carried out. This is why one of the eight service-orientation principles, the Service Discoverability principle, is dedicated solely to ensuring that information published about services is highly interpretable and discoverable.