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
- See Secondary (role-based) assignment entities for a discussion on secondary assignment and round-robin states.
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.
activity.CurrentAssignment.assignUserByRoundRobin( false, Activity.AssignedGroup )
