WSO2 Mashups and BPM


Published on

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

WSO2 Mashups and BPM

  1. 1. Business Process Management for SOA & Mashups Milinda Pathirage Product Manager, WSO2 BPS, WSO2 Inc.
  2. 2. Summary Business Processes BPM and SOA Modeling Business Processes Mashups
  3. 3. Building a Better Business Every one's goals  Reduce costs  Improve responsiveness  Improve reliability  Increase agility and flexibility  Decrease overall risks
  4. 4. Why Business Processes Matter What is business process?  A method or system for achieving a commercial result  It describes how enterprises performs its business functions  Any well-defined interaction between systems and people, triggered by events, using logical decision points, and with clearly defined flows  To achieve the business goals, need to continuously optimize your processes
  5. 5. Business Process Example
  6. 6. Business Process Management Management model or framework that helps or- ganizations to manage their business process- es while optimizing and leveraging IT assets Is about improving business BPM Life Cycle
  7. 7. SOA and BPM SOA is an architectural style for developing dis- tributed system BPM provides the bridge between business goals and IT solutions SOA needs the service coordination and orches- tration provided by BPM BPM needs SOA to deliver business-user access to the data and functionality housed in other en- terprise systems
  8. 8. BPM and SOA BPM Long running coordination state SOA Stateless Service Interactions Applications, Databases, Legacy Persistent application state
  9. 9. Modeling Business Processes BPMN  Standard for business process modeling  Provides graphical notation for specifying business processes Executable business process modeling  XPDL  YAWL  EPML  BPEL4WS 1.1  WS- BPEL 2.0 (Industry standard)  BPELScript (JavaScript like language)
  10. 10. Business Processes in SOA Web services are the preferred standards-based way to realize SOA BPEL can be used for composition, orchestra- tion or coordination of Web services BPEL fill the gap between BPM and SOA BPEL in your SOA  Business process from services and human activities  Coarse grained business services from fine grained services  Flow based integration of various existing applications
  11. 11. WS-BPEL 2.0 XML based language for the specification of Executable and Abstract business processes Extends the Web Services interaction model and en- ables it to support business processes BPEL support distributed transactions BPEL is the standard used by major BPM vendors (IBM, Oracle, Apache ODE, WSO2, Intalio) Xpath, XSLT and Xquery for XML data manipulation
  12. 12. WS-BPEL Example
  13. 13. Why use BPEL instead of Java? Managed execution  Monitor the progress of the process  Start, stop, suspend, resume process instances Structured approach to long running processes  Easy to build processes that can be suspended, resumed and interact with sys- tems in asynchronous patters Excellent support for transactions and compensation  Implement clear logic that which deals with problems in long-running processes Visualizing the flows helps communication between the spon- sors and implementors 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
  14. 14. Human Interactions in BPEL Many business process scenarios require human interac- tions With pure BPEL you can interact with people  But you have to the integration work Two new specs which standardize the human interactions  WS-Human Tasks  BPEL4People Advance human interaction patterns  4-Eyes principal  Escalation  Nomination  Chained execution
  15. 15. BPEL4People Model
  16. 16. When to Use BPEL Orchestrate a business process with complex logic Long-running business process where state is maintained and human interactions are in- volved
  17. 17. Mashups
  18. 18. What is a mashup? 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 in- novation, lowering cost and skills for entry
  19. 19. Mashups in IT Remix of existing data (usually Internet) into something new and unique Uses the existing data (web pages, web ser- vices, feeds) as they are found
  20. 20. 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
  21. 21. 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
  22. 22. Components of a Mashup Plat- form Ability to simply access a wide variety of infor- mation sources  Web services  Feeds  Scraped web pages  Files  Email  Instant messages and other event sources Logic language  Graphical designer  Declarative language  Scripting language  Programming language Tradeoffs- list increases in power, decreases in accessibility
  23. 23. Components of a Mashup Plat- form Providing or presenting output  Machine readable  Web services  Feeds  Database/File system writes  Human readable  Web pages  Widgets/Gadgets  Feeds  Email  Instant messages/SMS
  24. 24. WSO2 Mashup Server Architec- ture Data Sources Web Pages Mashup Feeds Logic Web Services
  25. 25. WSO2 Mashup Server Architec- ture Javascript (E4X)  Simple service deployment  Service composition Mashup  Workflows Logic  Service translation  Service UI building  Rapid prototyping
  26. 26. WSO2 Mashup Server Architec- ture Web Mashup Services Logic Rich HTML Applications Emails/IM Files Feeds
  27. 27. Why use Mashup instead of BPEL? Lighter weight Rapid development Broader developer base Broader definition of “services” Typically serves end users
  28. 28. Mashups vs BPEL 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 fac- tors in choosing the right approach