![Page 1: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/1.jpg)
CERN – European Organization for Nuclear ResearchIT Department – e–Business Section
Workflows and business process modelling for CERN's Electronic Document Handling system
Rostislav Titov,European Organization
for Nuclear Research
![Page 2: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/2.jpg)
CERNe–Business
Business processes
- Collection of activities that produce a service or product
- Can be represented by a graph (WF-net)
Start Studentpasses the exam
Resultsatisfactory? OK!
Maximumnumber of attempts
exceeded?ExpelledSchedule
the next attempt
Yes
Yes
No
No
![Page 3: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/3.jpg)
CERNe–Business
EDH
Electronic Document Handling @ CERN
![Page 4: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/4.jpg)
CERNe–Business
The Need for EDH Over 100 official
procedures Used by all CERN
personnel Over 250000
documents per year
Examples:– Purchase orders– Training Request– Holiday Request
![Page 5: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/5.jpg)
CERNe–Business
Paper Purchase Order
![Page 6: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/6.jpg)
CERNe–Business
Almost any Procedure
![Page 7: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/7.jpg)
CERNe–Business
e-business
Annual Appraisal (MAPS)Automatic Small Order (< 500CHF)Contract RequestEnd of probation period authorizationEnd-of contract authorizationExport Formalities requestExternal Training RequestFire PermitIllness declarationImport Formalities declarationInter-departmental funds transferInternal Purchase RequisitionInvoice authorizationLeave RequestOfficial Travel ClaimOfficial TripOn-site Training RequestOpening of Post RequestOvertime requestPart-time working schedule requestPayment to Third PartyPro-forma invoice requestRequest for an AdvanceRequest to Access Computer CentreRequest to Access Restricted AreasRequest to Drive CERN vehicleRequest to Enable/Disable AlarmRequest to Import merchandise (EU or Switzerland)Request to Perform Maintenance WorkRequest to Purchase from StoresRequest to transit the French/Swiss TunnelRequest to use Forklift Truck/Tractor/CraneSchool fees ReimbursementSkills InventorySubsistence ClaimSundry Expenses ClaimTelephone Subscription RequestTemporary Labour requestTravel To Home Station
“CERN’s EDH enables staff to focus on CORE activities by minimizing the overhead of business processes”
![Page 8: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/8.jpg)
CERNe–Business
Workflow in Action
![Page 9: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/9.jpg)
CERNe–Business
Workflow in Action
![Page 10: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/10.jpg)
CERNe–Business
Workflow in Action
![Page 11: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/11.jpg)
CERNe–Business
Workflow in Action
********
![Page 12: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/12.jpg)
CERNe–Business
Workflow in Action
AlreadyApproved
![Page 13: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/13.jpg)
CERNe–Business
Workflow in Action
XML
Order
![Page 14: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/14.jpg)
CERNe–Business
Workflow in Action
![Page 15: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/15.jpg)
CERNe–Business
Workflow Management System
• Workflow engine• Notification management• Visual process designer• Process visualization • Debugging • Error handling and exception management
Software for designing and executing workflows
![Page 16: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/16.jpg)
CERNe–Business
Workflow Standards
2000/05
XLang(Microsoft)
2001/03
BPML(Intallio et al)
2001/05
WSFL(IBM)
2001/06
BPSS(ebXML)
2002/03
BPEL4WS 1.0 (IBM, Microsoft)
BPEL4WS 1.1(OASIS)
2002/06 2003/01
WS-Choreography(W3C)
2003/04
WSCI(Sun et al)
WSCL(HP)
2002/08 2007/05
WS-BPEL 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…)
2004/05
BPMN 1.0(BPMI)
2009/01
BPMN 1.2(OMG)
2010?
BPMN 2.0
![Page 17: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/17.jpg)
CERNe–Business
BPEL
• Web Services Business Process Execution Language
• Developed by IBM, Microsoft and SAP in 2003
WS-BPEL 2.0 - 2004BPEL4People and WS-HumanTask - 2007
![Page 18: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/18.jpg)
CERNe–Business
BPEL
XML language 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
![Page 19: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/19.jpg)
CERNe–Business
BPEL Process Example
![Page 20: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/20.jpg)
CERNe–Business
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>
![Page 21: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/21.jpg)
CERNe–Business
BPEL Design IDE
![Page 22: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/22.jpg)
CERNe–Business
BPEL ActivitiesStructured 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
![Page 23: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/23.jpg)
CERNe–Business
BPEL Engines EvaluationDesigner Links in
designerXPATH tools
Open source
Java based Halt on fault and retry
Debugging Process versioning
Web based tools
Active BPEL
Oracle BPEL
IBM WebSphere
PXE
Cape Clear
Parasoft BPEL Maestro
Vergil VCAB
Twister / Agila BPEL
IT Pearl
BEA Weblogic workshop
Supported Partly supported Not supported
![Page 24: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/24.jpg)
CERNe–Business
Our Choice: ActiveVOSRobust server with a good track record
– One of the first BPEL vendors on the marketThe core engine is open 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
Persistent data is clear XML
![Page 25: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/25.jpg)
CERNe–Business
Integration with applicationsTwo 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
![Page 26: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/26.jpg)
CERNe–Business
BPEL Strong PointsBPEL is a standard!
– Supported on different platforms– Interfaces to various languages
Web Service interfaceGood integration with JavaEasy to integrate in
development/deployment environment
![Page 27: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/27.jpg)
CERNe–Business
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)
![Page 28: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/28.jpg)
CERNe–Business
BPMN
• Business Process Modelling Notation
Maintained by the OMG consortium (who maintain also UML specs)
![Page 29: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/29.jpg)
CERNe–Business
BPMN
Graphical representation of a business process
– can be used both by developers and business analysts
– no standard executable translation– can be translated to BPEL
![Page 30: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/30.jpg)
CERNe–Business
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
Swimlanes – used to define roles
![Page 31: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/31.jpg)
CERNe–Business
BPMN Process Example
Source: Wikipedia
![Page 32: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/32.jpg)
CERNe–Business
BPMN Events
Plain events – usually indicate beginning or end of a process
Message events – indicate sending or receving a message
Timer events – regularly happening events, time periods and timeouts
Error events – error generation and handling
Cancel events – cancel a transaction or react to a cancellation
Compensation events – start a compensation process or compensate
Conditional events – integrate business rules in the process
Signal events – exchange signals between processes
Complex events – choose from multiple events
Link events – link processes (for example, on multiple pages)
Terminate events – immediately stop all business processes without any error handling or compensation
![Page 33: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/33.jpg)
CERNe–Business
BPMN Activities
Multiple instance – this task has to be done multiple times for each object
Task
Multiple instance
|||
Loop
Task – a task to be done
Loop activity – do task until the loop condition is met
Subprocess – a complex task (a process within process)
![Page 34: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/34.jpg)
CERNe–Business
BPMN Gateways
XExclusive OR (data-based) – Choose one outbound path. Synchronization: process continues once any inbound path has been completed
O
+
Exclusive OR (event-based) – Choose a path where an event happens. The next element should be an event or an event-handling activity
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
Inclusive gateway – Choose one or multiple outbound paths. Synchronization: process continues once any inbound path has been completed
Complex gateway – split or merge the process based on a complex rule
![Page 35: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/35.jpg)
CERNe–Business
BPMN Connections
Simple
Conditional
Default
Sequence Flow – shows the order in which activities are executed
Message Flow – shows exchange of messages
Associations – logical associations between elements
![Page 36: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/36.jpg)
CERNe–Business
Basic Workflow Patterns
Sequence
A B C
- First A, then B, then C
![Page 37: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/37.jpg)
CERNe–Business
Basic Workflow Patterns
Parallel Split
A
B
C
- B and C start together once A finishes
A
B
C
+
![Page 38: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/38.jpg)
CERNe–Business
Basic Workflow Patterns
Synchronization (AND-Join)
C
A
B
+
- C starts once A and B finish
![Page 39: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/39.jpg)
CERNe–Business
Basic Workflow Patterns
Choice
- If Condition1 then B, if Condition2 then C, ...
A
B
C
O
Condition1
Condition2
A
B
C
true
false
![Page 40: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/40.jpg)
CERNe–Business
Basic Workflow Patterns
Merge
- D starts when B ends or when C ends
A
B
C
D
![Page 41: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/41.jpg)
CERNe–Business
BPMN Strong Points
Intuitive
Can be used both by developers and business analysts– Bridging the gap between process
design and implementation
![Page 42: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/42.jpg)
CERNe–Business
BPMN weak points
Converting to executable environments is a problem– Informal and partial mapping from
BPMN to BPEL
![Page 43: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/43.jpg)
CERNe–Business
Handling Signatures
![Page 44: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/44.jpg)
CERNe–Business
Signature Event
Signature event is a task for interacting with people, who are asked to approve or reject an electronic document
BPEL4People: “WS-HumanTask”(definition of human tasks and notifications)
![Page 45: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/45.jpg)
CERNe–Business
Typical signature functions
Find who can sign Assign signature to a person Notify chosen person Interact with signature processing service Choose another person in case of
absence / inactivity Skip signature if person already signed Handle forward / postpone Return a result
![Page 46: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/46.jpg)
CERNe–Business
Signature Targets
• Specific person - John Doe
• Group of people - leave-admins
• Role/Right - Department Head
![Page 47: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/47.jpg)
CERNe–Business
Signature Roles
Could be hierarchical (e.g. Group Leader) or nominated (e.g. Safety Officer)
Have target(s)- DepartmentHead(IT)- SafetyOfficer(NICA)- CollaborationLeader(CMS, JINR)
Valid during a period of time
Have a priority
![Page 48: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/48.jpg)
CERNe–Business
Rights Hierarchy
At CERN, one role can give many rights… Group leaders are responsible for signing financial documents, signing
leave requests of people they supervise, signing personnel action forms etc…
To reduce their workload managers may delegate part of their rights to other persons
For example, a group leader may want that purchase requests were signed by his deputy
A hierarchy of rights is needed to support such partial delegation of rights
May not be a problem for smaller organizations
![Page 49: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/49.jpg)
CERNe–Business
Signature: Rights hierarchy
Role(Group Leader)
Right to signpurchase requests
Right to signofficial travels
Right to signleave requests
Right to signovertime claims
Financialrights
Personnelrights
![Page 50: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/50.jpg)
CERNe–Business
Rights Management by EDH
01.01.2009 GS-AIS-EBSLDerek MATHIESON (AS-IDS) 0
Validity date(s)TargetTypeHolderPriority
Roles held by Derek MATHIESON (GS-AIS-EB)
GS-AIS-EBSHIPS(SL)Derek MATHIESON (GS-AIS-EB)4500
01.01.2009 GS-AIS-EBSLSADMIN(SL) Derek MATHIESON (GS-AIS-EB) 700
01.01.2009 71101LFC(SL) Derek MATHIESON (GS-AIS-EB) 4500
Validity date(s)TargetTypeHolderPriority
Profiles held by Derek MATHIESON (GS-AIS-EB)
![Page 51: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/51.jpg)
CERNe–Business
Signature Replacements
Who can sign if the main responsible is away or does not respond?
Same role, lower priority Deputy Supervisor Nobody:
Assign back to the first person Stop workflow, notify responsible persons Skip signature (in certain cases)
![Page 52: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/52.jpg)
CERNe–Business
Signature Time-out
Time-out is a maximum delaywhich a document can waituntil escalating the signature
At CERN: Typically 3 days, but could be shorter or longer depending on the nature of the document
• Sometimes time-out is not applicable (examples: requestor’s signature, DG’s signature, ...)
![Page 53: Workflows and business process modelling for CERN's Electronic Document Handling system](https://reader035.vdocuments.site/reader035/viewer/2022062521/568167e3550346895ddd4bd3/html5/thumbnails/53.jpg)
CERNe–Business
Approval time @ CERN (2010)
0
2
4
6
8
10
12
14
16
Approval Time (days) Number of Signatures