Skip to Main Content
Providing a usable service is a well known requirement. However, integration use-cases variations and evolution needs usually result in the construction of a generic, coarse-grained service. Such services tend to be complicated in comparison to specific, fine grained, highly usable ones. The differences between complex and simple integration points should not make them mutually exclusive, but rather mutually supported according to practical use cases. This paper describes an architectural reference solution implemented as a Web service variation facade. The architecture defines two types of services: a simple, open access, domain specific business language type; and an access-controlled, complex, coarse type, based on licensing permits. Both types of services are constructed in accordance with relevant publishing policies. The first is ready to integrate with a simple contract, and the second requires preliminary integration negotiations with a detailed and usually complex contract. The solution differentiates between the variations in integration scenarios and the core product functionality, while using single deployment protocol that utilizes a licensing policy. It provides highly usable services as well as complex generic ones, while limiting changes from the external to the internal domain, and vice versa.