business process management...erp plm crm ui controller task engine business process controller...

25
1 Application Servers G22.3033-003 Session 7 – Main Theme Business Process Management and Related Standards Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences 2 Part I Business Process Management (BPM)

Upload: others

Post on 11-Oct-2020

24 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

1

1

Application ServersG22.3033-003

Session 7 – Main ThemeBusiness Process Management

andRelated Standards

Dr. Jean-Claude Franchitti

New York UniversityComputer Science Department

Courant Institute of Mathematical Sciences

2

Part I

Business Process Management (BPM)

Page 2: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

2

3

The little story of BPM

4

My grand-father the workflow…

• Starts in the late 70s• Theoritical foundation

– Petri nets• Dedicated to document management• Principle

– Manage the lifecycle of resources in a distributedenvironment and the state changes that happen over long periods of time (> a user session)

Page 3: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

3

5

My first steps …

• Born around 1997-1998 in the rage of B2B– I am an « adaptor » between real-time B2B transactions and

slower, often batch oriented enterprise systems– The fundamental principle is the same, « documents »

become XML documents• Standardization in August 2000: BPML

– Dozens of startups are rushing to the gold…• New theoretical foundation

– Invented in the late 80s by Robin Milner– Pi-calculus

6

My teenage crises …

• Re-org: wander in the land of EAI after the B2B bubbleburst

• Disappearance of my prefered standard: BPML, for a glass of WSCI and a plate of BPEL

• Isolation– My barrier of entry is too high (Big Bang effect)– Impossible or almost impossible … to get into a JEE or

.NET architecture• Controlled by the big guys for the better or the worst

– Microsoft, IBM, …

Page 4: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

4

7

Grown-up…

• Who am I?• Where am I going?• What am I doing?

• :-( … after 10+ years of efforts we cannot talk about success )-:

8

But, Where is the Software Industry Going?

Page 5: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

5

9

What’s happening today…

• Verticalization of the application architecture – The big five: IBM, MS, OpenSource, Oracle, SAP– « full-stack »

• Aggregation of all architecture concepts – B2B, EAI, SOI (webMethod only independent vendor left)– BPM– Portals…

• Transformation of business applications– We just finished writing these applications and we now need to

change the infrastructure …• Take advantage of the web• More federation…• But also cost of infrastructure software (Open Source or home grown)

10

Software Industry is in transition

• Technologically, we are at the end of the « web-based »and << web service-based>> lifecycle– An HTML browser is not a viable client

• It is an auxilliary client for very specific purposes

– We are inventing the « rich client » which brings together the advantages of the browser and native client• Zero administration• Federated UI (can hit multiple « servers »)• UI is interpreted not compiled

– The JEE vendors start to spread their offer, in completeanarchy to differentiate from each other and respond to the pressure of .NET which start to go beyond « web-based »

Page 6: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

6

11

Software Industry is in transition

• Architecturally, the complexity is such that: – We cannot fit all the information for a given role in a single

system• The borders of application disappear

– IT cannot absorb new technologies• How would you go about changing all the plumbing and electricity of a sky-

scrapper? … Go wireless?

– Users do not use Business application• It is now sometimes more productive to work by hand when dealing with so

many systems which are incompatible and not integrated, let alone cannotcapture or report on the information that they need

– It is harder and harder to maintain and evolve business applications• Every changes has global impact and a high cost, often generating negative ROI

and terrible delays

12

At the same time, technologyconvergence has accelerated

Workflow

EDI

Mainframe

1980 1990 2000 2010

XMLWS

WebLANInternet

?BusinessIntegration

J2EE.NET

Client / Server

Web/Portal

EAI

B2BBPM

WS

Office

Page 7: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

7

13

And the Customer Needs Have Never Been so Complex …

• Fundamental changes in the enterprise– Specialist => Generalists « without borders»– Commercial Success of the model « built-to-order » or

« engineer-to-order »– Cycles: shorter and shorter– Geographical Distribution: increasing way beyond

manufacturing– Budgets: as low as they can be– Re-engineering: constant for production facilities,

information systems and organization

14

And the Customer Needs Have Never Been so Complex …

• « Real-time » Enterprise– All possible « touch points » must be available securely

• information and execution• Internal and external• Human and systems

• Complexity of the tasks– Deal with a much larger volume of data, information

and knowledge– Embedded in complex processes (task coordination)– Resource access is «highly distributed»

Page 8: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

8

15

And the Customer Needs Have Never Been so Complex …

• Decrease of Product Lifecycles– Establish processes for

• Design• Production• Logistic• Support• Maintenance

– Global Collaboration via virtual organisations• « Network engineering and manufacturing»• Supply chain optimization• Demand chain optimization

16

All this results in a globalization of the information and processes

LAN WAN Web

1980 1990 2000 2010

XMLWS

WebLANInternet

Information

BusinessProcesses

Local Global

Page 9: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

9

17

We just reached the stage of «massively connected systems »

• 2002-2003 led to a turning point for business application and their architectures– Everything that could be networked had been networked

• We are going to spend the next 10 years exploitingthis connectivity bounty– B2B– Real-time– …

18

This is going to be supported by the « Web-centric » model

Workflow

EDI

Mainframe

1980 1990 2000 2010

XMLWS

WebLANInternet

?BusinessIntegration

J2EE.NET

Client / Server

Web/Portal

EAI

B2BBPM

WSWeb-centric

SOA

Page 10: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

10

19

All our beliefs have been swept away, weare at the maximum confusion point

• Continuum Business object … Document– Consumer oriented (no more producer contracts )

• Messages and Services– No more « distributed objects »– Service grids

• Asynchronous communications• Federation and Collaboration

– As opposed to « Integration »– Business application borders are disappearing

• Langage(s)– Semantic (syntactic)– Declarative (Procedural)– Improving the productivity going from functional

specification directly to execution

We are reaching the concept of

Loose Coupling

20

Fortunately the first web-centric« bricks » have been laid out…

• XML• « peer-to-peer » asynchronous communications• The remaining problem in a massively connected

architecture– Managing state changes and in particular the alignment

of these changes between all the entities– In complete security !!

Page 11: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

11

21

BPM in Application Architecture

22

A roadmap… so we don’t get lost

• BPM and UI• BPM and business logic

– Web Services – Service Oriented Architecture

• BPM and EAI• BPM and B2B

Page 12: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

12

23

User Activities in a Business Application are Asymetric

• This is critical to realize that to understand the roleof BPM in an application architecture– Queries to « pull » business objects– Tasks such as

• Create/Delete business objects• Change their state• Establish relationships between business objects

• The link between BPM and the user interface happens at the task level

• BPM is not a « tier » of the architecture, it israther a brick

24

The Tasks are the Touchpoints BetweenUsers and Business Processes

• Architecturaly, we cannot separate the two aspects of the user interface

– A Business Process Engine is then by definition «embedded » completelyseparated from the user interface (tasks and queries).

– A user becomes a « service » like any other which exchanges messages with the business process engine

– Inbox concept to keep the system asynchronous

• This approach allows for decoupling the « user session » (short lived) from the lifecycle of business objects (long lived)

– A purchase order is going to go through various states: created, approved, ordered, received, paid, archived…

– These state changes happen upon events (B2B, user, legal…)

Page 13: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

13

25

The Model-View-Controller pattern revisited

View

Model

QueryUI Controller

TaskEngine

BusinessProcessController

TaskRequest

SelectTask

ServiceRequest

ChangeState

ControllerModelChanged

Model Changed

SelectView

WS

WS

WS

WS

26

We are going to reach the point of a completeseparation of the business logic and UI

View

ERP PLM CRM

UI Controller

TaskEngine

BusinessProcessControllerService

Request

WSQuery

Engine

WS

WS

WS

WS

WS

WS

Page 14: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

14

27

But… what about the concept of a « central » process engine?

• Enterprise-wide and omnipotent• Well…• This notion has been introduced for the B2B

where it is acceptable and accepted• Does not completely work for EAI integration

scenarios• Does not fit at all the application architecture• This concept is slowing down the development of

BPM technologies

28

General Ledger

OrderManagement

Receiving Inventory

HumanResources

CustomerService

AccountsReceivable

AccountsPayable

Production

SyncPersonnel

Load Receivable

Load Payable

Sync EmployeeWorkSchedule

Add SalesOrder

Sync SalesOrder

Sync Party

Sync I

temMaster

Issue

Invento

ryMov

ement

CreateProductionOrder

Post JournalEntry

Sync ChartOfAccounts

Sync ExchangeRateGet PickList

Update PickList

Show PickList

Update SalesOrder

Sync ItemMaster

Receiv

eInven

toryMov

ement

OAGIS 8.0 Scenario 41

A business process does not have a “center”…

Page 15: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

15

29

ERP

ManufacturingCapacity Analysis

Manufacturing Execution (MES)

Manufacturing/Production

Planning

Sync DispatchList

Get DispatchList

Show DispatchList

Sync ItemMasterSync ProductionOrder

Sync Routing

Sync BillOfMaterial

Sync ItemMasterSync ProductionOrder

Sync Routing

Sync BillOfMaterial

Sync Item

Sync P

rodorder

Sync R

outing

Sync B

OM

Confirm

InventoryIssue

Update W

IPC

onfirm

Update W

IPC

onfirm

Confirm

InventoryIssue

OAGIS 8.x Scenario 50

IT is de facto “peer-to-peer”

30

But…what about the web service vision?

Request

Web ServicesProviderResponse

InternetWeb ServicesProvider

J2EE™AppServer .NET

SOAP Messages

This is not the right

viewFor BPM, We must

think “peer-to-

peer”

Page 16: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

16

31

One Must also Differentiate between Orchestration and Choreography

BuyerSeller

OrderEntry

Billing

ApproveTask

PO MapRoute

PO

PO PO

SalesOrder

POSalesOrder

Orchestration

Orchestration

32

Orchestration Provide the Perfect Model for Long Running Business Logic of Services

Order EntryOrchestration Definition

PO

NAck

Ack

Approved

sendNack

yes

SalesOrder

sendSO

updateDB

sendAck

Transition

Message flow

Page 17: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

17

33

This is exactly what « BPEL Java embedding »is doing … mix code and Orchestration

Source: Collaxa

• This is the first brick of BPM, perfectlyintegrated with an application architecture (e.g. J2EE)

• In an SOA, this brick enables you to create directly and naturally the services relative to business object lifecycle

• This is the first brick of BPM, perfectlyintegrated with an application architecture (e.g. J2EE)

• In an SOA, this brick enables you to create directly and naturally the services relative to business object lifecycle

34

On the other hand Choreography Manages the Links between the Long Running Business Logic in a SOA

Seller

OrderEntry

Billing

ApproveTask

PO MapRoute

PO

PO PO

SalesOrder

• However, loose coupling can only be reached if we provide– Mapping– Routing

• Orchestration– J2EE, .NET

• Choreography– EAI, B2B– SOA

This « brick » does not exist yetIt can be simulated via orchestrationWe need to wait until SOA takes off

This « brick » does not exist yetIt can be simulated via orchestrationWe need to wait until SOA takes off

Page 18: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

18

35

So …

• Orchestration – « … is an emerging [concept] that would give programmers

a way to formally describe processes underlying business applications so that they can be exposed and linked to processes in other applications »

• Choreography– Is a concept that specifies how these processes are linked

together across the enterprise– Choreography can be « active » when mapping and routing

are necessary

36

And what about Collaboration?

• The inter-enterprise message exchange is sufficiently specific to justify the use of protocols for:– Business transactions– Business state alignment– Business object state synchronization…

• A choreography specifies the message exchange, a collaboration and associated protocols specifies the meaning of these message– Signal– Notification– Contract– Sending a shared business object…

Page 19: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

19

37

Putting it all together: Concepts and Standards

OrchestrationComposition

ChoreographyCoordination

Protocols

Collaboration BPSS

BPSSBTPWS-transaction

WS-CHORBPEL

BPM

WS-CAF

38

Registry

BPM = protocol://Collaboration(Choreography) +

(Orchestration*) + (Task*)View

ERP PLM CRM

TaskEngine

WS

WS

WS

WS

WS

WS

IntegrationServer(Decoupling forB2B and EAI)W

S

Orc

hest

ratio

nE

ngin

e

Orc

hest

ratio

nE

ngin

e

Orc

hest

ratio

nE

ngin

e

Business Process ExecutionIs Distributed and Not

Centralized

Page 20: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

20

39

Using BPM technologies today…

• Not a science fiction anymore…• You can definitely get started today

– Design and use (web) services that will potentially fit in business processes later

– Deploy embedded engines (commercial or open source) to manage the lifecycle of business objects

– Of course, can do some EAI and B2B today

40

The ultimate BPM standard…

Page 21: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

21

41

« Standards », who said« standard »?

OASIS

W3C

Others « proprietary »

ws-bpel

ws-chor ws-dlXMLP(SOAP)

ws-security ws-addressing

ebXMLUDDI

ebMSebRR

ebBPebCPP/A

OAGISebCCBPMN

WS-I

42

« Le Stack »

HTTP, SMTP, IIOP, …

Packaging

XMLP (SOAP)

WS-DL

Reliable Messaging

Security

Choreography Languages

Orchestration Languages

Transaction

Coordination

Context

Design timeRuntime

Transport

Messaging

Discovery

Quality ofservice

Integration

Businessintegration

Business Agreements Languages

Interaction Languages Sem

antic Web (R

DF, O

WL)

XML (XML 1.0, XML Schema, …) , URI

Message

Service

SO

A Accessibility, I18N, P

3P, …

Routing, Addressing

Description

Services ina SO

AServiceFabric

UDDI

© ebpml.org, 2003

Application

Content

Managem

ent

Page 22: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

22

43

Conclusion

• Business application architecture is undergoing major mutation– Chopping off the user interface– Integration capabilities are now THE value of these applications

• BPM is the third fundamental brick of web-centric SOA architectures after XML and peer-to-peer Web Services

• BPM technology still need to evolve dramatically– Orchestration, Choreography, Protocols and Collaboration– Powerful tools– Distributed engine as opposed to centralized

• You can start today applying these architecture principles, no need for Big Bang.

• The future will belong to whom can master massivelyconnected systems (SOA, Grids)

44

References

• http://www.opengroup.org/onlinepubs/007679899/toc.pdf• www.ebpml.org• http://groups.yahoo.com/group/India-egov/message/1010• http://www.yared.com/• http://www.crn.com/sections/BreakingNews/dailyarchives.asp?ArticleID=44275• http://www.research.ibm.com/convsupport/papers/edoc02.pdf

Page 23: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

23

45

Part II

Business Process Modeling Notation (BPMN)

and BPML / BPEL4WS

See also:(BPMN standards)

http://www.bpmi.orghttp://www.processwave.net/Articles/SoftwareProcess/BusinessModelingArticles.htm

http://cde.berkeley.edu/resources/bpmn/(BPMN tools)

http://www.popkin.com/http://www.popkin.com/customers/customer_service_center/demos/business/bpmn_tutorial_viewlet_swf.htmlhttp://www.popkin.com/customers/customer_service_center/demos/demos_with_overview_process_map.htm

46

Procedural Knowledge Road MapType of

knowledge/Levels

Conceptual model Deploymentmethodology

Interoperability

ProcessInstance

levelProcess instance

conceptBPMN+ Wf-XML

Processdefinition

level

Process definitionconcept

WfMC meta-model+BPMN XPDL+

• BPMN - Business Process Modelling Notation, BPMI, 11.02

• XPDL - XML Process Definition Language, WfMC, 07.02

• Wf-XML - Workflow Interoperability Binding, WfMC, 11.01

Page 24: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

24

47

ICONS’ conceptual models

• Process definition concepts - WfMC’sworkflow meta-model extended with – time modeling– flexible Workflow Participant Assignment

[Momotko2002]• Process instance concepts

– advanced process instance and activity instance behavioural models (timing and criticality behavior)

– advanced time management

48

BPMN and XPDL extensions

• BPMN extension (BPMN+)– idea - standard well-known notation for both

process definition adjusted to the needs for process instance

– ICONS’ approach - a BPMN extension to visualise process execution

• XPDL extension (XPDL+)– performer relationships (WPA)– pre & post conditions

Page 25: Business Process Management...ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS. 14 27 But… what about the concept

25

49

Process definition - an example

50

Possible process execution