Last week, Microsoft released a major release of the Web Service Software Factory, dubbed the Modeling Edition. WSSF, a critical piece of its Web Services strategy, enables the development of WCF services following a WSDL-first approach.
The last major release of WSF was 14 months ago and focused essentially on WSDL first and versioning.
For this new release, Don Smith, Product Manager in the Pattern & Practices team, has presented an ambitious road map aiming at an "Enterprise SOA" offering including transaction, choreography, discovery…
The Web Service Software Factory (also known as the Service Factory) is an integrated collection of tools, patterns, source code and prescriptive guidance. It is designed to help you quickly and consistently construct Web services that adhere to well known architecture and design patterns.
This version targets both Web Service developers and Framework and Tools developers. The Modeling Edition is based on a Web Services domain model following WCF's metamodel and composed of 3 DSLs: Service Contract Model, Data Contract Model and the Host Model. The Host Modelcan be used to model the host application, service endpoints, and client/proxies.
Figure 1. An overview of WSSF's DSLs
WSSF is based on a service architecture which is composed of:
- The Service interface layer, described by a service contract, which specifies the service behavior and the messages required as the basis for interaction. It contains service adapters, which implement the service contract and expose its functionality to endpoints. The layer also implements the translation between data outside the service and data within the service.
- The Business layer, which incorporates components that implement the business logic of the service. It also includes business entities that represent objects specific to a business domain. This layer can also include business workflows which can be implemented using business process management tools, such as Windows Workflow Foundation in the .NET Framework 3.5.
- The Resource access layer, which contains the logic necessary to access data.
- The Components to address cross-cutting concerns, for instance Exception management and instrumentation are examples of this common functionality.
The Web Service Factory has a community web site on code plex.