The following best practices are related to load balancing and ownership.
-
It is recommended to Load Balance by User Group or Role rather than by individual User. Load Balancing by User Group reduces bottlenecks and needs less administration.
-
Consider using Ownership instead of Load Balancing if you are using User-based Load Balancing. This ensures that individual users have exclusive access to items. With Ownership, there is no administrative overhead of making sure the Load Balanced members are up to date, or needing to manually re-balance queues because different users work at different rates.
-
Consider using Ownership in conjunction with Load Balancing to distribute items most efficiently. Load Balance by User Group or Role to deliver items that each user is entitled to perform work on, then use Ownership to give each user exclusive access to the particular items they are actively working on.
-
When using Match Keyword to User Name, delete the Keyword Value from the document as it exits Workflow. When the document exits Workflow, delete any Keyword Value that was used for load balancing purposes. Deleting the Keyword Value helps manage the size of the keyword table, and thus controls performance over time. If deleting the Keyword Value is not an option, as it must remain on the document for reporting or retrieval purposes, consider purging documents in Document Maintenance.
-
It is recommended that actions that require user interaction not be used as load balancing work.
-
Use a Load Balance Keyword Type throughout the Workflow. If the keyword cannot be removed when the document exits Workflow, add another keyword to the driving Document Type called LB User. When the document enters a queue, simply copy the user name from the keyword that must remain on the document to the LB User keyword and configure load balancing to use the LB User keyword. When the document exits Workflow, delete the LB User keyword.
-
Consider using Rules Based Load Balancing rather than Match Keyword to User Name. When assigning work to a user whose name is defined in a keyword value, consider using Rules Based Load Balancing instead of Match Keyword to User Name. When implementing Rules Based Load Balancing, one can utilize the task Assign to User, which allows one to assign the document to a user whose name is defined in a keyword. Rules Based Load Balancing is a static form of load balancing; therefore, it is much faster than Match Keyword to User Name. When using Match Keyword to User Name, be aware of potential performance impacts. When a solution is first deployed, the database is typically small and performance issues are not exposed. Over time, the table structures in the database grow and it is important to manage them for optimal performance. Consider the number of users processing documents in Workflow and the growing number of documents traveling through Workflow over time. The number of users may be small in relation to the number of documents in the system, but as the number of documents grows, the number of documents with user names on them also grows. As the process continues, the keyword table eventually contains millions of records. When there are only one hundred (100) unique user names scattered across millions of documents, data redundancy occurs and significantly impedes performance.
-
Avoid transitions in load balancing work. I f you must transition in load balancing work, set a property and transition in system work instead.
-
When an item leaves a queue, clear any load balancing assignments, unless there exists a good business reason to maintain them. If it is desired to ensure the same user works on an item, use the last owner rather than the last Load Balancing assignee.