2.2 Routing Strategies: Worklists, Work Queues, and Teams
Key Takeaways
- Work assignment follows two distinct models: push routing (direct delivery to an individual's Worklist) and pull routing (distribution to a shared Work Queue via Get Next Work).
- The four primary routing targets in Pega are Current user, Specific user (Operator ID / Worklist), Work Queue (Workbasket), and Use business logic (Decision Table / Decision Tree).
- The organizational hierarchy models governance using Operators (Data-Admin-Operator-ID), Work Groups (Data-Admin-WorkGroup), and Work Queues (Data-Admin-WorkBasket), abstracted as Teams and Team Members in App Studio.
- Get Next Work (GNW) dynamically pulls the highest-priority assignment by sorting accessible work queue tasks by descending urgency (pyUrgencyAssignWork) while enforcing operator skill proficiencies.
- Hardcoding individual Operator IDs into assignment steps is a severe anti-pattern; robust architectures route to shared Work Queues or dynamic properties like the reporting manager (.pyReportTo).
2.2 Routing Strategies: Worklists, Work Queues, and Teams
In Pega Platform, Routing is the automated mechanism that ensures human assignments are delivered to the right person or team at the right time. When a case step requires human intervention (such as reviewing an application, approving an expenditure, or inspecting collateral), the workflow engine generates an Assignment record and routes it to an operational destination.
Mastering routing strategies, organizational structures, and the Get Next Work algorithm is vital for ensuring high operational throughput and scoring high on the Pega CSA exam.
1. Push vs. Pull Work Distribution
Pega supports two fundamental paradigms for work allocation:
Push Model: Case Step ───────> Specific User Worklist (Assign-Worklist)
Pull Model: Case Step ───────> Shared Work Queue (Assign-WorkBasket)
▲
Operator clicks GNW ─────┘ (Evaluates Urgency & Skills)
Push Routing (Worklist)
- Destination: An individual user's personal Worklist (class
Assign-Worklist). - Mechanism: The system directly pushes the task into a single operator's inbox. Only that specific operator (or an authorized delegate/manager) sees and opens the assignment.
- When to Use:
- Strict individual accountability is required (e.g., a specific account manager owns the client relationship).
- The task is a follow-up directly related to work the user initiated.
- The worker has unique personal knowledge of the case history.
- Drawbacks: Vulnerable to bottlenecks. If the assigned operator is out sick, on vacation, or backlogged, the case stalls unless a manager intervenes.
Pull Routing (Work Queue)
- Destination: A shared Work Queue (historically known as a Workbasket, class
Assign-WorkBasket). - Mechanism: Assignments sit in a shared repository accessible to all qualified members of a team. Users retrieve work manually or leverage Pega's automated Get Next Work engine.
- When to Use:
- High-volume, standardized processing (e.g., claims intake, document indexing, tiered customer support).
- Load balancing across teams with identical or overlapping job functions.
- Protecting SLAs by eliminating single-operator dependency.
2. The Four Standard Routing Targets
When configuring an assignment step in App Studio or Dev Studio, architects select among four core routing options:
| Routing Target | Routing Destination | Underlying Rule / Reference | Configuration Scenario |
|---|---|---|---|
| Current User | The authenticated user currently processing the case. | Active OperatorID session | Use when an intake agent fills out Page 1 and must immediately complete Page 2 without returning to a portal. |
| Specific User | A specific individual's personal worklist. | Data-Admin-Operator-ID (or dynamic property like .AssignedReviewer) | Use for tasks assigned to a known individual, such as routing to the case owner's manager via .pyReportTo. |
| Work Queue | A shared team repository (Workbasket). | Data-Admin-WorkBasket | Use when any available underwriter, claims processor, or customer service representative should pick up the task. |
| Use Business Logic | Evaluates a business decision rule at runtime to determine the destination. | Rule-Declare-DecisionTable or Rule-Declare-DecisionTree | Use when routing depends on dynamic case data (e.g., claim amount, geographic region, or policy type). |
3. Pega Organizational Structure
To route work accurately, Pega relies on an enterprise organizational model composed of five foundational entities:
Organization (Data-Admin-Organization)
└── Division (Data-Admin-OrgDivision)
└── Unit (Data-Admin-OrgUnit)
Cross-Functional Operational Layer:
Work Group (Data-Admin-WorkGroup)
├── Managed by: Work Group Manager (Operator)
├── Default Work Queue: Data-Admin-WorkBasket
└── Members: Operators (Data-Admin-Operator-ID)
Core Entities
- Organization (
Data-Admin-Organization): The top level of the enterprise structure (e.g.,UPlusBank). - Division (
Data-Admin-OrgDivision): The secondary business unit (e.g.,PersonalBanking). - Unit (
Data-Admin-OrgUnit): The granular operational team or cost center (e.g.,LoanOriginationEast). - Work Group (
Data-Admin-WorkGroup): A logical, cross-functional grouping of operators that can span across divisions and units. A Work Group defines:- A Manager (an Operator ID responsible for oversight).
- A Default Work Queue for team-level tasks.
- Work Queue (
Data-Admin-WorkBasket): A centralized queue where assignments reside until pulled by an operator or automated agent. - Operator (
Data-Admin-Operator-ID): The user record containing credentials, access groups, primary work group, secondary work queues, and skill ratings.
App Studio Abstraction: Teams and Team Members
App Studio simplifies this enterprise hierarchy:
- A Team maps directly to a Work Group and its associated Work Queue.
- A Team Member maps to an Operator ID associated with that Work Group.
4. Get Next Work (GNW) Logic & Skill-Based Matching
Get Next Work is Pega's automated pull engine. When an operator clicks Get Next Work in their user portal, the system does not pick assignments randomly. It applies a rigorous multi-tier filtering algorithm:
GNW Selection Sequence
- Worklist vs. Work Queue Preference: The operator's record specifies whether to check the user's personal worklist first or search team work queues first.
- Urgency Ordering: Eligible assignments are sorted by assignment urgency (
.pyUrgencyAssignWork) in descending order (highest urgency first). - Skill-Based Verification (
Rule-Admin-Skill):- An assignment can require specific skills with minimum competency ratings (range 1 to 100). For example:
Spanish >= 75andUnderwritingLevel >= 3. - GNW inspects the operator's skill profile. If the operator's rating is lower than the assignment's required threshold, that assignment is skipped.
- An assignment can require specific skills with minimum competency ratings (range 1 to 100). For example:
- FIFO Tie-Breaking: If multiple candidate assignments have identical urgency and the operator meets all skill thresholds, GNW selects the oldest assignment based on creation timestamp (
.pxCreateDateTime).
5. Dynamic Routing with Business Logic
Real-world workflows rarely route to a static queue. Pega enables Dynamic Routing by coupling assignment steps to Decision Tables (Rule-Declare-DecisionTable).
Scenario: Loan Application Underwriting Routing
Consider an enterprise banking application where loan routing depends on the requested amount and the property jurisdiction:
Requested Amount (.LoanAmount) | Property State (.PropertyState) | Routing Action | Target Queue |
|---|---|---|---|
<= 50000 | Any | Route to Work Queue | JuniorUnderwriters@Loans |
> 50000 and <= 250000 | Any | Route to Work Queue | SeniorUnderwriters@Loans |
> 250000 | "CA", "NY" | Route to Work Queue | MetroSpecialists@Loans |
> 250000 | Otherwise | Route to Work Queue | ExecutiveUnderwriters@Loans |
In App Studio, this is configured simply by selecting Route to: Use business logic, choosing the condition properties, and mapping outputs to teams. In Dev Studio, the underlying assignment shape references the router activity ToDecisionTable.
6. Architectural Anti-Patterns and Exam Traps
| Common Anti-Pattern | Operational Risk | Certified Architect Solution |
|---|---|---|
Hardcoding Operator IDs (e.g., routing to "john.doe@uplus.com") | When John Doe takes leave, transfers, or leaves the company, cases become trapped, violating SLAs. | Route to a shared Work Queue or use dynamic properties like .pyReportTo (the user's reporting manager). |
| Routing High-Volume Work to Individual Worklists | Creates uneven work distribution, bottlenecks, and idle workers while others are overloaded. | Route high-volume transactional work to Work Queues and let workers pull via Get Next Work. |
| Neglecting Skill Proficiency Ranges | Unqualified operators pull complex assignments they lack certification to resolve. | Define minimum skill ratings on assignment routing and verify operator skills in Data-Admin-Operator-ID. |
| Confusing Worklist and Work Queue Classes | Runtime query errors and clipboard type mismatches. | Remember: Assign-Worklist = Individual inbox; Assign-WorkBasket = Shared team queue. |
A national retail bank processes credit card dispute claims. Policy mandates that disputes under $500 are handled by general dispute agents, disputes between $500 and $2,500 require senior dispute investigators, and disputes exceeding $2,500 involving suspected merchant fraud must route to the executive fraud team. How should the application architect configure assignment routing?
An insurance claims adjuster with a certified French language skill rating of 80 clicks 'Get Next Work'. The shared queue contains Assignment A (Urgency 75, requires French skill rating 90) created 4 hours ago, and Assignment B (Urgency 50, requires French skill rating 70) created 1 hour ago. Which assignment does Get Next Work deliver to the adjuster?
A system architect is reviewing an inherited Pega application and identifies that an assignment step in the high-priority refund process is configured to route directly to 'Specific User: bsmith@uplus.com'. Why does this design represent an architectural anti-pattern on the Pega CSA exam?