How Does BPM Relate to JBI, BPEL and Integration - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

How Does BPM Relate to JBI, BPEL and Integration

Description:

Business Process Management. A different branch in the line of software evolution. 17 ... Business Process Management. Making an organisation. run more efficient ... – PowerPoint PPT presentation

Number of Views:161
Avg rating:3.0/5.0
Slides: 30
Provided by: ShaunCo
Category:

less

Transcript and Presenter's Notes

Title: How Does BPM Relate to JBI, BPEL and Integration


1
How Does BPM Relate to JBI, BPEL and Integration
Tom Baeyens JBoss jBPM
2
  • BPEL is a clumsy way to support Business
    Process Management

3
Agenda
  • Integration
  • Example
  • SOA, ESB, JBI and WS-BPEL
  • Business Process Management
  • Goals
  • Process Languages
  • Pure-Play BPM
  • Conclusions

4
Application Integration
  • Trend
  • enterprise apps
  • integrations
  • Maintenance nightmare

5
Enterprise Service Bus
  • Based on async messaging
  • One service interface (e.g. WSDL)
  • Extra (mgmt, secutity, routing, ...)

Enterprise Service Bus
6
Note on Loosely Coupled
  • Loosely coupled
  • Loose, looser, loosest ?
  • Tradeoff
  • Tighter
  • Refactoring
  • Performance
  • Easy development
  • Easy deployment
  • Looser
  • Less chance of cascading updates

7
Dependency Types
  • Remoteness
  • Invocation in a thread in one JVM
  • Inter Process Communication (IPC)
  • Data format
  • XML
  • Java objects
  • ...
  • Synchronicity
  • Availability
  • Scaling

8
EAI Example
public interface QuoteService
Quote getQuote(Product p)
  • QuoteService qs (QuoteService)
    esb.findService(quotes)
  • Quote q qs.getQuote(Products.NAPPY)
  • order(q.getVendor(), q.getProduct(), 3)

9
Example Deployment
nappy
QuotesServer
OurApp
nappy 7/price

10
Example Stub Implementation
public class QuoteServiceStub
implements QuoteService public Price get
Quote(Product p) Message quoteMsg createQuo
teMsg(p) sendMsg(quoteMsg) Message priceMs
g receiveMsg() return priceMsg.getPrice()

11
Path of Execution
QuotesServer
OurApp
12
Stubs Inappropriate for Async
QuoteService qs (QuoteService)
Services.findService(quotes)
Quote q qs.getQuote(Products.NAPPY) order(
q.getVendor(), q.getProduct(), 3)
sendQuoteRequest(Products.NAPPY)
handleQuotesResponse(msg)
13
WS-BPEL
  • XML Scripting Language
  • Express a new service as a function of other
    services
  • Resolves
  • One piece of software
  • Persist execution
  • WSDL based interfaces
  • XML based data

14
Java Business Integration
  • Environment for
  • Java components
  • With WSDL interface
  • App developer deploys to engines

Normalized Message Router
BPEL engine
XSLT engine
... engine
15
Integration Broker Suites
  • Type of product
  • ESB
  • Orchestration engine
  • Other extra services
  • Consensus around BPEL

16
Business Process Management
  • A different branch in the line of software
    evolution

17
Business Process
  • A recurring procedure
  • in an organisation
  • Starts with a goal
  • Steps to take to reach the goal
  • One time -- ad hoc process
  • Recurrence -- business process

18
Workflow
  • Describing how
  • people work together
  • for business processes
  • Focus on coordination of human tasks
  • Sometimes IT systems are included

19
Business Process Management
  • Making an organisation
  • run more efficient
  • by analysing and improving
  • the business processes
  • Analysing business processes
  • Finding and removing inefficiencies
  • People and systems
  • Superset of workflow

20
BPM System Goals
  • Improve communication
  • Business analyst
  • Developer
  • People and systems
  • Express how they work together
  • Structure software around business
  • Reduce translation to software design
  • Create agile business
  • Learn by probing

21
BPM System Challenges
  • Support for long running processes
  • Integration with systems
  • Human tasks
  • Graphical representation
  • Common language

22
Pure-Play BPM
  • Software productsfor workflow and BPM
  • Process language for expressing business
    processes
  • Runtime engine to support long running processes
  • No consensus about foundation

23
JBoss jBPM
  • Example of Pure-Play BPM
  • Solid foundations
  • Graph Oriented Programming
  • Task Management
  • Clean Java integration
  • Timer service
  • Message service (in 3.1)
  • Easy
  • POJO (JSE) and Enterprise (JEE)
  • Any DB, Any appserver
  • Scalable
  • Standalone, Webapp or .ear

24
Required Features for BPM
  • Support for long running processes
  • Graphical representation
  • Task management
  • Programming logic
  • Application integration

25
Conclusions
26
Conclusions
  • Product types
  • Pure-Play BPM
  • Integration Broker Suites
  • 2 different lines of evolution
  • Solved the same problems
  • Long running processes
  • Graphical representation
  • Difference is the interface and data
  • jPDL Java and java objects
  • BPEL WSDL and XML

27
The SOA Level (XML, WSDL SOAP)
BPM
Orchestration
Enterprise Service Bus (ESB)
The Programming Level (Java, C, ...
)
JEE Application Server
Legacy App
.NET App
BPM
28
Comparing Process Languages
29
QA
  • JBoss jBPM http//jbpm.org
  • JBoss http//jboss.com
  • JBI http//jcp.org JSR 208
  • Enterprise Integration Patterns Gregor
    Hophe Bobby Woolf
Write a Comment
User Comments (0)
About PowerShow.com