You can also access this tutorial in German and French.


This tutorial is about Shortest Queue, one of the allocation strategies for work items of the Business Process Management System YAWL. We show you how to configure Shortest Queue in the YAWL editor and then look at how this works when executed. The zip file below contains the files you need with this example. 


Can we allocate work items to users in a meaningful automated way? The answer is yes! YAWL has allocation strategies. Hi! My name is Andreas Hense and I do videos on Business Process Automation. This video is part of a series on YAWL tutorials. Today I'll show you how to allocate work items to the user with the shortest work queue. Okay, we'll do two things: first we will look at an example workflow in the YAWL editor and I'll show you how to configure "shortest queue" in the editor and then in the second part we will just look how this works if we execute the workflow. So, here behind me you can already see the YAWL workflow open in the YAWL editor and you can get the material in our companion page and the link is in the description below. So, we have "Submit leave request" and then "Approve leave request" and then the workflow goes on. So, assume that we want to distribute the "Approve leave request" work items to the one with the shortest queue. So, in order to do that, we go to this "Approve leave request" task and go to resourcing and here in resourcing you can see that currently this is offered to the role Approver and we have in fact two users in our system with the role Approver and then in the allocation part down here, we have marked "enable system allocation" and we have chosen the strategy "shortest queue" and in here, you can have other strategies as well like "fastest to allocate", "round robin", "random", etc etc. But we have chosen "shortest queue" and so, this is the setting in our editor. Okay, So, in our setting here for the execution we have three windows open: on the left hand side there is a window where there is someone logged in who is an applicant and who does submit leave request and there are already some cases started here and on the right hand side on the top you have the work list of Ray Reese and Ray Reese is an approver as a role approver and the same goes for Rosa Maine which is the window below. This is an approver as well and we have already some work items in their work list So, you can see that Ray Reese on top has two work items "Approve leave request" and Rosa Maine has five work items "Approve leave request". So, what will happen if we now go to this applicant and we start a "Submit leave request"? So, I mean we can just input any data. It doesn't really matter what we do here. So, I will just enter some meaningless data and I will complete. Now we would expect that because its shortest queue that Ray Reese is getting this work item. So, if we refresh the work queue, we can see we have another work item appearing here and below nothing is happening and if we do this again case id 46 and we refresh it again, we see that 46 is again appearing here for Ray Reese because he is still the shortest queue and nothing is happening below and So, this is how it behaves and you can of course with a supplementary material try to do the same thing and do experiments with this strategy. So, let me know if this works for you. Do you have any application for this? Let me know in the comments.