View PDF


Published on

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

View PDF

  1. 1. <Insert Picture Here> Convergence of SOA, EDA and BPM – Benefits and Challenges Manas K. Deb, Ph.D., MBA Sr. Director, SOA/EDA/BPM Product Mgmt, Oracle HQ
  2. 2. The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  3. 3. Session Agenda <Insert Picture Here> • Different Views of a Business Operation • SOA – Quick Recap • Events and EDA • Analysis of a Familiar Problem • Combining SOA and EDA – Best Practice Essentials • Concluding Remarks
  4. 4. Business as Functions Finance Sales Manufacturing CRM ERP DB
  5. 5. Business as Processes Finance Sales Manufacturing CRM ERP DB
  6. 6. Business as Events Finance Sales Manufacturing CRM ERP DB
  7. 7. “SOA” & “BPM” – What, Why, and Where Core Strategies, Key Benefits, and Applicability • Service Oriented Architecture (SOA) • Modular (IT) functionality and encapsulation – services • Loose coupling and location transparency • Request-reply paradigm, supporting processes and portals • QoS, SLA, reuse, policy enforcement, computation scale-out • Change resilience • Business Process Management (BPM) • Explicit representation flow of (business) activities – processes • Connects business architecture to automated & human actions • Includes process analysis, modeling, execution and monitoring • Services are often the end-points of business processes • Visibility, efficiency & change management
  8. 8. SOA-Enabled BPM: “2+2 > 4” Major Boost in Agility & Efficiency • BPM with SOA – Complimentary Benefits (“2+2 > 4”) • IT functionalities exposed as services to business • BPs to model change – services to absorb change impact • An enhanced 3-tier architecture • Traditional three-tier: Presentation, business logic & data layers • Add BPM (process layer) + SOA (service layer) in the business logic layer to gain more freedom between tiers 1 and 3 • Agility and business-IT gap reduction • These benefits significantly amplify in SOA-enabled BPM Tier - 1 Presentation UIs Tier - 2 Business Processes (one or more layers) Services (Simple, Composite, Process/Integration dominated) Tier-3 Apps and data repositories feeding the services
  9. 9. SOA – Conceptual Architecture Employee Customer Partners Terminal IVR Mob Client Service s s il Apps Consumers & ….. …. ….. …. ….. …. Delivery Channels Composite Applications Web Apps Portals Mashups BPM Process Fat Clients Presentation Shared Portlets Multi-Channel Delivery Services Monitoring & Management SOA Infrastructure Business Process Workflow Service Orchestration Service Layers Services Governance Mediation Discovery Security Business Activity Enrichment Custom Business Services Services Data Data Caching Data Aggregation Data Synchronization Services Connectivity System Access Messaging Partner Integration Services Utility Encapsulation Services Non-Service Enabled Assets Messaging Adapters Custom APIs JDBC file:// Service Enabled Assets Service Service Provider / Provider Consumer Assets Assets
  10. 10. BPM – Conceptual Architecture Business Technical Business Technical Workers IVR Partners Customers Mobile Client Apps Process Monitoring, Process Analysis & Analysis & Initiators & Modeling Control Participants Business Process Management Design-time Run-time Process Execution Management Business Process Modeling Monitoring Security Human Workflow Unified Service Orchestration Repository Business Rules Simulation Events Timers Faults Service EAI MOM Services Discovery IT Infrastructure and Applications BI Images Legacy Databases Partners Content Packaged Custom
  11. 11. Events & EDA Definitions & Characteristics • Events and events processing • A “signature” of (expected) change in state • Simple events -> Event processor -> Complex events • Event-driven application • An application that can consume/process/reaction events • Work in very-loosely-couple to decoupled manner • Event-Driven Architecture (EDA) • A suitable EA pattern that supports event-driven applications • Some components may be similar to other paradigms Generator Complex Response Event Event * * Event * Object Service Processor Enterprise Service Bus *
  12. 12. EDA At Work Telecommunications & Services Telecommunications: Distributed order orchestration Transportation & Logistics: Asset management Transportation & Logistics Financial Services: Algorithmic trading Financial Services Manufacturing Manufacturing: ‘Negative Working Capital’ inventory Public Sector & Military management Defense: • Intrusion detection systems • Military asset allocation Insurance Insurance: Reponses to calamities – earthquake, flooding
  13. 13. BPM + SOA and Events – Interplay Business Technical Business Technical Workers IVR Partners Customers Mobile Client Apps Process Monitoring, Process Analysis & Analysis & Initiators & Modeling Control Participants Business Process Management Design-time Run-time Process Execution Management Business Process Modeling Monitoring Security Human Workflow Unified Service Orchestration Repository Business Rules Simulation Events Timers Faults Service EAI MOM Services Discovery IT Infrastructure and Applications BI Images Legacy Databases Partners Content Packaged Custom
  14. 14. Four Classes of Event Processing in SOA • Simple • Publish/subscribe model • Enterprise Service Bus • Event processing for visibility • Event-driven, real-time Dashboards and Alerts • Business Activity Monitoring • Complex event processing for decision making • Automated, algorithmic decision making • Event Stream/Complex Event Processors • Event processing networks • Distributed event processing across multiple nodes • Distributed event networks/ event caches
  15. 15. Events & The World Of IT Infra, SOA & BPM Source: Forrester
  16. 16. Complex Event Processing (CEP) Causality, Time Window, Pattern-Matching JSON EPN (Event Processing Network) Elements HTTP Pub/Sub Adapter Processor Cache POJO
  17. 17. A Typical EDA Suite Essential Components BAM CEP REAL-TIME Alerts Business Monitoring Event Feeds VISIBILITY Data Streams & Java-based Event PROCESSING Business Server Rules Service Bus Data Integrator ROUTING & DATA Routing Transform ETL & Data SERVICES Replication Quality Mediation Adapters CONNECTIVITY Socket DB File JMS Industry Specific High Performance VM Resilient Memory ENTERPRISE PERFORMANCE & SCALABILITY J2EE Application Server (Oracle AS, WebLogic, WebSphere, JBoss)
  18. 18. CEP Engine – A Special EDA Element Low Latency, Extreme High Throughput EDA Java Application Container Data/Event/ Data Feed Process Listener/SINK: Msg. Feeds Adapters Events User Code (CEP) Aggregate, correlate, filter data Can Handle 1,000s of Queries Incoming Data Streams Resulting Data fed to user Java 1,000,000 Messages/Sec Latency code, services, processes <1K message size < 1 Millisecond Latency (Avg.) <5% data matches filter criteria 10 Millisecond Latency (Max)
  19. 19. Airline Operations – A World of Services, Processes or Events? Reservations and Ticketing Passenger Check-in Baggage Checked Reservation Changed … Baggage Handling Flight Operations Bag Scan Flight Open Bag On Plane Flight Boarding Bag Off Plane Flight Delayed … …
  20. 20. Passenger Boarding – A Familiar Problem “Where are my bags?” • Scenario: • An airline passenger and his/her bag(s) are separated at check-in. Multiple processes must interact to reunite them at the passenger’s destination. • Sample processes • Check-in counter, Security, Baggage handling, Gate operations, Flight operations • Airport operations control (BAM) dashboard • Customer service • Ideal outcome • Plane leaves on time, with passenger and bags loaded • Possible exceptions • Bag is lost between check-in and loading • Passenger is delayed in security • Bag contains hazardous material and is delayed • Flight cancelled, passenger rerouted • Customer changes plans after check-in • …
  21. 21. Modeling the solution – Key Characteristics Leverage SOA, EDA and BPM, As Needed • Airline passenger boarding problem is NOT one process/service • It is a set of processes collaborating with each other • Individual processes/services are either in apps or orchestrated • Process/service collaboration • Each process/service requesting status unnecessarily is undesirable • Collaboration is “on-demand” and “sense-and-respond” • Handle relevant events using event-enabled processes/services Process Events Check-in counter Passenger checked in, bag(s) checked Security Passenger enters/exits security Baggage handling Bag scanned at checkpoint, bag loaded into container Gate operations Flight open, boarding, final boarding, closed Flight operations Flight at gate, containers loaded, departure, take-off Customer service Bag rechecked on new flight
  22. 22. Convergence of SOA, EDA & BPM Benefits & Challenges • Benefits • Combined capabilities to handle business challenges • Better foundation for a sense-and-respond adaptive enterprise • Significant step towards a predictive enterprise • Challenges • Architecture • Converged thinking by the system/solution architect • Higher demand on skills/experience • Analysis and development tools • Unified IDE & metadata repository • Deployment • Highly differing performance and RAS requirement • Overall solution manageability
  23. 23. Converged of SOA, EDA & BPM Solutions Architectural Considerations • Two main groups: “BPM+SOA” and “Events” • Naturally existing events (intrinsic or extrinsic) • Deliberate introduction of events (often for problem simplification) • Consider leveraging EDA for/when: • Something happens several times, and the last one is important • System changes that may be received out-of-order • Aggregation of many simple facts leads to few actions • Mostly status notifications • CEP use cases • Implement using SOA+BPM for/when: • System responses need to be invoked or coordinated • Transactionality is important • Human intervention “may” be required
  24. 24. Unified/Converged SOA/EDA/BPM Platform Oracle 11g SOA, EDA and BPM Suites – An Example Application Service & Process Assembly, Orchestration composers Repository Business Human Mediator BPEL BPMN IDE Rules Workflow BAM 11g Infrastructure for Services & Events Common JCA-based connectivity infrastructure Policy Manager Optimized CEP binding Service Bus Web-based B2B console SOA Service virtualization, Shared Service Gateway, Monitoring Operations 25
  25. 25. SCA-Based Composite Editor Bringing It All Together Palette of Service Components & Adapters Web services and adapters Mediation BPEL orchestration spring.xml Human Tasks Spring /Java Business Rules
  26. 26. Concluding Remarks SOA+EDA+BPM – A Next-Gen Architecture • Should we care about a combined approach? • Yes – many real-life problems best done using all three • Combined strategies need systematic approach • SOA, EDA and BPM can be complementary • SOA & BPM specializes in orchestrated, predefined logic/process execution using request-reply communications • Typical ED application uses (often anonymous) pub-sub, processes very large number events very fast producing few actionable events • SOA+EDA+BPM provides the ability to create truly on-demand, sense-and-respond applications with high business value • Technology is ready – need solution-building experience