1 / 43

Workflows and business process modelling for CERN's Electronic Document Handling system

Workflows and business process modelling for CERN's Electronic Document Handling system . Rostislav Titov , GS-AIS-EB Section Leader, CERN. EDH. Electronic Document Handling @ CERN. Paper Purchase Order. Almost any Procedure. e -business. > 270’000 documents in 2010

tegan
Download Presentation

Workflows and business process modelling for CERN's Electronic Document Handling system

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Workflows and business process modelling for CERN's Electronic Document Handling system RostislavTitov,GS-AIS-EB Section Leader, CERN

  2. EDH Electronic Document Handling @ CERN

  3. Paper Purchase Order

  4. Almost any Procedure

  5. e-business • > 270’000 documents in 2010 • > 14’000 users from many countries • Used by all CERN personnel Accelerator Material Storage Annual Appraisal Automatic Small Order (< 500CHF) Change of the local address Contract Request Declaration of family situation Emergency contacts End of probation period authorization End-of contract authorization Export Formalities request External Training Request Fire Permit Identification of Radioactive Waste Illness declaration Import Formalities declaration Induction Interview follow-up Inter-departmental funds transfer Internal Purchase Requisition Invoice authorization Language Training Reimbursement Leave Request Official Travel Claim Official Trip On-site Training RequestOpening of Post Request Overtime request Part-time working schedule request Payment to Third Party Pro-forma invoice request Reception of Goods Reimbursement of Candidate’s Expenses Request for an Advance Request for External Funds Request to Access Computer Centre Request to Access Restricted Areas Request to Drive CERN vehicle Request to Enable/Disable Alarm Request to Import merchandise (EU or Switzerland) Request to Perform Maintenance Work Request to Purchase from Stores Request to transit the French/Swiss Tunnel Request to use Forklift Truck/Tractor/Crane School fees ReimbursementSkills Inventory Staff Selection Subsistence Claim Sundry Expenses Claim Telephone Subscription Request Temporary Labourrequest Termination check-sheet Tracking of interventions Travel To Home Station “CERN’s EDH enables staff to focus on CORE activities by minimizing the overhead of business processes”

  6. Workflow in Action

  7. Workflow in Action

  8. Workflow in Action

  9. Workflow in Action ********

  10. Workflow in Action  AlreadyApproved 

  11. Workflow in Action XML Order

  12. Workflow in Action

  13. Business processes • Collection of activities that produce a service or product • Can be represented by a graph (WF-net)

  14. Workflow Management System • Software for designing and executing workflows • Workflow engine • Notification management • Visual process designer • Process visualization • Debugging • Error handling and exception management

  15. Workflow Standards BPML (Intallio et al) BPSS (ebXML) WSCI (Sun et al) WS-Choreography (W3C) 2000/05 2001/05 2001/06 2002/03 2002/06 2002/08 2003/01 2003/04 2007/05 2001/03 WSCL (HP) WSFL (IBM) BPEL4WS 1.0 (IBM, Microsoft) XLang (Microsoft) WS-BPEL 2.0 BPEL4WS 1.1(OASIS) BPMN 1.2 (OMG) BPMN 1.0 (BPMI) 2011/01 2009/01 2004/05 BPMN 2.0 • BPEL and BPMN are Industry Standards • Standards based approach ensure longevity of the workflow engine • Supported by the big players in the industry (Microsoft, IBM, SUN, Oracle…)

  16. BPEL • Web Services Business Process Execution Language • Developed by IBM, Microsoft and SAP in 2003 WS-BPEL 2.0 - 2004 BPEL4People and WS-HumanTask - 2007

  17. BPEL • XMLlanguage for defining behaviour of a process • that provides web-service(s) • that uses web-services • everything it sees is a web-service • no other external interactions Definition: OASIS

  18. BPEL Process Example

  19. BPEL Process Example <bpel:assign name="setSignatureParameters"> <bpel:copy> <bpel:from part="documentId" variable="inputVariable"/> <bpel:to part="signature" variable="invokeSignature_process_InputVariable"> <bpel:query>ns15:docId</bpel:query> </bpel:to> </bpel:copy> <bpel:copy> <bpel:from>cern:getExpression('S', '10000M', $budget/ns14:budgetCode, $doctype)</bpel:from> <bpel:to part="signature" variable="invokeSignature_process_InputVariable"> <bpel:query>ns15:expression</bpel:query> </bpel:to> </bpel:copy> <bpel:copy> <bpel:from>3</bpel:from> <bpel:to part="signature" variable="invokeSignature_process_InputVariable"> <bpel:query>ns15:signatureDelay</bpel:query> </bpel:to> </bpel:copy> <bpel:copy> <bpel:from part="exclusionList" variable="inputVariable"/> <bpel:to part="signature" variable="invokeSignature_process_InputVariable"> <bpel:query>ns15:exclusionList</bpel:query> </bpel:to> </bpel:copy> <bpel:copy> <bpel:from>'STD_FIN_UNLIMITED_SIGN_ENG_MSG'</bpel:from> <bpel:to part="signature" variable="invokeSignature_process_InputVariable"> <bpel:query>ns15:engMessage</bpel:query> </bpel:to> </bpel:copy> <bpel:copy> <bpel:from>'STD_FIN_UNLIMITED_SIGN_FRE_MSG'</bpel:from> <bpel:to part="signature" variable="invokeSignature_process_InputVariable"> <bpel:query>ns15:freMessage</bpel:query> </bpel:to> </bpel:assign>

  20. BPEL Design IDE

  21. BPEL Activities Structured activities – can contain other activities<sequence> one after the other<flow> in parallel<pick> choose by inbound message<switch> choose by expression evaluation<while> iteration<scope> nest, with declarations and handlers, synchronize Communication<invoke> send msg to partner; possibly receive response<receive> accept msg from partner<reply> send msg to partner as response to <receive> Other<assign> manipulate variables<wait> for duration / until time<exit> end the process<compensate> run compensation handler of inner scope<throw> exit with fault to outer scope<empty> do nothing

  22. BPEL Engines Evaluation Supported Partly supported Not supported

  23. Our Choice: ActiveVOS • Robust server with a good track record • One of the first BPEL vendors on the market • The core engine wasopen source • Widely used / well tested • Fully supports the standards • ActiveVOS Enterprise builds on the OS Engine and adds: • Process versioning • Halt on fault/retry • Clustering • Multi-tenancy • Persistent data is clear XML

  24. Integration with applications Two ways to interface with other applications Through a Web Service Invocation Native to BPEL Creates “noise” in the process More complex to implement Can interface to any language In EDH used for read/write functions Custom XPath functions Not completely standard (part of JAXEN) Lightweight mechanism in Java BPEL engines Can be called in assigns or in the condition statements In EDH used for read only functions

  25. BPEL Strong Points • BPEL is a standard! • Supported on different platforms • Interfaces to various languages • Web Service interface • Good integration with Java • Easy to integrate in development/deployment environment

  26. BPEL weak points • Verbose and heavy language (WSDL interface, technical activities e.g. assign) • Loops have to be explicitly declared (links back to already executed steps are not allowed) • Rigid process model (even when debugging) • Transaction management (currently)

  27. BPMN • Business Process Modelling Notation • Maintained by the OMG consortium (they also maintain UML specs)

  28. BPMN • Graphical representationof a business process • can be used both by developers and business analysts • no standard executable translation • can be translated to BPEL

  29. BPMN Elements Events– something that happens in the system Activities– some work to be done Gateways – split or merge paths depending on conditions Connections– connect elements Sequence flow Default flow Conditional flow Swimlanes– used to define roles Lane Lane Lane Pool Lane Closed lane

  30. BPMN Process Example Buyer Handle order Order received Inform the client about processing Send proposal to the client Sales Representative Close the case Change proposal Make proposal Seller Proposalrejected Receive request Not approved Approved Consider proposal Sales Manager Source: Wikipedia

  31. BPMN Events Start Intermediate End Processing Throwing Plain events – usually indicate beginning or end of a process . Plain Message events – indicate sending or receiving a message Message T imer events – regularly happening events, time periods and timeouts Timer E rror events – error generation and handling Error C ancel events – cancel a transaction or react to a cancellation Cancel C ompensation events – start a compensation process or compensate Compensation Conditional C onditional events – integrate business rules in the process S ignal events – exchange signals between processes Signal Complex events – choose from multiple events Complex L ink events – link processes (for example, on multiple pages) Link T erminate events – immediately stop without error handling or Terminate compensation

  32. BPMN Activities Task– a task to be done Task Multiple instance – this task has to be done multiple times for each object Multiple instance ||| Loop activity – do task until the loop condition is met Loop Subprocess – a complex task (a process within process)

  33. BPMN Gateways X Exclusive OR(data-based) – Choose one outbound path. Synchronization: process continues once any inbound path has been completed Exclusive OR(event-based) – Choose a path where an event happens. The next element should be an event or an event-handling activity Inclusive gateway – Choose one or multiple outbound paths. Synchronization: process continues once any inbound path has been completed O Parallel gateway – split a process into parallel branches, all of which run at the same time. Synchronization: wait for all processes to finish and then continue + Complex gateway – split or merge the process based on a complex rule

  34. BPMN Connections Sequence Flow– shows the order in which activities are executed Simple Conditional Default Message Flow– shows exchange of messages Associations – logical associations between elements

  35. BPMN Strong Points • Intuitive • Can be used both by developers and business analysts • Bridging the gap between process design and implementation

  36. BPMN weak points • Converting to executable environments is still not obvious

  37. Signature Event Signature event is a task for interacting with people (e.g. ask to approve or reject a document)  BPEL4People: “WS-HumanTask”(definition of human tasks and notifications) Approved 2KCHF signature  Rejected

  38. Thank You For More Information E-mail:Rostislav.Titov@cern.ch

  39. Basic Workflow Patterns Sequence - First A, then B, then C

  40. Basic Workflow Patterns Parallel Split - B and C start together once A finishes

  41. Basic Workflow Patterns Synchronization (AND-Join) - C starts once A and B finish

  42. Basic Workflow Patterns Choice - If Condition1 then B, if Condition2 thenC, ...

  43. Basic Workflow Patterns Merge - D starts when B ends or when C ends

More Related