Introduction
 About this Site
 About the Principles

Common Principles of Service-Orientation
 Service reusability
 Service contract
 Service loose coupling
 Service abstraction
 Service composability
 Service autonomy
 Service statelessness
 Service discoverability

How Service-Orientation Principles Inter-relate
 Service reusability
 Service contract
 Service loose coupling
 Service abstraction
 Service composability
 Service autonomy
 Service statelessness
 Service discoverability

Service-Orientation and Related Principles and Paradigms
 Separation of Concerns
 Object-Orientation (Part I)
 Object-Orientation (Part II)
 Object-Orientation (Part III)

More
 Advanced
   service-orientation

 Submit your opinions
 Training for SOA and
   Service-Orientation
 About the author
Services are discoverable
Discovery helps avoid the accidental creation of redundant services or services that implement redundant logic. Because each operation provides a potentially reusable piece of processing logic, metadata attached to a service needs to sufficiently describe not only the service�s overall purpose, but also the functionality offered by its operations.

Note that this service-orientation principle is related to but distinct from SOA discoverability. On an SOA level, discoverability refers to the architecture�s ability to provide a discovery mechanism, such as a service registry or directory. This effectively becomes part of the IT infrastructure and can support numerous implementations of SOA.

On a service level, the principle of discoverability refers to the design of an individual service so that it be as discoverable as possible.











This page contains excerpts from:

Service-Oriented Architecture:
Concepts, Technology, and Design

by Thomas Erl

(ISBN: 0131858580, Prentice Hall/PearsonPTR, Hardcover, 792 pages).

For more information, visit
www.soabooks.com.
Opinions

"Service-orientation is an important complement to object-orientation that applies the lessons learned from component software, message-oriented middleware and distributed object computing.

Service-orientation differs from object-orientation primarily in how it defines the term "application."

Object-oriented development focuses on applications that are built from interdependent class libraries.

Service-oriented development focuses on systems that are built from a set of autonomous services.

This difference has a profound impact on the assumptions one makes about the development experience."


- Don Box, Microsoft






www.soasystems.com

Copyright © 2005-2007 SOA Systems Inc.