Introduction to Service Oriented Architecture (SOA) by slappypappy116

VIEWS: 466 PAGES: 24

									Presenter: Leonard Tchuta, IBM Certified SOA Solutions

1st December 2007                                        1
 The Evolution of EAI
 What is SOA
 SOA Prerequisite
 An SOA Solution- Services and composite Apps
 IBM SOA Lifecycle
 SOA Development Process
 The Design Style and Principles
 Architectural Example1
 Architectural Example2
 The Benefit of SOA
 The Race To SOA by IT Giants ( IBM, Microsoft, SUN)
 The Future - Light SOA
 Discussion, Q&A

The evolution of Enterprise Application
Integration EAI
 Phase1- Making Apps work
 P2P Integration Style
 Phase2- Resolving Complexity
 Introducing a Central Hub
 Phase3-Alignment with business
 Thinking Services
 Introducing an Enterprise Service
 Reusing Existing Service Assets

What is SOA
 A service is a repeatable
  business task e.g. checking
  inventory level, checking
 Service Orientation is a way
  of integrating your business as
  linked services
 Service Oriented
  Architecture is an
  Architectural design style and
  principles that enable the
  integration of your business as
  linked service

SOA Prerequisites
  • Business Process Modeling    If you have only a hammer,
  • Web Services                  every problem looks like a nail
  • Enterprise Service Bus       We need more than OOAD to
                                  do SOA

Business Process Modeling
 A business is a collection of                                       Customer

  processes, for example receiving   Star
                                              Enter       Validate
   customer order, checking your       t
                                                           Order                 End

  inventory, billing the customer
  and so on are all processes that                                    Schedule
  made up a business                                                  Shipment

 A Business Process consist of
  step by step activities or task
  perform over an interval of time
  in order to accomplish some
  business objectives
 Business Process Modeling is
  the design and execution of
  business processes
 The Business Process can be
  modeled BPMN and
  implemented in BPEL4WS

Web Service
 A web service is a software
  system design to support
  application to application
  interaction over a network (w3c)
 The web Service Provider
  (server) expose a web API that
  can be access over a
  network ,such as the internet,
  and executed remotely by the
  Service Requestor (client)
 The interface exposed by the
  Service Provider is defined using
  a WSDL document
 The Service Requestor and
  Service Provider communicate
 The Service Registry is a UDDI
  implementation and serves the
  service broker

Enterprise Service Bus
Orchestrating        business
  BPEL4WS Processes
Converting transport
 protocols between consumer
 and provider services
           SOAP/JMS =>
Transforming        message
 format between consumer and
 provider services
                customer class
 type in CRM maybe different
 from that in ERP
An SOA Solution- Services and composite
• Business Services –J2EE or .NET
  Generic services
  Adapter services
• Composite Application –
  Integrates services
  Orchestrate business process
• Runtime Infrastructure Products
  Enterprise Service Bus
    Application Server
  Business Process Monitoring

IBM SOA Lifecycle
 Model
•   Gather Requirements
•   Model and Simulate
•   Design
 Assemble
•   Discover
•   Construct and Test
•   Compose
 Deploy
•   Integrate People
•   Integrate Process
•   Integrate Information
 Manage
•   Manage IT Resource
•   Manage Service
•   Monitor Business Metrics

SOA Development Process

The Design Style and Principles
Service should be
• Loosely Coupling
• Reusable
• Extensible
• Location Transparent
• Interoperable

• Granularity is Defined by reuse
• Stateless
• Asynchronous

Architectural Example1- Supply Chain
 Business Case
 Company A owns three
  Manufacturing Centers
  producing three kinds of its
 The Manufacturing Center’s
  are Powered by three
  independent ERP Systems
  (OTS Package Applications)
 Company A also owns a
  Warehouse powered by an
  Inventory management
 Company A wants to exploits
  the Internet Sales Channel
  and accept orders directly
  from it customers through
  the internet
 Company A backend systems            13
  need to be integrated using
Architectural Example2 – Corporate Travel
 Business Case
 Company B is a Corporate
  Travel Agency providing Travel
  packages to the fortune 500
 Company B provides three
  main services: Flight Booking,
  Hotel Booking and Car Booking
 SOA can be used architect the
  backend of company B.
 Services can be reused across
  multiple business processes,
  for example the Check Credit
  Service can be used for the
  Flight, Hotel, Car Booking
The Benefit of SOA
Business Value of SOA
• Increase response to changes in
  business requirements, that is
• Ability to easily transcend
  organization boundaries
• Reduces new products or services
  development time.
• Exposes commodities in business
  processes as services

IT Value of SOA
• Services are built once and use
   many times
• Services are built by contract
• Promote process and tools
• Allow for localization of functions
   and standardization of cross-
   cutting concerns
• Reduce solution complexity
The Race To SOA by IT Giants ( IBM,
Microsoft, Sun)
 IBM holds the lion share for
  2006 SOA revenue
 IBM also announced a US $1
  billion investment in SOA
  R&D, Dan Power VP of SOA
  worldwide, IBM Websphere
  life , Shanghai 2006
 All companies have rolled out
  or are planning to rolled out
  SOA infrastructure products
  and tools
 IBM has released the
  Websphere line of Products for
 Microsoft Plans to release an
  SOA development suite
  codename Whitehorse as an
The Future - Light SOA
The trends show that
 the general
 movement is
 towards the
 adaptation of web
 service as the
 standard for EAI
There will be no
 need for a heavy
 middle doing
 message formatting
 and protocol
 conversion              17
Discussion, Q&A
  • What is the difference
      between SOA and CORBA?
  •   How is SOA related to the
      general EA
  •   When to use and when not
      to SOA?
  •   How is SOA related to
  •   How can we use SOA
      design principles in our
      small projects?

CORBA and SOA compare
                   CORBA has no composite
                    application => tightly
                   CORBA is about Objects
                    and Object passing, SOA
                    is about Services and
                    Message passing
                   CORBA RMI/IIOP, SOA
                   CORBA uses IDL for
                    components description,
                    SOA uses WSDL
                   CORBA still faces
                    problems with firewall,
                    SOA messages easily
                    transcends firewalls
                    (SOAP/HTTP)             19
      How is SOA related to the general EA?  Enterprise Architect

                              There is an overlap between
                               Enterprise Architecture EA and
General EA
framework                     It depends on the organization
                               under question. In certain
                               organizations, SOA addresses
                               all aspects EA
                              In other organizations, EA
                               addresses additional issues
                               like Business Architecture
SOA                           SOA can helps implement a
stack                          flexible EA

When to use and when not to SOA?
 Use SOA for EAI
 Use SOA when you need to
  make use of existing
  applications asset (CRM, SCM)
 Use SOA for long running
  business Processes
 Use SOA when Business
  Process frequently Changes

 Do not use SOA if speed is a
  very critical requirement
 Huge Middleware is not
  necessary for homogeneous
                                    OOAD and OOP
                                    are used for service
How is OOAD, OOP related to SOA     implementation

 At the level of the business
  process modeling and the
  general architectural blueprint
  layout, we think in terms of
  service and use techniques
  like SOAD, SOMA to identify
  individual services in the
 Once the architectural
  blueprint is layout, we use
  OOAD and OOP for further
  analysis and implementation
  of each service

Audience questions (NB: Not all questions are
  • How can we migrate to           • What is an adapter and what
      SOA?                            does it do ?
  •   Can SOA be implemented        • How do we obtain the services
      using programming               in the SOA architectural
      languages like PHP?             blueprint?
  •   What is the function of the   • Why does the ESB needs to
      composite application?          transform messages and how
  •   What is BPEL, how can we        does it perform the
      write BPEL codes, and           transformation?
      where do we deploy a BPEL     • How do we determine the
      application?                    granularity of a service ( fine
  •   What is the difference          grain or coarse grain) ?
      between the Central Hub
      style and the SOA style of
  •   Can a web service                                             23
The End


To top