Beruflich Dokumente
Kultur Dokumente
Introduction
SOA stands for Service Oriented Architecture. The developers of SOA defines it as
“a style of multitier computing that helps organizations share logic and data among
multiple applications and usage modes”. So from the very definition we can
understand that SOA is distributed, and collaborates various applications which
were developed in various languages to make a service. With java platform
independence came into existence and with SOA language independence came
into existence. In SOA we will talk about and talk through services which are the
basic building blocks of SOA.
What is a Service?
The central concept of the Reference Model is that of service, which the Reference
Model defines as follows: A mechanism to enable access to one or more capabilities,
where the access is provided using a prescribed interface and is exercised
consistent with constraints and policies as specified by the service description.
The following are the principal concepts that the Reference Model defines around
services. Visibility, Interaction, and Real World Effect address the dynamic aspects
of services (interactions with services), while the remaining concepts address static
aspects:
• Visibility: The capacity for those with needs and those with capabilities to be able
to interact with each other. This is typically done by providing descriptions for such
aspects as functions and technical requirements, related constraints and policies,
and mechanisms for access or response.
• Real World Effect: The actual result of using a service. This may be the return of
information or the change in the state of entities (known or unknown) that are
involved in the interaction.
• Execution Context: The set of technical and business elements that form a path
between those with needs and those with capabilities and that permit service
providers and consumers to interact. All interactions are grounded in a particular
execution context, which permits service providers and consumers to interact and
provides a decision point for any policies and contracts that may be in force.
• Contract & Policy: A policy represents some constraint or condition on the use,
deployment or description of an owned entity as defined by any participant, while a
Header
• Name - Name of the service. Should indicate in general terms what it does,
but not be the only definition
• Version - The version of this service contract
• Owner - The person/team in charge of the service
• RACI
Responsible - The role is the person/team responsible for the
deliverables of this contract/service. All versions of the contract
Accountable - Ultimate Decision Maker in terms of this contract/service
Consulted - Who must be consulted before action is taken on this
contract/service. This is 2-way communication. These people have an
impact on the decision and/or the execution of that decision.
Informed - Who must be informed that a decision or action is being
taken. This is a 1-way communication. These people are impacted by
the decision or execution of that decision, but have no control over the
action.
• Type - This is the type of the service to help distinguish the layer in which it
resides. Different implementations will have different service types. Examples
of service types include:
Presentation
Process
Business
Data
Integration
Functional
• Functional Requirement (From Requirements Document) - Indicates the
functionality in specific bulleted items what exactly this service accomplishes.
The language should be such that it allows test cases to prove the
functionality is accomplished.
• Invocation - Indicates the invocation means of the service. This includes the
URL, interface, etc. There may be multiple Invocation paths for the same
service. We may have the same functionality for an internal and external
clients each with a different invocation means and interface. Examples:
ITON Technologies pvt ltd. 3
June 29, 2007 [SERVICE ORIENTED ARCHITECTURE]
SOAP
REST
Events Triggers
Non-Functional
• Security Constraints - Defines who can execute this service in terms of roles
or individual partners, etc. and which invocation mechanism they can invoke.
WebServices:
Web services are a technology that is well suited to implementing aservice-oriented
architecture. In essence, Web services are self-describing andmodular applications
that expose business logic as services that can be published, discovered, and
invoked over the Internet. Based on XML standards,Web services can be developed
as loosely coupled application components between the serviceconsumer and
provider using any programming language, any protocol, or any platform.