0
Mashups and Business Process
 Management in SOA
                                 Jonathan Marsh
                       VP ...
Overview
   Mapping SOA to Business Goals
   Business Process Automation
   Mashups
   Services Ecosystem Stages
   A...
Building a better business
Typical goals:
 Lower costs
 Improve response times
 Improve reliability
 Support customiza...
What is a Business Process?
       What is a business process?
        A process you need to run your business!
       ...
Business Process Management
       Defining,
       Executing, and
       Monitoring
        Business Processes
     ...
Executable business processes
       There are many approaches to executable
        business processes:
           XPDL...
BPEL
       Business Process Execution Language 2.0
        An executable XML language
        With some graphical view...
Why use BPEL instead of Java?
       1. Managed execution
        Monitor the progress of processes
        Stop, start...
Executing Business Processes
       Develop Business Process definitions
        Business Process Modeling Notation
    ...
Bridging People and technology
       Many processes interact with people
       With pure BPEL you can interact with pe...
BPEL4People model
Mashups
What is a Mashup?
Mashups in Music

   Term originates in music –
    remix of existing music into
    something new and unique
   Uses th...
Mashups in IT
   Remix of existing data (usually internet) into
    something new and unique
   Uses the existing data (...
What Technological Innovation?
       Emergence of readily accessible information
        sources (the Internet, enterpri...
Mashup Long-tail Scenarios
       Bridging domains
        Mining data from Web pages
        Processing events
      ...
Components of a Mashup
Platform
       Ability to simply access a wide variety of
        information sources
        We...
Components of a Mashup
Platform
       Logic language
        Graphical designer
        Declarative language
        ...
Components of a Mashup
Platform
       Providing or presenting output
           Machine readable
            Web servi...
WSO2 Mashup Server
Architecture


                              Data
                           Sources
                  ...
WSO2 Mashup Server
Architecture

                  Javascript (E4X)
                   Simple service deployment
       ...
WSO2 Mashup Server
Architecture

                        Web
   Mashup               Services
    Logic                   ...
Why use Mashup instead of
BPEL?
   Lighter weight
   Rapid development
   Broader developer base
   Broader definition...
SOA Stages of Evolution
       BPM and Mashups drive SOA evolution
        Stage 1: Exposing services, connecting system...
SOA Stage 1 – High Value
   Exposing services, connecting systems
   EAI, App Servers, ESBs
SOA Stage 2 – Medium Value
   Business Process Execution Language for
    Web Services (BPEL4WS) is a declarative
    lan...
SOA Stage 3 – Long Tail
   Low investment
   Small user community
   Limited lifetime applications
   Situational appl...
Services Ecosystem
BPEL services and Mashups serve the long tail of
  services

   More Services => More possible connect...
Metcalfe's Law


Metcalfe's law states that the value of a
telecommunications network is proportional to the
square of the...
Metcalfe's Law
Metcalfe's Law Adjusted...
A Mashup Story
       “Business” goal
        Automated check-in on Southwest Airlines
        Best seats available exa...
Workflow
       Register a flight
           Provide flight details
           Scrape confirmation email
   Provide no...
Services needed
       Southwest Web Site
        Check-in
        Flight status
       Alertme – flexible notificatio...
Southwest Auto-Checkin
                 checkin

 reservation               flight status




                            ...
Mashup Lessons
   Services are not always defined by traditional
    “service interfaces”
   Business processes drive de...
Questions?
Upcoming SlideShare
Loading in...5
×

Mashups and Business Process Management in SOA

4,186

Published on

Jonathan Marsh, VP Business Development, Director of Mashup Architecture, WSO2 at the SOA Workshop in Colombo, Sri Lanka (September 17, 2009) makes the case on how Business Process Management (BPM) and Mashups drive SOA evolution and illustrates how WSO2 Mashup Server fits into this space.

Published in: Technology, Business
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,186
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
263
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Transcript of "Mashups and Business Process Management in SOA"

  1. 1. Mashups and Business Process Management in SOA Jonathan Marsh VP Business Development Director of Mashup Architecture
  2. 2. Overview  Mapping SOA to Business Goals  Business Process Automation  Mashups  Services Ecosystem Stages  A Mashup Story
  3. 3. Building a better business Typical goals:  Lower costs  Improve response times  Improve reliability  Support customization  Decrease overall risks Trend towards increasing automation
  4. 4. What is a Business Process?  What is a business process?  A process you need to run your business!  Any well-defined interaction between systems and people, triggered by events, using logical decision points, and with clearly defined flows  Examples:  When processing an order, connect to the billing system and raise an invoice.  When handling a problem ticket, escalate unresolved tickets.
  5. 5. Business Process Management  Defining,  Executing, and  Monitoring  Business Processes  Typically long-running, stateful processes  SOA enables BPM  Connecting services on diverse systems workflows  Use and reuse of data and services from other applications  Almost everything useful to a business is a process
  6. 6. Executable business processes  There are many approaches to executable business processes:  XPDL  BPML  YAWL  jBPM  WS-BPEL 1.1  BPEL 2.0  The industry standard
  7. 7. BPEL  Business Process Execution Language 2.0  An executable XML language  With some graphical views (but not standardized)  Used by the major BPM vendors (IBM, Oracle, Apache ODE, WSO2, Intalio, ActiveVOS, etc) <sequence> <!-- Receive the initial request --> <receive partnerLink="partner" portType=“p:PartnerPT" operation=“approval" variable=“approvalRequest" createInstance="yes" />
  8. 8. Why use BPEL instead of Java?  1. Managed execution  Monitor the progress of processes  Stop, start, restart, inspect  2. Structured approach to long-running processes  Easy to build processes that stop, restart and interact with systems in asynchronous patterns  3. Excellent support for transactions and compensation  Build clear logic for dealing with problems in long-running flows  4. Visualizing the flows helps communicate between the sponsors and the coders  Managers, analysts and users can be taken through the logic and validate it None of this is impossible in Java – you could use a framework to gain these benefits – but BPEL has it all in a simple package
  9. 9. Executing Business Processes  Develop Business Process definitions  Business Process Modeling Notation  Synchronizing Business and Technical goals  Write BPEL  Graphical Editor  XML coding  Run a Business Process Server  WSO2 Business Process Server  Microsoft Biztalk  Oracle BPEL Process Manager  IBM WebSphere Process Server
  10. 10. Bridging People and technology  Many processes interact with people  With pure BPEL you can interact with people  But you have to do the work  Integrate a portal with a process server  Two new specs help out massively  WS-HumanTask  BPEL4People  Patterns:  4-eyes  Escalation  Nomination  Chained execution
  11. 11. BPEL4People model
  12. 12. Mashups What is a Mashup?
  13. 13. Mashups in Music  Term originates in music – remix of existing music into something new and unique  Uses the existing data (tracks) as they are found  Enabled and popularized by technological innovation, lowering cost and skills for entry
  14. 14. Mashups in IT  Remix of existing data (usually internet) into something new and unique  Uses the existing data (web pages, web services, feeds) as they are found  Enabled and popularized by technological innovation, lowering cost of entry
  15. 15. What Technological Innovation?  Emergence of readily accessible information sources (the Internet, enterprise SOA, desktop data)  Standard formats and protocols  Mashup platforms and tools  Lower the barriers to entry  Lower the cost of each project
  16. 16. Mashup Long-tail Scenarios  Bridging domains  Mining data from Web pages  Processing events  Aggregation/correlation  Reporting  Reports & visualizations  Notifications  Dashboards  Customization/personalization  Decision “Agents”  Periodic tasks  Monitoring conditions
  17. 17. Components of a Mashup Platform  Ability to simply access a wide variety of information sources  Web services  Feeds  Scraped web pages  Files  Email  Instant messages and other event sources
  18. 18. Components of a Mashup Platform  Logic language  Graphical designer  Declarative language  Scripting language  Programming language  Tradeoffs - list increases in power, decreases in accessibility
  19. 19. Components of a Mashup Platform  Providing or presenting output  Machine readable  Web services  Feeds  Database/File system writes  Human readable  Web pages  Widgets/Gadgets  Feeds  Email  Instant messages/SMS
  20. 20. WSO2 Mashup Server Architecture Data Sources Web Pages Mashup Feeds Logic Web Services
  21. 21. WSO2 Mashup Server Architecture  Javascript (E4X)  Simple service deployment  Service composition  Workflows Mashup  Service translation Logic  Service UI building  Rapid prototyping
  22. 22. WSO2 Mashup Server Architecture Web Mashup Services Logic Rich HTML Applications Email/IM Files Feeds
  23. 23. Why use Mashup instead of BPEL?  Lighter weight  Rapid development  Broader developer base  Broader definition of “services”  Typically serves end users Similar outcomes – different approaches
  24. 24. SOA Stages of Evolution  BPM and Mashups drive SOA evolution  Stage 1: Exposing services, connecting systems  Stage 2: Automating high value business processes (BPEL)  Stage 3: Helping knowledge workers leverage the business infrastructure (mashups)  Stage 4: Recurse
  25. 25. SOA Stage 1 – High Value  Exposing services, connecting systems  EAI, App Servers, ESBs
  26. 26. SOA Stage 2 – Medium Value  Business Process Execution Language for Web Services (BPEL4WS) is a declarative language for defining a “business” process as a series of interactions between services.  Output is more services.  Used for automated flows – what happens in the SOA stays in the SOA.
  27. 27. SOA Stage 3 – Long Tail  Low investment  Small user community  Limited lifetime applications  Situational applications
  28. 28. Services Ecosystem BPEL services and Mashups serve the long tail of services  More Services => More possible connections  More connections => More potential applications  More potential applications => Business agility  Business agility => Competitive advantage  Competitive advantage => Leads to profits
  29. 29. Metcalfe's Law Metcalfe's law states that the value of a telecommunications network is proportional to the square of the number of connected users of the system (n2).
  30. 30. Metcalfe's Law
  31. 31. Metcalfe's Law Adjusted...
  32. 32. A Mashup Story  “Business” goal  Automated check-in on Southwest Airlines  Best seats available exactly 24 hours before departure  No service interface (just a web site)
  33. 33. Workflow  Register a flight  Provide flight details  Scrape confirmation email  Provide notification information  Preferred channel (email, SMS, IM, Twitter…)  Account info (email address, phone number…)  Schedule events  Access check-in page  Send notifications to user  Check flight status  Clean up
  34. 34. Services needed  Southwest Web Site  Check-in  Flight status  Alertme – flexible notifications  Twitter REST service  IM services (MSN, Yahoo, etc.)  Email  Southwest Auto-checkin “workflow”  Other services:  Airport code to timezone converter  Daylight savings time converter
  35. 35. Southwest Auto-Checkin checkin reservation flight status southwestAutoCheckin email timezone
  36. 36. Mashup Lessons  Services are not always defined by traditional “service interfaces”  Business processes drive demand for a rich ecosystem of services  Mashups & BPM both consume and provide services  Development time and effort are important factors in choosing the right approach  Governance can be a challenge (even within an organization)
  37. 37. Questions?
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×