SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Service Oriented Architecture
           (SOA)


                                             Gabriel Orce
                                             June 2010



         © Accenture 2010. All Rights Reserved.
Centra Tools

Raise Hand                 Audio/Connectivity Tips
                           •   Run the Audio Wizard
Yes / No                         •   Choose Tools/Audio Wizard from the
                                     menu at top of screen

Applause                   •   Close all network based
                               applications
                                 •   Outlook, MSN/AOL, other websites,
                                     Office Communicator, etc
Laugh
                           •   Connect via an Accenture LAN or
                               high speed internet connection
                                 •   If using a wireless connection, ensure
Text Chat                            your signal is as strong as possible

                           •   Monitor the Network Connectivity
Centra Volume Control          Bar
                                 •   Contact Learning Product Support if
                                     issues continue

Network Connectivity Bar
Asking Questions
Two Options:


1.   Ask live questions during the designated Q&A sessions:
        Press Raise Hand icon to get faculty’s attention


         Once called upon, there are two options to speak:
          - Click the Talk button or
          - Press the Ctrl key
     When done speaking, unselect the Talk button or release
     the Ctrl Key.

2.   Post questions at any time in the chat room.
Agenda
•Introduction

•SOA architectural principles

•Web enabled technologies for SOA

•SOA and Java

•Case study

•Q & A

                   © Accenture 2010. All Rights Reserved.   4
Introduction



To better understand what Service Oriented
Architecture is, we must first understand what
Service is, and what we mean by Architecture.




                 © Accenture 2010. All Rights Reserved.   5
Services

From a SOA perspective, a service is an abstracted, logical
view of a well-defined business functionality, which could be
consumed by clients in different applications or business
processes.

Services can be new software modules or can wrap around
existing legacy software to give them “service interfaces”.

Examples of typical services:
GetOrderStatus (input: order number, order type.
Returned: the status of the order).
SearchByAuthor (input: Name of author, type of product.
Returned: Titles of the products written by this author).

                     © Accenture 2010. All Rights Reserved.   6
Architecture

Software Architecture is the logical design of
interconnected software components that work towards
the objective of an existing or potential system given the
required resources.




                       © Accenture 2010. All Rights Reserved.   7
Service Oriented Architecture (SOA)

Service Oriented Architecture is a logical way of
designing a software system consisting of a collection of
loosely coupled services (components) that communicate
with each other via standard message exchanging
protocols and through standard interfaces. These service
components may provide services either to end-user
applications or other services distributed in a network.




                     © Accenture 2010. All Rights Reserved.   8
Related Concepts

Service Oriented Integration (SOI): It is the act of
adapting applications and protocols to a SOA environment.
SOI addresses the integration of an IT legacy systems as
reusable services for a SOA environment from an IT
organization. As such, the problems of integrating legacy
and inflexible heterogeneous systems are addressed by
enabling IT organizations to offer the functionality locked in
existing applications as reusable services.

Service Oriented Computing (SOC): It refers to the
paradigm that represents computation in SOA.



                      © Accenture 2010. All Rights Reserved.     9
Agenda
•Introduction

•SOA architectural principles

•Web enabled technologies for SOA

•SOA and Java

•Case study

•Q & A

                   © Accenture 2010. All Rights Reserved.   10
Key Characteristics for Services in SOA
•Loose coupling — Services should be connected to
clients and other services using standard, decoupled
message-based methods. XML document exchanging is
most common.

•Interface-based design — Services implement separately
defined interfaces. The benefit of this is that multiple
services can implement a common interface and a service
can implement multiple interfaces.

•Discoverable — Services need to be found at both design
time and run time, not only by unique identity but also by
interface identity and by service kind.

                     © Accenture 2010. All Rights Reserved.   11
Key Characteristics for Services in SOA

•Coarse-grained — Operations on services are frequently
implemented to encompass more functionality and operate
on larger data sets, compared with component-interface
design.

•Single instance — Unlike component-based development,
which instantiates components as needed, each service is
a single, always running instance that a number of clients
communicate with.




                     © Accenture 2010. All Rights Reserved.   12
Service Types in SOA
Service provider — The software entity that implements a service specification.
Service requester — The software entity that calls a service provider. Note that a
Service requester can be an end-user application or another service.
Service broker — The software entity responsible for linking a requester to a
service provider. A service broker hosts a registry of service descriptions.

Service providers publish services to a service broker. Service requesters find
required services using a service broker and bind to them.

                                         Service
                                         Broker
                              h
                              is




                                                           fin
                           bl




                                                              d
                         pu




                    Service
                                                                   Service
                    Provide
                                           bind                    Client
                       r

                              © Accenture 2010. All Rights Reserved.                 13
Composition and Orchestration

Service orchestration represents the mechanism for
composing services into larger ones to perform a specific
business process. This includes the business logic and
execution order of the interactions between the services
and end clients.

The same services can be reused via recomposition (e.g.,
use a subset of them, but orchestrate them differently)




                     © Accenture 2010. All Rights Reserved.   14
Composition and Orchestration

         Relocation Process



      Retrieve employee name                    Employee Name Company employee
         Given employee ID                                     information web
                                                Employee ID         service




                                                 Confirmation
          Book flight on date                                   Airline booking web
                                                                       service
                                                      Book




   Book employee in hotel on arrival            Confirmation
                                                                Hotel booking web
               date                                                   service
                                                      Book




                   © Accenture 2010. All Rights Reserved.                             15
Agenda
•Introduction

•SOA architectural principles

•Web enabled technologies for SOA

•SOA and Java

•Case study

•Q & A

                   © Accenture 2010. All Rights Reserved.   16
Technologies used in SOA

Web services: are software systems designed to support
interoperable machine-to-machine interaction over a network. This
interoperability is gained through a set of XML-based open
standards, such as WSDL, SOAP, and UDDI. These standards
provide a common approach for defining, publishing, and using
web services. (1)
XML: is a text-based markup language specification from the
WWW Consortium (W3C). In SOA it is widely used for representing
arbitrary data structures and messaging protocols.
WSDL (Web Services Description Language): is a XML-based
language that provides a simple way for service providers to
describe the format of requests and response messages. In
general, WSDL provides an abstract language for defining the
published operations of a service with their respective parameters
and data types. The language also addresses the definition of the
location and binding details of the service.
                       © Accenture 2010. All Rights Reserved.        17
Technologies used in SOA
 UDDI (Universal Description, Discovery, and Integration): This
specification provides a common set of SOAP APIs that enable the
implementation of a service broker. It helps facilitate the creation,
description, discovery, and integration of Web-based services.

SOAP (Simple Object Access Protocol): is a lightweight messaging
XML-based protocol for the exchange of information in a distributed
environment. It is completely vendor neutral. SOAP defines a protocol
between requester and provider objects, such that the requesting
objects can perform a remote method invocation on the providing
objects. SOAP is also basically independent of the transport protocol
(http, smtp, jms, etc.). SOAP’s main criticism is usually on the
overhead of the XML processing it implies.

REST (Representational State Transfer): is a web architectural style,
which bases itself on the full exploitation of the http protocol. It
attempts to reuse the http methods making an equivalence between
your semantic operation and the http methods (get, post, put, delete);
it is not based upon "message" concepts as is SOAP.                      18
WSDL 1.1 Format
                              definitions Root element of the WSDL document. Defines the
definitions                               name of the web service and declares multiple
                                          namespaces used throughout the remainder of the
               types                      document .

              message         types           Describes all the data types used between the client
                                              and server (not required if the service uses only XML
                                              Schema built-in simple types).
              portType
     operations               message         Describes a single one-way message, whether a
       input messages                         message request or message response.

       output messages        portType        Abstract set of operations supported by one or more
                                              endpoints (commonly known as an interface);
                                              operations are defined by an exchange of messages.

              binding         binding         Concrete protocol and data format specification for a
                                              particular portType.
               service        service         The service element defines the address for invoking
          port                                the specified service. Most commonly, this includes a
                                              URL for invoking the SOAP service (the “port”).



                           © Accenture 2010. All Rights Reserved.                               19
SOAP 1.2 Format


                          Envelope       Mandatory. Top element of the XML document
Envelope                                 representing a SOAP message.
  Header (optional)
                          Header         Optional. Contains information that might
                                         influence payload processing and that would be
  Body
                                         subject to processing by intermediate SOAP
                                         nodes. For example: Authentication information.




                          Body           Mandatory. Contains the payload of the
                                         message. The Body is a container for mandatory
                                         information intended for the ultimate recipient of
                                         the message.




                      © Accenture 2010. All Rights Reserved.                                  20
Enterprise Service Bus - ESB
ESB is an open standards, message-based, distributed, integration solution
that provides routing, invocation, and mediation services to facilitate the
interactions of disparate distributed information technology resources
(applications, services, information, platforms) in a reliable manner. (Brenda
Michelson, Elemental Links) (2)

                          ESB                          Service
                        Manageme                      Orchestrati
                           nt                             on




            Adapter               Adapter               Adapter     Adapter
                                   .NET                 J2EE         Legacy
                                  Applicat             Applicati    Applicati
                                    ion                  on            on
            Legacy
           Databases
                          © Accenture 2010. All Rights Reserved.                21
Enterprise Service Bus - ESB

Characteristics:
   • Uses XML as the standard communication language
   • Usually does not depend on an OS or a programming language
   • Supports web services standards
   • Includes support for orchestration
   • Includes intelligent content-based routing
   • Supports messaging (e.g., web services messaging standards or
   JMS)
   • Includes standard adapters

ESB can assist in giving a SOA solution (but using ESB does not imply a
SOA solution)




                         © Accenture 2010. All Rights Reserved.           22
Agenda
•Introduction

•SOA architectural principles

•Web enabled technologies for SOA

•SOA and Java

•Case study

•Q & A

                   © Accenture 2010. All Rights Reserved.   23
SOA and Java

Web Services can be implemented with Java. Some Web
Services Frameworks that can be used to facilitate this are:

   • XFire/CXF
   • Apache Axis
   • Spring-WS

First let us view the invocation process to understand how web
services work.




                     © Accenture 2010. All Rights Reserved.    24
Service Invocation Process



          Client                                         Server


                    Create                      Receive
                   Request                      Request
                    SOAP                         SOAP
 Java
 code
starts
proces
                                                                   Java
   s                                                              Object
                                                Create
                Receive                        Response
               Response                         SOAP
                 SOAP




                      © Accenture 2010. All Rights Reserved.         25
Service Invocation Process

Example: Server-side Service Invocation (after client creates SOAP
message with request and sends it to server)

1.SOAP message is received from transport (e.g., http).
2.Invoking handlers preprocess the message. E.g., determine target service
(since service may have more than one)
3.Dispatch – given the WSDL operation, determine which Java
class/method to invoke
4.Deserialization – SOAP message content is deserialized into the Java
classes.
5.Java classes do the data processing.
6.Serialize object into an appropriate XML.
7.Wrap this XML into a SOAP message.
8.Respond - place response SOAP on transport.



                         © Accenture 2010. All Rights Reserved.        26
Web Service Code Generation

Java or WSDL code can be generated automatically depending on the
approach.

Two basic approaches:

1.Bottom-up: Write the code and generate the WSDL from it (e.g., with
Axis2, use the Java2WSDL tool).

2.Top-Down: Create WSDL and generate the code based on it (e.g. with
Axis2, use the WSDL2Java tool).




                        © Accenture 2010. All Rights Reserved.          27
Java examples


Let’s go over some practical examples on:

1.Accessing existing Web Services using a Web
Service Testing Tool (SoapUI)

2.Creating a Web service




                 © Accenture 2010. All Rights Reserved.   28
Agenda
•Introduction

•SOA architectural principles

•Web enabled technologies for SOA

•SOA and Java

•Case study

•Q & A

                   © Accenture 2010. All Rights Reserved.   29
Example SOA Case Study


Case study of a SOA implementation




                © Accenture 2010. All Rights Reserved.   30
Questions & Comments




Two options to ask a question or add your comments to the discussion:
       Use Raise Hand and then hold down the TALK icon or press the
        CTRL key; release when done
       Post your question in the Chat Room
                      © Accenture 2010. All
                      Rights Reserved.
References

1. Service Oriented Architecture (SOA) and Web Services: The Road to
   Enterprise Application Integration(EAI) -
   http://java.sun.com/developer/technicalArticles/WebServices/soa/

2. Service Oriented Integration With Apache ServiceMix -
   http://servicemix.apache.org/articles.data/SOIWithSMX.pdf

3. SOA Using Java Web Services – Mark D. Hansen – 2007 Prentice Hall

4. Service Oriented Architecture with Java – Binildas CA, Malhar Barai,
   Vincenzo Caselli – 2008 Packt Publishing

5. Services-based enterprise integration patterns made easy, Part 4:
   Enterprise service bus -
   http://www.ibm.com/developerworks/webservices/library/ws-
   intpatterns4/



                          © Accenture 2010. All Rights Reserved.          32
Thank you for
 participating!

Weitere ähnliche Inhalte

Was ist angesagt?

Open Group Presentation Iterative Approach To Build An Ea For Hix Final
Open Group Presentation  Iterative Approach To Build An Ea For Hix   FinalOpen Group Presentation  Iterative Approach To Build An Ea For Hix   Final
Open Group Presentation Iterative Approach To Build An Ea For Hix Finalmdesai005
 
Viestinnän seminaari 8.11.2012 / Exchange
Viestinnän seminaari 8.11.2012 / ExchangeViestinnän seminaari 8.11.2012 / Exchange
Viestinnän seminaari 8.11.2012 / ExchangeSalcom Group
 
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...virtual-campus
 
Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...
Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...
Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...Global Business Events
 
An Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business ProcessesAn Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business ProcessesTammo van Lessen
 
Openbravo for retail presentation en(1)
Openbravo for retail presentation   en(1)Openbravo for retail presentation   en(1)
Openbravo for retail presentation en(1)spocsys
 
Enterprise domain sisus 1709
Enterprise domain sisus 1709Enterprise domain sisus 1709
Enterprise domain sisus 1709webhostingguy
 
Oracle Self Service Webcenter Soa Telco V 5
Oracle Self Service Webcenter Soa Telco V 5Oracle Self Service Webcenter Soa Telco V 5
Oracle Self Service Webcenter Soa Telco V 5Angel Ortíz Pérez
 
A comparative study of soap vs rest web services provisioning techniques for ...
A comparative study of soap vs rest web services provisioning techniques for ...A comparative study of soap vs rest web services provisioning techniques for ...
A comparative study of soap vs rest web services provisioning techniques for ...Alexander Decker
 
Imaginea product-support-offering
Imaginea product-support-offeringImaginea product-support-offering
Imaginea product-support-offeringRajaneeshChandra
 
Ria2010 workshop dev mobile
Ria2010 workshop dev mobileRia2010 workshop dev mobile
Ria2010 workshop dev mobileMichael Chaize
 
Cloud 101 & BPOS - Microsoft Webinar
Cloud 101 & BPOS - Microsoft WebinarCloud 101 & BPOS - Microsoft Webinar
Cloud 101 & BPOS - Microsoft WebinarPiyush Saggi
 
Soft Solvers Technologies Corporate Presentation
Soft Solvers Technologies Corporate PresentationSoft Solvers Technologies Corporate Presentation
Soft Solvers Technologies Corporate PresentationSoftsolvers
 

Was ist angesagt? (17)

Open Group Presentation Iterative Approach To Build An Ea For Hix Final
Open Group Presentation  Iterative Approach To Build An Ea For Hix   FinalOpen Group Presentation  Iterative Approach To Build An Ea For Hix   Final
Open Group Presentation Iterative Approach To Build An Ea For Hix Final
 
Viestinnän seminaari 8.11.2012 / Exchange
Viestinnän seminaari 8.11.2012 / ExchangeViestinnän seminaari 8.11.2012 / Exchange
Viestinnän seminaari 8.11.2012 / Exchange
 
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
 
Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...
Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...
Hugues Treguier is the Director of Products for Europe at Arkadin - Moving to...
 
An Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business ProcessesAn Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business Processes
 
Belgian public sector interoperability
Belgian public sector interoperabilityBelgian public sector interoperability
Belgian public sector interoperability
 
Nuno Godinho
Nuno GodinhoNuno Godinho
Nuno Godinho
 
Openbravo for retail presentation en(1)
Openbravo for retail presentation   en(1)Openbravo for retail presentation   en(1)
Openbravo for retail presentation en(1)
 
Enterprise domain sisus 1709
Enterprise domain sisus 1709Enterprise domain sisus 1709
Enterprise domain sisus 1709
 
Oracle Self Service Webcenter Soa Telco V 5
Oracle Self Service Webcenter Soa Telco V 5Oracle Self Service Webcenter Soa Telco V 5
Oracle Self Service Webcenter Soa Telco V 5
 
A comparative study of soap vs rest web services provisioning techniques for ...
A comparative study of soap vs rest web services provisioning techniques for ...A comparative study of soap vs rest web services provisioning techniques for ...
A comparative study of soap vs rest web services provisioning techniques for ...
 
Lyricnew ppt
Lyricnew pptLyricnew ppt
Lyricnew ppt
 
OSS Business models
OSS Business modelsOSS Business models
OSS Business models
 
Imaginea product-support-offering
Imaginea product-support-offeringImaginea product-support-offering
Imaginea product-support-offering
 
Ria2010 workshop dev mobile
Ria2010 workshop dev mobileRia2010 workshop dev mobile
Ria2010 workshop dev mobile
 
Cloud 101 & BPOS - Microsoft Webinar
Cloud 101 & BPOS - Microsoft WebinarCloud 101 & BPOS - Microsoft Webinar
Cloud 101 & BPOS - Microsoft Webinar
 
Soft Solvers Technologies Corporate Presentation
Soft Solvers Technologies Corporate PresentationSoft Solvers Technologies Corporate Presentation
Soft Solvers Technologies Corporate Presentation
 

Andere mochten auch

Balfour callum pre production feedback ajo
Balfour callum pre production feedback ajoBalfour callum pre production feedback ajo
Balfour callum pre production feedback ajoC-Dawgg
 
CompTIA Network+ ce certificate
CompTIA Network+ ce certificateCompTIA Network+ ce certificate
CompTIA Network+ ce certificateKenneth Mauldin
 
Jawatan kuasa induk kejohanan sukan sk.ibok 2013
Jawatan kuasa induk kejohanan sukan sk.ibok 2013Jawatan kuasa induk kejohanan sukan sk.ibok 2013
Jawatan kuasa induk kejohanan sukan sk.ibok 2013abashajisidek
 
Target audience
Target audienceTarget audience
Target audiencebalfourc1
 
Vetusta morla-trazan-sus-nuevos-qmapasq
Vetusta morla-trazan-sus-nuevos-qmapasqVetusta morla-trazan-sus-nuevos-qmapasq
Vetusta morla-trazan-sus-nuevos-qmapasqcristina_aparicio
 
Billie joe armstrong
Billie joe armstrongBillie joe armstrong
Billie joe armstrongevaysandra
 
Carey sophie production feedback
Carey sophie  production feedbackCarey sophie  production feedback
Carey sophie production feedbackGEccles
 
Perancangan projek yang dilakukan
Perancangan projek yang dilakukanPerancangan projek yang dilakukan
Perancangan projek yang dilakukanhalwaizzati
 
Curriculum Vitae- Mohammad Nowshad Sikder
Curriculum Vitae- Mohammad Nowshad SikderCurriculum Vitae- Mohammad Nowshad Sikder
Curriculum Vitae- Mohammad Nowshad SikderMd. Nowshad Sikder
 
ROI Rage: Tying KPIs to Marketing Strategy and Tactics
ROI Rage: Tying KPIs to Marketing Strategy and TacticsROI Rage: Tying KPIs to Marketing Strategy and Tactics
ROI Rage: Tying KPIs to Marketing Strategy and TacticsIan Lurie
 

Andere mochten auch (16)

черга на 2015 2016 ясли
черга на 2015 2016 ясличерга на 2015 2016 ясли
черга на 2015 2016 ясли
 
Brain Banks Sheet 09_2009
Brain Banks Sheet 09_2009Brain Banks Sheet 09_2009
Brain Banks Sheet 09_2009
 
Ref Letter
Ref LetterRef Letter
Ref Letter
 
Balfour callum pre production feedback ajo
Balfour callum pre production feedback ajoBalfour callum pre production feedback ajo
Balfour callum pre production feedback ajo
 
CompTIA Network+ ce certificate
CompTIA Network+ ce certificateCompTIA Network+ ce certificate
CompTIA Network+ ce certificate
 
Modelo micro escala r line
Modelo micro escala r lineModelo micro escala r line
Modelo micro escala r line
 
Jawatan kuasa induk kejohanan sukan sk.ibok 2013
Jawatan kuasa induk kejohanan sukan sk.ibok 2013Jawatan kuasa induk kejohanan sukan sk.ibok 2013
Jawatan kuasa induk kejohanan sukan sk.ibok 2013
 
Target audience
Target audienceTarget audience
Target audience
 
Vetusta morla-trazan-sus-nuevos-qmapasq
Vetusta morla-trazan-sus-nuevos-qmapasqVetusta morla-trazan-sus-nuevos-qmapasq
Vetusta morla-trazan-sus-nuevos-qmapasq
 
Billie joe armstrong
Billie joe armstrongBillie joe armstrong
Billie joe armstrong
 
El afiche
El aficheEl afiche
El afiche
 
Carey sophie production feedback
Carey sophie  production feedbackCarey sophie  production feedback
Carey sophie production feedback
 
4 etapy rozwoju osobistego w myśleniu krytycznym
4 etapy rozwoju osobistego w myśleniu krytycznym 4 etapy rozwoju osobistego w myśleniu krytycznym
4 etapy rozwoju osobistego w myśleniu krytycznym
 
Perancangan projek yang dilakukan
Perancangan projek yang dilakukanPerancangan projek yang dilakukan
Perancangan projek yang dilakukan
 
Curriculum Vitae- Mohammad Nowshad Sikder
Curriculum Vitae- Mohammad Nowshad SikderCurriculum Vitae- Mohammad Nowshad Sikder
Curriculum Vitae- Mohammad Nowshad Sikder
 
ROI Rage: Tying KPIs to Marketing Strategy and Tactics
ROI Rage: Tying KPIs to Marketing Strategy and TacticsROI Rage: Tying KPIs to Marketing Strategy and Tactics
ROI Rage: Tying KPIs to Marketing Strategy and Tactics
 

Ähnlich wie 2010 06-18 service oriented architecture (soa) v4

Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...ecosio GmbH
 
Service Meshes Made Easy
Service Meshes Made EasyService Meshes Made Easy
Service Meshes Made EasyTodd Radel
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Servicesecosio GmbH
 
Service oriented software engineering
Service oriented software engineeringService oriented software engineering
Service oriented software engineeringSweta Kumari Barnwal
 
Web service implementation
Web service implementationWeb service implementation
Web service implementationYatindra Sahu
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Biniam Asnake
 
Maintenance Best Practices for Service Oriented
Maintenance Best Practices for Service OrientedMaintenance Best Practices for Service Oriented
Maintenance Best Practices for Service Orientedaliraza786
 
CBSE VS SOA Presentation
CBSE VS SOA PresentationCBSE VS SOA Presentation
CBSE VS SOA PresentationMaulik Parikh
 
CBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU PresentationCBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU Presentationmgp1560
 
Unit 3-SOA Technologies
Unit 3-SOA TechnologiesUnit 3-SOA Technologies
Unit 3-SOA Technologiesssuser3a47cb
 
Pal gov.tutorial3.session1.soa
Pal gov.tutorial3.session1.soaPal gov.tutorial3.session1.soa
Pal gov.tutorial3.session1.soaMustafa Jarrar
 
Web Services Foundation Technologies
Web Services Foundation TechnologiesWeb Services Foundation Technologies
Web Services Foundation TechnologiesPankaj Saharan
 

Ähnlich wie 2010 06-18 service oriented architecture (soa) v4 (20)

Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
 
Service Meshes Made Easy
Service Meshes Made EasyService Meshes Made Easy
Service Meshes Made Easy
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Services
 
Service oriented software engineering
Service oriented software engineeringService oriented software engineering
Service oriented software engineering
 
Cc unit 2 updated
Cc unit 2 updatedCc unit 2 updated
Cc unit 2 updated
 
Performance in soa context
Performance in soa contextPerformance in soa context
Performance in soa context
 
Web service implementation
Web service implementationWeb service implementation
Web service implementation
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)
 
Maintenance Best Practices for Service Oriented
Maintenance Best Practices for Service OrientedMaintenance Best Practices for Service Oriented
Maintenance Best Practices for Service Oriented
 
Introduction to Web Services
Introduction to Web ServicesIntroduction to Web Services
Introduction to Web Services
 
CBSE VS SOA Presentation
CBSE VS SOA PresentationCBSE VS SOA Presentation
CBSE VS SOA Presentation
 
CBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU PresentationCBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU Presentation
 
Basic concepts of soa
Basic concepts of soaBasic concepts of soa
Basic concepts of soa
 
soa ppt v7.ppt
soa ppt v7.pptsoa ppt v7.ppt
soa ppt v7.ppt
 
Unit 3-SOA Technologies
Unit 3-SOA TechnologiesUnit 3-SOA Technologies
Unit 3-SOA Technologies
 
Pal gov.tutorial3.session1.soa
Pal gov.tutorial3.session1.soaPal gov.tutorial3.session1.soa
Pal gov.tutorial3.session1.soa
 
Web Services Foundation Technologies
Web Services Foundation TechnologiesWeb Services Foundation Technologies
Web Services Foundation Technologies
 
Whitepaper : Microservices In or Out
Whitepaper : Microservices   In or OutWhitepaper : Microservices   In or Out
Whitepaper : Microservices In or Out
 

Mehr von alvaro alcocer sotil (20)

Clase ciencia - Huesos
Clase ciencia - HuesosClase ciencia - Huesos
Clase ciencia - Huesos
 
Rm rompecabeza
Rm rompecabezaRm rompecabeza
Rm rompecabeza
 
Locomocion en animales
Locomocion en animalesLocomocion en animales
Locomocion en animales
 
Presentacion comuniccaion
Presentacion comuniccaionPresentacion comuniccaion
Presentacion comuniccaion
 
El trabajo académico chomsky
El trabajo académico chomskyEl trabajo académico chomsky
El trabajo académico chomsky
 
[002665]
[002665][002665]
[002665]
 
Catedral de-lima-historia-nc2ba-51-pps
Catedral de-lima-historia-nc2ba-51-ppsCatedral de-lima-historia-nc2ba-51-pps
Catedral de-lima-historia-nc2ba-51-pps
 
Proceso de ventas 2013
Proceso de ventas 2013Proceso de ventas 2013
Proceso de ventas 2013
 
Royal plaza
Royal plazaRoyal plaza
Royal plaza
 
Plan de marketing
Plan de marketingPlan de marketing
Plan de marketing
 
Intercambio de publicidad
Intercambio de publicidadIntercambio de publicidad
Intercambio de publicidad
 
Producto marca
Producto   marcaProducto   marca
Producto marca
 
Plan de mk tcompleto (3)
Plan de mk tcompleto (3)Plan de mk tcompleto (3)
Plan de mk tcompleto (3)
 
La marca debe ser humana
La marca debe ser humanaLa marca debe ser humana
La marca debe ser humana
 
3º sesion la competencia
3º sesion la competencia3º sesion la competencia
3º sesion la competencia
 
2ºsesion beneficios de la planeacion de marketing
2ºsesion beneficios de la planeacion de marketing2ºsesion beneficios de la planeacion de marketing
2ºsesion beneficios de la planeacion de marketing
 
1º sesion planeamiento estratégico de marketing
1º sesion planeamiento estratégico de marketing1º sesion planeamiento estratégico de marketing
1º sesion planeamiento estratégico de marketing
 
Aprendiendo publicidad ppt final paola
Aprendiendo publicidad ppt final paolaAprendiendo publicidad ppt final paola
Aprendiendo publicidad ppt final paola
 
Agencia de publicidad la campaña publicitaria -tipos
Agencia de  publicidad   la campaña publicitaria -tiposAgencia de  publicidad   la campaña publicitaria -tipos
Agencia de publicidad la campaña publicitaria -tipos
 
10º
 10º 10º
10º
 

2010 06-18 service oriented architecture (soa) v4

  • 1. Service Oriented Architecture (SOA) Gabriel Orce June 2010 © Accenture 2010. All Rights Reserved.
  • 2. Centra Tools Raise Hand Audio/Connectivity Tips • Run the Audio Wizard Yes / No • Choose Tools/Audio Wizard from the menu at top of screen Applause • Close all network based applications • Outlook, MSN/AOL, other websites, Office Communicator, etc Laugh • Connect via an Accenture LAN or high speed internet connection • If using a wireless connection, ensure Text Chat your signal is as strong as possible • Monitor the Network Connectivity Centra Volume Control Bar • Contact Learning Product Support if issues continue Network Connectivity Bar
  • 3. Asking Questions Two Options: 1. Ask live questions during the designated Q&A sessions:  Press Raise Hand icon to get faculty’s attention  Once called upon, there are two options to speak: - Click the Talk button or - Press the Ctrl key When done speaking, unselect the Talk button or release the Ctrl Key. 2. Post questions at any time in the chat room.
  • 4. Agenda •Introduction •SOA architectural principles •Web enabled technologies for SOA •SOA and Java •Case study •Q & A © Accenture 2010. All Rights Reserved. 4
  • 5. Introduction To better understand what Service Oriented Architecture is, we must first understand what Service is, and what we mean by Architecture. © Accenture 2010. All Rights Reserved. 5
  • 6. Services From a SOA perspective, a service is an abstracted, logical view of a well-defined business functionality, which could be consumed by clients in different applications or business processes. Services can be new software modules or can wrap around existing legacy software to give them “service interfaces”. Examples of typical services: GetOrderStatus (input: order number, order type. Returned: the status of the order). SearchByAuthor (input: Name of author, type of product. Returned: Titles of the products written by this author). © Accenture 2010. All Rights Reserved. 6
  • 7. Architecture Software Architecture is the logical design of interconnected software components that work towards the objective of an existing or potential system given the required resources. © Accenture 2010. All Rights Reserved. 7
  • 8. Service Oriented Architecture (SOA) Service Oriented Architecture is a logical way of designing a software system consisting of a collection of loosely coupled services (components) that communicate with each other via standard message exchanging protocols and through standard interfaces. These service components may provide services either to end-user applications or other services distributed in a network. © Accenture 2010. All Rights Reserved. 8
  • 9. Related Concepts Service Oriented Integration (SOI): It is the act of adapting applications and protocols to a SOA environment. SOI addresses the integration of an IT legacy systems as reusable services for a SOA environment from an IT organization. As such, the problems of integrating legacy and inflexible heterogeneous systems are addressed by enabling IT organizations to offer the functionality locked in existing applications as reusable services. Service Oriented Computing (SOC): It refers to the paradigm that represents computation in SOA. © Accenture 2010. All Rights Reserved. 9
  • 10. Agenda •Introduction •SOA architectural principles •Web enabled technologies for SOA •SOA and Java •Case study •Q & A © Accenture 2010. All Rights Reserved. 10
  • 11. Key Characteristics for Services in SOA •Loose coupling — Services should be connected to clients and other services using standard, decoupled message-based methods. XML document exchanging is most common. •Interface-based design — Services implement separately defined interfaces. The benefit of this is that multiple services can implement a common interface and a service can implement multiple interfaces. •Discoverable — Services need to be found at both design time and run time, not only by unique identity but also by interface identity and by service kind. © Accenture 2010. All Rights Reserved. 11
  • 12. Key Characteristics for Services in SOA •Coarse-grained — Operations on services are frequently implemented to encompass more functionality and operate on larger data sets, compared with component-interface design. •Single instance — Unlike component-based development, which instantiates components as needed, each service is a single, always running instance that a number of clients communicate with. © Accenture 2010. All Rights Reserved. 12
  • 13. Service Types in SOA Service provider — The software entity that implements a service specification. Service requester — The software entity that calls a service provider. Note that a Service requester can be an end-user application or another service. Service broker — The software entity responsible for linking a requester to a service provider. A service broker hosts a registry of service descriptions. Service providers publish services to a service broker. Service requesters find required services using a service broker and bind to them. Service Broker h is fin bl d pu Service Service Provide bind Client r © Accenture 2010. All Rights Reserved. 13
  • 14. Composition and Orchestration Service orchestration represents the mechanism for composing services into larger ones to perform a specific business process. This includes the business logic and execution order of the interactions between the services and end clients. The same services can be reused via recomposition (e.g., use a subset of them, but orchestrate them differently) © Accenture 2010. All Rights Reserved. 14
  • 15. Composition and Orchestration Relocation Process Retrieve employee name Employee Name Company employee Given employee ID information web Employee ID service Confirmation Book flight on date Airline booking web service Book Book employee in hotel on arrival Confirmation Hotel booking web date service Book © Accenture 2010. All Rights Reserved. 15
  • 16. Agenda •Introduction •SOA architectural principles •Web enabled technologies for SOA •SOA and Java •Case study •Q & A © Accenture 2010. All Rights Reserved. 16
  • 17. Technologies used in SOA Web services: are software systems designed to support interoperable machine-to-machine interaction over a network. This interoperability is gained through a set of XML-based open standards, such as WSDL, SOAP, and UDDI. These standards provide a common approach for defining, publishing, and using web services. (1) XML: is a text-based markup language specification from the WWW Consortium (W3C). In SOA it is widely used for representing arbitrary data structures and messaging protocols. WSDL (Web Services Description Language): is a XML-based language that provides a simple way for service providers to describe the format of requests and response messages. In general, WSDL provides an abstract language for defining the published operations of a service with their respective parameters and data types. The language also addresses the definition of the location and binding details of the service. © Accenture 2010. All Rights Reserved. 17
  • 18. Technologies used in SOA UDDI (Universal Description, Discovery, and Integration): This specification provides a common set of SOAP APIs that enable the implementation of a service broker. It helps facilitate the creation, description, discovery, and integration of Web-based services. SOAP (Simple Object Access Protocol): is a lightweight messaging XML-based protocol for the exchange of information in a distributed environment. It is completely vendor neutral. SOAP defines a protocol between requester and provider objects, such that the requesting objects can perform a remote method invocation on the providing objects. SOAP is also basically independent of the transport protocol (http, smtp, jms, etc.). SOAP’s main criticism is usually on the overhead of the XML processing it implies. REST (Representational State Transfer): is a web architectural style, which bases itself on the full exploitation of the http protocol. It attempts to reuse the http methods making an equivalence between your semantic operation and the http methods (get, post, put, delete); it is not based upon "message" concepts as is SOAP. 18
  • 19. WSDL 1.1 Format definitions Root element of the WSDL document. Defines the definitions name of the web service and declares multiple namespaces used throughout the remainder of the types document . message types Describes all the data types used between the client and server (not required if the service uses only XML Schema built-in simple types). portType operations message Describes a single one-way message, whether a input messages message request or message response. output messages portType Abstract set of operations supported by one or more endpoints (commonly known as an interface); operations are defined by an exchange of messages. binding binding Concrete protocol and data format specification for a particular portType. service service The service element defines the address for invoking port the specified service. Most commonly, this includes a URL for invoking the SOAP service (the “port”). © Accenture 2010. All Rights Reserved. 19
  • 20. SOAP 1.2 Format Envelope Mandatory. Top element of the XML document Envelope representing a SOAP message. Header (optional) Header Optional. Contains information that might influence payload processing and that would be Body subject to processing by intermediate SOAP nodes. For example: Authentication information. Body Mandatory. Contains the payload of the message. The Body is a container for mandatory information intended for the ultimate recipient of the message. © Accenture 2010. All Rights Reserved. 20
  • 21. Enterprise Service Bus - ESB ESB is an open standards, message-based, distributed, integration solution that provides routing, invocation, and mediation services to facilitate the interactions of disparate distributed information technology resources (applications, services, information, platforms) in a reliable manner. (Brenda Michelson, Elemental Links) (2) ESB Service Manageme Orchestrati nt on Adapter Adapter Adapter Adapter .NET J2EE Legacy Applicat Applicati Applicati ion on on Legacy Databases © Accenture 2010. All Rights Reserved. 21
  • 22. Enterprise Service Bus - ESB Characteristics: • Uses XML as the standard communication language • Usually does not depend on an OS or a programming language • Supports web services standards • Includes support for orchestration • Includes intelligent content-based routing • Supports messaging (e.g., web services messaging standards or JMS) • Includes standard adapters ESB can assist in giving a SOA solution (but using ESB does not imply a SOA solution) © Accenture 2010. All Rights Reserved. 22
  • 23. Agenda •Introduction •SOA architectural principles •Web enabled technologies for SOA •SOA and Java •Case study •Q & A © Accenture 2010. All Rights Reserved. 23
  • 24. SOA and Java Web Services can be implemented with Java. Some Web Services Frameworks that can be used to facilitate this are: • XFire/CXF • Apache Axis • Spring-WS First let us view the invocation process to understand how web services work. © Accenture 2010. All Rights Reserved. 24
  • 25. Service Invocation Process Client Server Create Receive Request Request SOAP SOAP Java code starts proces Java s Object Create Receive Response Response SOAP SOAP © Accenture 2010. All Rights Reserved. 25
  • 26. Service Invocation Process Example: Server-side Service Invocation (after client creates SOAP message with request and sends it to server) 1.SOAP message is received from transport (e.g., http). 2.Invoking handlers preprocess the message. E.g., determine target service (since service may have more than one) 3.Dispatch – given the WSDL operation, determine which Java class/method to invoke 4.Deserialization – SOAP message content is deserialized into the Java classes. 5.Java classes do the data processing. 6.Serialize object into an appropriate XML. 7.Wrap this XML into a SOAP message. 8.Respond - place response SOAP on transport. © Accenture 2010. All Rights Reserved. 26
  • 27. Web Service Code Generation Java or WSDL code can be generated automatically depending on the approach. Two basic approaches: 1.Bottom-up: Write the code and generate the WSDL from it (e.g., with Axis2, use the Java2WSDL tool). 2.Top-Down: Create WSDL and generate the code based on it (e.g. with Axis2, use the WSDL2Java tool). © Accenture 2010. All Rights Reserved. 27
  • 28. Java examples Let’s go over some practical examples on: 1.Accessing existing Web Services using a Web Service Testing Tool (SoapUI) 2.Creating a Web service © Accenture 2010. All Rights Reserved. 28
  • 29. Agenda •Introduction •SOA architectural principles •Web enabled technologies for SOA •SOA and Java •Case study •Q & A © Accenture 2010. All Rights Reserved. 29
  • 30. Example SOA Case Study Case study of a SOA implementation © Accenture 2010. All Rights Reserved. 30
  • 31. Questions & Comments Two options to ask a question or add your comments to the discussion:  Use Raise Hand and then hold down the TALK icon or press the CTRL key; release when done  Post your question in the Chat Room © Accenture 2010. All Rights Reserved.
  • 32. References 1. Service Oriented Architecture (SOA) and Web Services: The Road to Enterprise Application Integration(EAI) - http://java.sun.com/developer/technicalArticles/WebServices/soa/ 2. Service Oriented Integration With Apache ServiceMix - http://servicemix.apache.org/articles.data/SOIWithSMX.pdf 3. SOA Using Java Web Services – Mark D. Hansen – 2007 Prentice Hall 4. Service Oriented Architecture with Java – Binildas CA, Malhar Barai, Vincenzo Caselli – 2008 Packt Publishing 5. Services-based enterprise integration patterns made easy, Part 4: Enterprise service bus - http://www.ibm.com/developerworks/webservices/library/ws- intpatterns4/ © Accenture 2010. All Rights Reserved. 32
  • 33. Thank you for participating!

Hinweis der Redaktion

  1. The Centra tools displayed on this slide are the tools you can use to interact with the participants during this session. The RAISE YOUR HAND icon is used to ask questions or make comments. Once a participant “raises their hand”, the presenter or moderator will then call on them to speak. In order to speak, you must be given a microphone. Once the microphone is granted, you can speak by holding down the control key on your keyboard. Go ahead and click this icon now. The YES/NO icons are used to answer simple yes/no or true/false questions. Please go ahead and click these icons now. Feel free to indicate APPLAUSE or LAUGHTER during the session by choosing the applicable icons. “ The CHAT icon is an important icon. It will be used to communicate with the participants as well as the presenters. Please click on it now and resize it and move to the right side of the screen to see the Centra presentation and the chat room at the same time. There are several options on how to send your Text Chat message. We will focus on selecting “ALL” in the dropdown list. “All” is an open public forum where all messages will be displayed to both participants and presenters. Please enter your location today. [Pause: wait for participants to type messages into the chat room.] “ If you experience volume issues, you can use the Centra Volume Control. We recommend setting the bar to mid point or less for optimal audio.” “ There is also a Network Connectivity Bar at the lower right hand side of your screen. Since Centra is a real-time stream over the network, it is impacted by your network connection. This bar indicates the quality of your network connection. To ensure the best experience possible, please review the listed Audio/Connectivity Tips.
  2. You have two options today to ask questions. To ask questions live and speak via VOIP you should Press the Raise Hand icon to get the faculty’s attention. Once called up, you would hold down the Talk icon or the CTRL key and then release when done. Or you can post your question into the Text Chat at any time.
  3. “ Thank you very much for your participation in the session today. I’d also like to thank our presenters for their time and expertise.” “ When you log out you’ll be taken to a session evaluation – please take a few minutes to fill it out. Your feedback is appreciated. Thanks again for joining us. Have a good day.”