Your SlideShare is downloading. ×
Library Web Services for Discovery and Delivery of Scientific Information
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Library Web Services for Discovery and Delivery of Scientific Information


Published on

Presentation on Web Services, SOA and workflow (BPEL) for library systems development given at Access 2006.

Presentation on Web Services, SOA and workflow (BPEL) for library systems development given at Access 2006.

Published in: Technology

  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide
  • Transcript

    • 1. Library Web Services for Discovery and Delivery of Scientific Information Access 2006 October 13, 2006 Richard Akerman and Bryan Gahagan NRC CISTI
    • 2. Overview
      • Service-Oriented Architecture (SOA)
      • Web Services
      • Workflow (BPEL)
      • Conclusions and Next Steps
    • 3. Destroy the Silos! © 2000 Canada Science and Technology Museum
    • 4. SOA and Web Services
      • Service-Oriented Architecture is a methodology
      • Web Services are a technology
    • 5. Service-Oriented Architecture
      • SOA is a software engineering approach that aims to enable reuse of services, for more flexible and enduring software systems
      • CISTI uses SOA right now within our Enterprise Architecture
    • 6. SOA Defined
      • “In Service-Oriented Architecture autonomous , loosely-coupled and coarse-grained services with well-defined interfaces provide business functionality and can be discovered and accessed through a supportive infrastructure. This allows internal and external system integration as well as the flexible reuse of application logic through the composition of services…to support an end-to-end business process.”
      • Malte Poppensieker , SOA Weblog , addition from ZDnet SOA blog
    • 7. Web Services
      • This is a terrible name.
      • They are not about the web
      • They are not (necessarily) about services
      • “Well-defined networkable functions?”
      • Another way to slice them is “Vendor-Neutral Middleware”
      • They have attributes that make them well-suited to SOA
    • 8. Service Composition – Web Services Workflow
      • Once you have built several Web Services, you may want to combine them together in various ways, or to use them with other Web Services
      • This has some flavour of “workflow”
      • There are lots of existing examples:
        • Lego
        • Kama Sutra
    • 9. Orchestration
      • Controlling the execution flow of multiple services to expose more complex, composite services
      • Orchestration server is like the conductor of an orchestra
        • Oversee and control the flow of execution
      • Web Service Choreography Interface (WSCI) is W3 standard ( )
      • Business Process Execution Language (BPEL) is OASIS standard ( )
        • A superset of WSCI functionality
        • Large vendor support
    • 10. Before Orchestration
      • Client Talks Directly to Services
      • Changes in services interface/workflow affect the client
    • 11. After Orchestration
      • Client talks to Orchestration server
      • Changes to services are applied to Orchestration, Client never knows of the changes
      • Orchestration can expose an existing service interface or create a new one
      • Orchestration can use external services
      • Services used for orchestration can easily be made available externally
    • 12. BPEL
      • Express long or complex processes in a standardized XML format
      • Designed to work with WSDL and web services standards
        • Services usually invoked with SOAP
        • BPEL Orchestrations exposed using WSDL
      • Hierarchal and graph-like control flow.
        • Execute operations in sequence or,
        • Follow different links between operations depending on conditions
      • Message correlation using message data
      • Long running asynchronous processes
        • Compensation / error handling within scopes
      • Abstract Processes
    • 13. BPEL 1.1
      • <process name=&quot;BPELProcess&quot;>
      • <partnerLinks>...</partnerLinks>
      • <variables>...</variables>
      • <faultHandlers>...</faultHandlers>
      • <sequence>
      • <receive ... />
      • <assign ... />
      • <flow>
      • <invoke ... />
      • <invoke ... />
      • <invoke ... />
      • </flow>
      • <reply ... />
      • </sequence>
      • </process>
      Describe the services or “partners” the process will interact with Stores service request / response messages and other process data Handle any errors that occur when invoking a service Receive message from client, start the process Modify variables to create service request messages or manipulate data Invoke a Web Service, store the response in a variable for later manipulation Replay to client (with a response message) Perform activities asynchronously Perform activities in sequence
    • 14. BPEL Development and Operations
      • 1. You will need a BPEL orchestration server (BPEL engine)
        • We use ActiveBPEL
        • Apache Agila is another option
        • several others
      • 2. You may want a BPEL development environment
        • We use ActiveBPEL Designer
          • rich graphical interface
    • 15. ActiveBPEL
      • Open Source
      • Lightweight
        • Run in Tomcat, deployed as a WAR
        • optionally connect to database
      • Comprehensive support for the BPEL 1.1 spec
        • BPEL 2.0 support in the works
      • ActiveBPEL Enterprise
        • Fully supported “enterprise” version
        • Based on the open source version
        • Integrates with a J2EE server
    • 16. ActiveBPEL Designer
    • 17. Challenge – Too Many Frameworks?
      • JISC Information Environment – Service-Oriented view
      • e-Framework for Education and Research
      • Digital Library Federation (DLF) – Service Framework for Digital Libraries
      • NISO MetaSearch Initiative
      • NISO Web Services and Practices Working Group (disbanded)
        • NISO RP-2006-01: Best Practices for Designing Web Services in the Library Context (PDF)
      • DELOS Digital Library Management System (DLMS)
      • Library Technology Reports (Vol. 42 Iss. 3), “Web Services and the Service-Oriented Architecture”
      • Talis: Resources
    • 18. Conclusions and Next Steps
      • can we break through organizational and discpline-specific silos?
      • cross-organization use of Web Services and cross-organization BPEL orchestrations
    • 19. Questions? Richard dot Akerman at NRC dot CA