Introduction to SOA

advertisement
SERVICE ORIENTED ARCHITECTURE
Scenario of existing software
development in government
departments
Land
Records
Commercial
Taxes
Registration
Treasuries
 The information exchange between the
departments is through manual.
 Some locations it is point to point
Municipal
Corporation
Phases
 Application architecture of software
development is going through
different phases as technology is
changing from :
Main
frame
Client
Server
Web
Application
 . Net and Java Technology
Web
Services
Contd..
We need application architecture which
can simplify the information exchange
across the business processes, with well
defined invocable interfaces.
Service Oriented Architecture(SOA) can
simplify existing complicated
environment with introducing a concept
of Enterprise Service Bus(ESB).
What is Service Oriented
Architecture (SOA)?
 Service Oriented Architecture(SOA),
is an application architecture in
distributed computing environment ,
where business functions are
modularized and presented as
services
 A service is a reusable component
which is a part of building block to
form larger, more complex business
application functionalities
Stack of SOA
Presentation Layer(GUIS)
Access Layer(Services)
Logic Layer(Objects)
Data Layer(Tables)
Scenario of Software Development
with SOA
Land
Records
Registration
Municipal
Corporation
Enterprise Service Bus(ESB)
Commercial
Taxes
Treasuries
SOA Model
Publish
Service
Broker
Service
Provider
Find
Bind
Service
Requester
SOA Model (contd..)
 A service provider
provides a service interface for a software
asset that manages a specific set of tasks.
 A service requester
discovers and invokes other software
services to provide a business solution..
 A service broker
acts as a repository, yellow pages, or
clearing house for software interfaces that
are published by service providers.
Enabling Technologies..
XML: The Extensible Markup Language
 SOAP: Simple Object Access Protocol is an XML-based
lightweight protocol for the exchange of information
Provides mechanisms for:
-Defining communication unit – SOAP message
-Error Handling
-Extensions
-Data Representation
-Document-centric approach for business transactions
-Binding to HTTP
Contd..
 WSDL: The Web Services Description Language
is an XML vocabulary that provides a standard
way of describing service.
 A W3C standard XML document that describes
three fundamental properties of a service:
-What it is-operations (methods) it provides.
-How it is accessed-data format, protocols.
-Where it is located-protocol specific network
address.
Contd..
 UDDI: The Universal Description, Discovery
and Integration specification provides a
common set of SOAP APIs that enable the
implementation of a service broker.
 Global business registry
UDDI Information Model
PublisherAssertion
BusinessEntity
Info about relationship
between 2 parties
Info about business that publishes
Info about service
encapsulates
BusinessService
Descriptive info about
a service
encapsulates
BindingTemplate
Technical info about a service
end point
tModel
Descriptions on
specifications of
services
Web Services
Web services are web based applications that ,
dynamically interact with other applications
using open standards which include XML,
UDDI and SOAP.
What are Web Services?
 Definition from W3C
"Web Service is a software application
identified by a URI, whose interfaces
and bindings are capable of being
defined, described, and discovered by
XML artifacts and which supports
direct interactions with other software
applications using XML-based
messages via internet-based
protocols".
Contd..
 Every component that
works in a network,
is modular
is self-descriptive,
provides services independent of
platform and application,
 conforms to an open set of standards
and
 follows a common structure for
description and invocation.




Web Services Architecture
 Components
 Service Providers
 Service Brokers
 Service Requestors
 Operations
 Publish / Unpublish
 Find
 Bind
Server Stub
 Between the service and the network is a
server stub, sometimes called skeleton.
 Responsible for receiving a SOAP request
from the client stub and converting it into a
suitable form for the service- unmarshalling
 Also converts the response from the service
into a SOAP message for the client stub.
Client Stub
 Between client code and the network it is a
client stub, sometimes called client proxy.
 The client stub is responsible for taking a
request from the client and converting the
request into a SOAP request on the
network-marshalling.
 Also responsible for receiving SOAP
responses on network and converting to a
suitable form for client.
Steps
 Client calls client stub.
 SOAP request sent across the
network.
 Server stub receives request and
sends request to service.
 Service sends request to serve stub.
 Server stub sends result across
network to client stub.
 Client stub sends result to client.
How Web Services look like
View Of SOA
Tables  Object Hierarchies
Service Interface
Service Interface
Moving to SOA
Getting Started
 Creating a pure SOA environment will take a
long time
-Making everything SOAP-accessible may never
happen
 The initial problem is to create service-oriented
applications
-Service Oriented Architecture is built on this
 Different organizations move to SOA in
different ways
The Top-Down Approach
 How it works:
-Define a business architecture
-Discover what services are required
-Create service-oriented apps based
on this
 Pros:
-It’s elegant, clean and sensible
 Cons:
-It’s very difficult in most organizations
Getting the up-front funding and business buy-in is
tough
The Bottom-Up Approach
 How it works:
-Build a service-oriented app
Then build another one
-Next, work on central SOA issues, e.g.
security and management.
 Pros:
-It’s the only approach that works in most
organizations
 Cons:
-Its an inelegant, piecemeal approach
Conclusion:
 The mechanics of creating a service are
simple
 Designing a service-oriented application
is a bigger challenge
-Exposing the right services is hard
 Hardest of all are SOA’s organizational
changes
-The real challenges are human, not
technical
THANK YOU
Download