Introduction to Service Oriented Architecture (SOA) by slappypappy116

VIEWS: 466 PAGES: 24

									Presenter: Leonard Tchuta, IBM Certified SOA Solutions
Designer
Email: tchuta@yahoo.com
Blog: http://www.esoaconsulting.com/blog




1st December 2007                                        1
Agenda
 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

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




                                          3
What is SOA
 A service is a repeatable
  business task e.g. checking
  inventory level, checking
  account
 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



                                    4
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




                                                                    5
Business Process Modeling
                                                                         Bill
 A business is a collection of                                       Customer

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

  inventory, billing the customer
  and so on are all processes that                                    Schedule
                                                                       Product
  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

                                                                                 6
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
  using SOAP/HTTP or SOAP/JMS
 The Service Registry is a UDDI
  implementation and serves the
  service broker

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



                                          9
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


                               10
SOA Development Process




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


• Granularity is Defined by reuse
  potential
• Stateless
• Asynchronous




                                    12
Architectural Example1- Supply Chain
Management
 Business Case
 Company A owns three
  Manufacturing Centers
  producing three kinds of its
  products
 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
  System
 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
Agency
 Business Case
 Company B is a Corporate
  Travel Agency providing Travel
  packages to the fortune 500
  companies
 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
  Processes
                                            14

The Benefit of SOA
Business Value of SOA
• Increase response to changes in
  business requirements, that is
  agility.
• 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
   consistency
• Allow for localization of functions
   and standardization of cross-
   cutting concerns
• Reduce solution complexity
                                        15
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
  SOA
 Microsoft Plans to release an
  SOA development suite
                                      16
  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
      OOAD?
  •   How can we use SOA
      design principles in our
      small projects?




                                  18
CORBA and SOA compare
                   CORBA has no composite
                    application => tightly
                    coupled
                   CORBA is about Objects
                    and Object passing, SOA
                    is about Services and
                    Message passing
                   CORBA RMI/IIOP, SOA
                    SOAP/HTTP
                   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
                               SOA
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
solution
stack                          flexible EA




                                                                    20
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
  environment
                                   21
                                    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
  system
 Once the architectural
  blueprint is layout, we use
  OOAD and OOP for further
  analysis and implementation
  of each service




                                                           22
Audience questions (NB: Not all questions are
listed)
  • 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
      EAI?
  •   Can a web service                                             23
The End
Thanks




          24

								
To top