Round-robin assignment

The round-robin algorithm rotates through a set of users, assigning work to each in sequence. It is important to understand that round-robin assignment is distinct from workload-based assignment. Round-robin assignment does not take the current number of entities assigned to any of the users into account.

You can use load factors (in some circumstances) to affect the frequency of assignment to one user or another. For example, suppose that person A has a load factor of 100 and person B has a load factor of 50. In this case, the round-robin algorithm selects person A for assignment twice as often as person B.

See also

assignUserByRoundRobin

  • boolean assignUserByRoundRobin(includeSubGroups, currentGroup)

This method uses the round-robin user selection to choose the next user to receive the assignable from the current group or group tree. If the includeSubGroups parameter is true, the selector performs round-robin assignment not only through the direct children of the current group, but also through all of the parent group’s subgroups.

To give a concrete example, suppose that you have a set of policies that you want to assign to a member of a particular group. If you want all of the users within that group and all of its descendent groups to share the workload, then you set the includeSubGroups parameter to true.

The following example assigns an activity to the next user in a set of users in a group.
  • activity.CurrentAssignment.assignUserByRoundRobin( false, Activity.AssignedGroup )