Decouples the behaviour of service from the point in time at which service implementations are configured into an application or system.

This decoupling improves the modularity of services and allows services to evolve over time independently of configuration issues (such as whether two services must be co-located or what concurreny will be used to execute the services).

In addition, the Service Configurator pattern centralizes the administration of the services it configures. This facilitates automatic initialization and termination of services and can improve performance by factoring common service initialization and termination patterns into efficient reusable components.