300 likes | 667 Views
MTAT.03.231 Business Process Management (BPM) Lecture 9: Process Automation. Marlon Dumas marlon.dumas ät ut . Ee (including slides by Remco Dijkman, TU/e). Where are we?. Business Process Automation Possibilities. Use data sharing (Intranets, ERPs) to:
E N D
MTAT.03.231Business Process Management (BPM)Lecture 9: Process Automation Marlon Dumas marlon.dumas ät ut . Ee (including slides by Remco Dijkman, TU/e)
Business Process Automation Possibilities • Use data sharing (Intranets, ERPs) to: • Increase availability of information to improve decisions or visibility (subject to security/privacy) • Avoid duplicate data entry, paper copies • Use network technology to: • Replace materials (e.g. paper document) flow with information flow • E.g. querying government agency DBs replacing document flow • Increase communication speed: e-mail, SMS • Note: e-mails are unavoidable, but not always desirable • Enable self-service (e.g. online forms) (T+,Q+/-,C+/-,F-)
Business Process Automation Possibilities • Use tracking technology to identify/locate materials and resources where reasonable • Identification: Bar code, RFID • Location: indoor positioning, GPS • Use Business Rule Management Systems to automate decision tasks • Capture and automate business rules where effective • Use Business Process Management Systems (BPMS) or related technology to automate end-to-end processes
Data-Driven vs. Process-Aware • A data-aware system provides functions that allow users to do anything they wish and can… • Example: our study info system • A process-aware system users figure out what needs to be done and when • E.g. insurance claims handling system
The Journey to Executable Processes Process Model more abstract more business oriented 1 Complete process 2 Cover all aspects 3 Adjust task granularity Executable Model more concrete more technology oriented
1. Complete process A process often misses control-flow information,because the modelers: • assumed that it is common knowledge • didn’t know • got contradicting statements • just forgot/ were being lazy • …
1. Complete process A process often misses control-flow information: • missing time-outs? • All possible loops/rework captured? • ‘sunny day’ scenario but also ‘rainy day’ scenarios? • Alternatives • …
1. Complete process Sunny day scenario: there is no rejection reject receive application pay out accept Correct by adding a ‘rejection’.
2. Cover all aspects • Work assignment rules • Data • Invoked applications Application case_id name details Approval case_id approved John Sarah Administrator Checker enter request approve request
What do we need to make a process model executable? • > specify decisions, timeouts… • Control flow • Data flow • Resources > specify data types(e.g. XML Schema) and data mappings • > specify org. model, allocation strategies, application APIs... • Unfortunately, this is not enough…
Let’s get our hands dirty • Fragment of equipment rental process in Bizagi
3. Adjust task granularity Make your tasks the right size, because: a workflow engine sends work orders. • Should neither be too fine-grained • nor too coarse-grained ... enter name enter street enter number enter place enter application and have it approved (by somebody else)
3. Adjust task granularity A task of the right size should encompass work that a single person can perform ``uninterrupted’’ • nothing less (not too fine-grained) • nothing more (not too coarse-grained)
3. Adjust task granularity Consequently, split a task when work is handed over to: • another role • another person • the system handover to new role one task Administrator Administrator Checker enter client enter request approve request
3. Adjust task granularity Consequently, split a task when work is handed over to: • another role • another person (due to work assignment) • the system handover to new person one task Administrator Administrator Checker Administrator enter client enter request approve request verify request (four eyes)
3. Adjust task granularity Consequently, split a task when work is handed over to: • another role • another person • the system • for a routing decision • before or after an automated task