Jump to content

Service layer pattern: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Reverted 1 edit by 91.159.53.89 (talk): Rv self-promotional spam that doesn't offer anything to meet WP:EL. (TW)
Bender the Bot (talk | contribs)
m Usage: http→https for Google Books and Google News using AWB
Line 14: Line 14:
Wajid Khattak [http://www.informit.com/articles/article.aspx?p=1583177 Service Layers][Online].Date accessed: 21 April 2010.</ref>
Wajid Khattak [http://www.informit.com/articles/article.aspx?p=1583177 Service Layers][Online].Date accessed: 21 April 2010.</ref>


An alternative layering from Bieberstein et al.,<ref>Bieberstein. et al.[http://books.google.com/books?id=NISyExeJ5mAC&pg=PA88&dq=%22service+layer%22&lr=&hl=sv#PPA87,M1 Service-oriented Architecture Compass: Business Value, Planning, and Enterprise Roadmap].FT Press, 2005. ISBN 0-13-187002-5, ISBN 978-0-13-187002-4</ref> involves five layers, namely enterprise, process, service, component and object.
An alternative layering from Bieberstein et al.,<ref>Bieberstein. et al.[https://books.google.com/books?id=NISyExeJ5mAC&pg=PA88&dq=%22service+layer%22&lr=&hl=sv#PPA87,M1 Service-oriented Architecture Compass: Business Value, Planning, and Enterprise Roadmap].FT Press, 2005. ISBN 0-13-187002-5, ISBN 978-0-13-187002-4</ref> involves five layers, namely enterprise, process, service, component and object.


The service layers pattern invokes a specific [[Service-oriented architecture types|service architecture]].
The service layers pattern invokes a specific [[Service-oriented architecture types|service architecture]].

Revision as of 10:54, 23 October 2016

Service Layers is a design pattern, applied within the service-orientation design paradigm, which aims to organize the services, within a service inventory, into a set of logical layers. Services that are categorized into a particular layer share functionality. This helps to reduce the conceptual overhead related to managing the service inventory, as the services belonging to the same layer address a smaller set of activities.

Rationale

Grouping services into functional layers reduces the impact of change. Most changes affect only the layer in which they're made, with few side-effects that impact other layers. This fundamentally simplifies service maintenance.

The service reusability principle dictates that services should be designed to maximize reuse. Similarly, the service composability principle advocates designing services so that they can be composed in various ways. Both principles require that a service contain only a specific type of logic e.g., either reusable or process-specific logic.[1] Restricting each layer to a particular functionality, simplifies the design of the service.

Usage

Diagram A
Diagram A
In the absence of any layers, services contain a mixture of different types of logic. This makes it difficult to manage these services.
Diagram B
Diagram B
A service inventory divided into layers where each layer contains the same type of logic.

Applying this pattern requires creating a service inventory blueprint, a list of services with associated functionality. Next, group the services into layers according to function. Adopting a common layering strategy across the enterprise facilitates reuse in other applications, because developers don't have as much to learn (or invent) when they join a project. One common layering uses task, entity and utility.[2]

An alternative layering from Bieberstein et al.,[3] involves five layers, namely enterprise, process, service, component and object.

The service layers pattern invokes a specific service architecture.

The top-down service delivery approach facilitates the use of this pattern.

See also

References

  1. ^ Thomas Erl.Introducing SOA Design Pattern[Online]. Date accessed:6 April 2010.
  2. ^ Wajid Khattak Service Layers[Online].Date accessed: 21 April 2010.
  3. ^ Bieberstein. et al.Service-oriented Architecture Compass: Business Value, Planning, and Enterprise Roadmap.FT Press, 2005. ISBN 0-13-187002-5, ISBN 978-0-13-187002-4