Service-Orientation Design Principles
Encyclopedia
The concept of service-orientation
Service-orientation
Service-orientation is a design paradigm to build computer software in the form of services. Like other design paradigms , service-orientation provides a governing approach to automate business logic as distributed systems...

 revolves around a set of principles
that shape the development of the solution logic encompassed by a service. These principles are known as the service-orientation design principles.

The Eight Service-Orientation Design Principles

Within software engineering, when developing software based on a particular design paradigm
Design paradigm
The term Design paradigm derives from the rather ambiguous idea of paradigm originating in Sociology of Science, which carries at least two main meanings:...

, there are always risks involved whether such a design paradigm would be successful or not. However, when developing software following service-oriented design paradigm, there are even bigger risks involved. This is because a service-oriented architecture usually spans across the different business areas of an organization and requires considerable upfront analysis. This means that SOA
Service-oriented architecture
In software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...

 adoption requires a game plan as without a set of concrete guidelines, SOA efforts are bound to fail. So in order to make sure that the move towards service-orientation is a positive change and it succeeds in delivering its promised benefits, it is necessary to follow a set of rules. By following these rules, one can avoid the pitfalls related to the SOA adoption.


The service-orientation design principles could be broadly categorized in to the following
eight principles from Thomas Erl
Thomas Erl
Thomas Erl is a Canadian author, and public speaker known as a major contributor in the fields of service-oriented architecture, service-orientation and cloud computing.- Biography :...

 Book :
  • Standardized Service Contract
    Standardized Service Contract
    The Standardized Service Contract is a design principle, applied within the service-orientation design paradigm, in order to guarantee that the service contracts within a service inventory adhere to the same set of design standards, which results in standardized service contracts across the...

  • Service Loose Coupling
    Service Loose Coupling
    Within the service-orientation design paradigm, Service Loose Coupling is a design principle that is applied to the services in order to ensure that the service contract is not tightly coupled to the service consumers and to the underlying service logic and implementation...

  • Service Abstraction
    Service Abstraction
    Service Abstraction is a design principle that is applied within the service-orientation design paradigm so that the information published in a service contract is limited to what is required to effectively utilize the service i.e. the service contract should not contain any superfluous information...

  • Service Reusability
    Service Reusability Principle
    Service Reusability Principle is a design principle that is applied within the service-orientation design paradigm, in order to create services that have the potential to be reused across the enterprise...

  • Service Autonomy
    Service Autonomy Principle
    Service Autonomy is a design principle that is applied within the service-orientation design paradigm, in order to services that have maximum control over their execution environment...

  • Service Statelessness
    Service Statelessness Principle
    Service Statelessness is a design principle that is applied within the service-orientation design paradigm, in order to design scalable services by freeing up the services from managing their state data whenever possible...

  • Service Discoverability
    Service Discoverability Principle
    Service Discoverability is a design principle, applied within the service-orientation design paradigm, which emphasizes making services discoverable by adding interpretable meta-data to increase service reuse and decrease the chance of developing services that overlap in function...

  • Service Composability
    Service Composability Principle
    Service Composability is a design principle, applied within the service-orientation design paradigm, which encourages the design of services in a manner so that they can be reused in multiple solutions that are themselves made up of composed services...




It is the application of these design principles that create technology independent services and hence provide interoperability in the long term.These design principles serve as a guideline for identifying services.

The Service-Orientation Design Principles and Strategic Goals

The application of these principles helps in attaining the underlying goals linked with the
adoption of service-orientation in the first place. These goals are strategic in nature i.e.
long term and look beyond the immediate needs of an organization. These strategic objectives could
be summarized in to the following seven goals & benefits:
  • Increased Intrinsic Interoperability
  • Increased Federation
  • Increased Vendor Diversification Options
  • Increased Business and Technology Alignment
  • Increased ROI
  • Increased Organizational Agility
  • Reduced IT Burden



Each of the above goals & benefits directly helps towards developing an agile organization that
can quickly respond to the ever changing market conditions with reduced efforts and time.

The Service-Orientation Design Principles and Characteristics

The service-orientation design principles further help in making a service-oriented solution
different to a traditional object-oriented solution by promoting distinct design
characteristics. The presence of these characteristics in a service-oriented solution
guarantees the realization of the seven aforementioned goals & benefits. There are four of
these service-orientation characteristics as follows from Thomas Erl
Thomas Erl
Thomas Erl is a Canadian author, and public speaker known as a major contributor in the fields of service-oriented architecture, service-orientation and cloud computing.- Biography :...

 book :
  • Vendor-neutral
  • Business-driven
  • Enterprise-centric
  • Composition-centric



A vendor-neutral service-oriented solution helps to evolve the underlying technology architecture in response to ever changing business requirements. By not being dependent on a particular vendor, any aging infrastructure could be replaced by more efficient technologies without the need for redesigning the whole solution from scratch. This also helps in creating a heterogeneous technology environment where particular business automation requirements are fulfilled by specific technologies.


Within an SOA, the development of solution logic is driven by the needs of the business and is designed in a manner that focuses on the long-term requirements of the business. As a result, the technology architecture is more aligned with the business needs.


Unlike traditional silo-based application development, an SOA takes into account the requirements of either the whole of the enterprise or at least some considerable part of it. As a result, the developed services are interoperable and reusable across the different segments of the enterprise.


A service-oriented solution enables to deal with new and changing requirements, within a reduced amount of time, by making use of existing services. The services are designed in a manner so that they can be recomposed i.e. become a part of different solutions.

The Application of The Service-Orientation Design Principles

The service-orientation design principles are applied during the service-oriented analysis and design process
Service-oriented modeling
Service-oriented modeling is the discipline of modeling business and software systems, for the purpose of designing and specifying service-oriented business systems within a variety of architectural styles, such as enterprise architecture, application architecture, service-oriented architecture,...

. The extent to which each of these principles could be applied is always relative and needs to be weighed against the overall goals and objectives of an organization as well as the time constraints. One important factor that needs to be kept in mind is that it is not just the application of these
design principles alone but the consistent application that guarantees the realization of the strategic goals linked with the adoption of service-orientation. This is because services are an enterprise resource, i.e. giving the confidence that they conform to certain standards and could be reused within multiple solutions, so in order to remain such a resource, they must emerge from a process to which these principles have been applied consistently, as an inconsistent application would result in services that are not compatible with each other, resulting in loss of the fundamental service-orientation design characteristics.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK