Academy TechNotes ATN Volume 3, Number 6, 2012 Geo-Location Improves Business Process Management Human Task Assignment M ost Business Process Management (BPM) solutions assign human tasks to specific participants or groups of participants. Human tasks are activities or steps in the process. For example, if a specific human task in a process is to be performed by a “claims reviewer”, a number of options exist today: the BPM engine can add the task to the “claims reviewers” queue, waiting for a member of that group to claim it; the BPM engine can randomly assign the task to any member of the “claims reviewers” group; or the BPM engine can assign the task to a specific registered participant (e.g., the task is assigned to John Smith). Most BPM engines assign human tasks regardless of the assigned participant’s availability or geographic location. Even with the use of email or SMS notification mechanisms, or with the use of escalation mechanisms (e.g., automatic re-assignment), a large number of human tasks end up being idle, unclaimed, and not making progress. Most BPM solutions rely solely on static data about participants. The data is defined when users register with the system. This data is stored in user registries such as LDAP and user profiles. This significantly limits the ability to do effective task assignment. For example, it seems very ineffective to assign an approval task to a manager if she is on a plane with no connection. Or, how can we assign a customer complaint call to the technician who is already in the customer’s neighborhood? We propose the use of geo-location and user availability status data to more effectively perform human task assignment. The BPM engine assigns tasks only to end users who are available (connected/online) and at the best location to handle the work. This can be implemented by augmenting a BPM engine, adding dynamic user availability status and geo-location metadata to activities, business objects (the information that flows through the process), and participants. Just before it assigns the human task, the BPM engine compares the geo-location data of the activity to the geo-location data of the end users currently logged in, and assigns the task to the closest available. Suraj Shinde & Bertrand Portier The solution may be implemented by extending an existing BPM engine’s mechanism. Firstly, a configuration step is required to augment the engine’s metamodel with “location” attributes. For example, the engine needs to be aware of an activity’s location and a participant’s location. Secondly, the BPM client application is enhanced, capturing information about participants’ status (available or not) and geo-location information. This is a natural evolution in mobile clients (web, native, or hybrid). For example, HTML 5 provides a geo-location API. Thirdly, at runtime, the BPM engine keeps track of which participants are available and where – this is dynamic information, which is not available at design time. For the available users, the BPM engine compares their geo-location data to the activity's geo-location data and assigns the human task to the closest available participant. In this tech note, we propose an improvement to the traditional BPM human task assignment where the BPM engine uses information about a process participant’s availability and geographic location. This improvement is very relevant to today’s mobile workforce and has the potential to dramatically improve the execution of an enterprise’s business processes in the following manner: Reducing costs by minimizing wait time costs and reducing travel expenses. Speeding up the execution of business processes by avoiding the delays caused when business tasks are assigned to users who are unavailable. Improving the efficiency of business processes by assigning business tasks to users who are geographically better positioned to handle these tasks. DISCLAIMER: To protect the privacy of individuals, any implementation of this idea should consider a feature within the mobile client to seek permission of the individual before activating transmission of geo-location data to the BPM engine. About the Authors: Suraj Shinde is AIS Leader with GBS, Mexico and Bertrand Portier is an IBM Executive IT Architect with SWG, U.S. Both are members of the IBM Academy of Technology. http://twitter.com/#!/IBMAoT please use the hashtag #IBMAoT when mentioning the IBM Academy of Technology in any social media postings and consider following @IBMAoT © Copyright IBM Corporation 2012 For more information please visit the Academy web site.