Lab 18 - Automated task reassignment

Lab Goal

To automate task such that when claimed, if user does not complete in specified time, reassign back to group for another user to process.

Approve Rewards problem

The process has been running for awhile but we notice that when our task is created, it is assigned to the manager role. This group can then claim the task and work on it hopefully completing it in a timely fashion. One problem that has come up is that when a task is claimed and the manager then become sick (or does not come to work for some other reason), the task then sits unattended for as long as that manager is out of her office.

Approve Rewards fix

To fix this issue, we can setup our Approve Rewards task to auto-reassign a claimed task if not completed within a time we specify. The reassignment would be to put it back into the Manager group for another manager to claim and complete.

User task reassignment

  • In project authoring we open rewards process
    • AUTHORING -> PROJECT AUTHORING -> rewards-approval

User task reassignment

  • Select (click) Approve Reward user task and slide out Properties panel

User task reassignment

  • In Properties panel under section Extra Properties
  • Select Reassignment field to open Editor for reassignments

User task reassignment

  • Click on Add Reassignment for a new entry
  • Fill in all fields as shown to have any task claimed by ERICS returned to the manager group if not completed within 1 minute. (could be 1d, 1w, etc)
  • Click on OK button to close reassignment editor

User task reassignment

  • Save the process and add commit message as shown
  • Now it is time to test reassignment of a claimed task back into the group after 1 minute

Test task reassignment

  • Build and deploy the rewards project
  • Project Authoring -> Tools -> Project Editor

Test task reassignment

  • click on Build & Deploy button in top right corner

Test task reassignment

  • Click on No in Information popup to just build and deploy
  • Watch for the green popup bar stating that the build was successful

Test task reassignment

  • Now we can examine our deployed process definition
  • Project Authoring -> Process Mangement -> Process Definitions
  • To view our definition details, click on the magnifying glass icon under Actions

Test task reassignment

  • An overview of the various process definition details is given in this view
  • You can start a process instance from here by clicking the New Instance button

Test task reassignment

  • We can also start a process instance from the Process Definition view by clicking the start-icon under Actions

Test task reassignment

  • Either way, we get a popup start process form that we designed previously
  • We fill in the rewards submission details and click on the arrow at the bottom

Test task reassignment

  • Watch for the yellow popup bar stating Process instance started
  • We are then presented with the process instance view, notice progression to Approve Reward task
  • Note your Instance ID may differ from ours

Test task reassignment

  • Open the task list to view waiting user tasks
  • Project Authoring -> Tasks -> Tasks List
  • Our task is in the Active and Group lists until claimed

Test task reassignment

  • Click on open lock icon to claim the task, a yellow popup bar confirms claim
  • We are presented with the details of our task

Test task reassignment

  • Note the task is now listed in Active and Personal tabs
  • It is no longer in the Group tab, meaning not available to all Managers anymore

Test task reassignment

  • Wait 1 minute and then click refresh button on the Task List
  • The task you owned is not in your Personal list, but back into the Group

Rewards process project

(next up, more task updates needed so we add automated email notifications for tasks taking too long...)
Eric D. Schabell
JBoss Technology Evangelist
@ericschabell
http://schabell.org

JBoss BPM Suite Workshop

Lab 19 - Automated e-mail task notifications