round Robin assignment

Hi,

I need to assign the task to the users in a Round Robin fashion automatically,

e.g: If I 5 task and 3 users, users 1,2,3 gets task 1,2,3 and task 4,5 gets assigned to user 1,2.

How can I implement this?

Can someone help me out?

Thanks in advance.

  Discussion posts and replies are publicly visible

  • In your process model you can implement a loop (based upon the number of Tasks you want to assign) and also have a list of Users, and a 'pointer' which is incremented each time a Task is assigned, which starts at 1 for the first Task (and therefore assigned to User 1), and then gets re-set to 1 when the last User has had a Task assigned.

    But I'd question why the 'Round Robin' pattern is even required. Assigning Tasks to individuals can be problematic (e.g. when they're away for holiday or are ill or suddenly resign)...which is why assigning Tasks to Groups is best practice.

  • Hi ,

    I would argue that you probably don't need to assign tasks to users in a round robin fashion automatically. 

    I don't recommend proactive "policing" of responsible work behavior by doling out tasks for 3 reasons.

    1. regardless of what system you build this on, Appian or other - it typically ends up being more work than you expect
    2. it's too easy for work to get "stuck" as a result of this approach.  If work is assigned to someone on vacation or out sick, is the system set up to handle that?  Can work be reassigned?  Who's allowed to do the reassignment...?  Managers, task workers?  someone else?  These questions, and others are some that contribute to the unexpected workload referenced in #1, above.
    3. When there's a pool of workers who can interchangeably work items from a single collection of tasks, It's much easier to have members of a group  "pull" the work from a queue and then report on their productivity.  Instead of enforcing fairness (which doesn't work all that well) - report on what happened, and recognize your top and bottom performers.
  • Hi, so without going in to a discussion around reasons not to implement round robin - agree with the previous points, however it is a very common method of assigning work to people particularly in high volume environments such as call centres and a very valid requirement to have. Particularly as when you are benefits focused, the amount of time taken assessing, allocating and picking the work is usually disproportionate to actually doing the work in the first place. I would encourage assessing the end to end flow and other tasks within the area to make sure you are fixing the right problem.  

    The solution I have used in the past is to make sure that you have a module whereby you know how is "available" for the work - this answers one of the points below. When you know who is available, you can then configure the allocation of work on a process by process basis as round robin is one method, and you could configure by "most available" person. So allocate the work to the person with the least tasks ... run query process analytics and run a rule to determine this person. For pure round robin, allocate a task id so the work is allocated in order of next person in the list of available people.

    As Appian became more records focused we moved to a data model to achieve this as we could gain intelligence around people and processes to find the most appropriate allocation method, so we actually moved the logic to stored procedures and services to determine the correct allocation of work to individuals or teams.

    I hope this helps.

    Dai