ico-arrow-big-left

Skills Based Support Case Routing

Key Information

Register
Submit
The challenge is finished.
Show Deadlines

Challenge Overview

Spin up a new DE org and make the following simple modifications:

Create the following custom objects:

Region__c
��- Name (example:��NA, EMEA, etc)

Region_User__c (simply determines what users are in a specific region)
��- Region__c (master-detail to region__c)
��- User__c (lookup to user)

Product_Feature__c
��- Name (example: OS Reload, RAM Upgrade, Anti-Virus installation, etc.)

Skill__c
��- Product_Feature__c (look to product_feature__c)
��- User__c (lookup to user)
��- Level__c (example:��Beginner, Intermediate, Expert and Super Expert)

Skill_Availability__c
��- Skill__c (lookup to skill__c)
��- Available__c (boolean)

Add the following fields to standard objects:

Case
��- Region__c (lookup to region__c)
��- Product_Feature__c (lookup to product_feature__c)��

User
��- Available_For_Support__c (boolean)


Users will be able to create/edit these records through the standard salesforce.com interface. However, create a Visualforce page that defaults to the current user (displays as a tab but you can easily switch to a different user) that displays and allows them to edit the Availability:

User-added image


Key features of the application:

1.��A user may be assigned to work multiple regions.
2.��A user should not be allowed to have more than one Skill associated to the same product feature.
3.��Users should be able to specify availability overall as well as availability for a specific Skill level.
4.��If a user's overall availability (User.Available_for_Support__c) is set to false then no cases should be assigned to them.
5.��If a user's availability on a specific Skill is set to false then no cases of that Skill level should be assigned to them. However, they should be able to receive cases in other Skill levels that they are set to available.
��
Round Robin assignment of cases:

1. Round Robin assignment should look at the current number of cases of a particular Skill currently opened and assigned to a user and give to the Technician with the smallest amount.
2. Round Robin assignment should take into account the Priority of the case. ��This should be configurable through a mapping table to setup assignments such as these:
��
��-- If a case is a Critical Priority it should try to assign to the technician with the highest Skill level available.
��-- If a case has a High Priority then it should assign to the agent who is most available. (Has the least amount of cases assigned to them overall. In the even of a tie, where two users have the same amount of cases assigned the assignment should go to the user who received assignment )
��-- If a case has a Medium Priority then it should assign to the agent who is most available for the Skill of the case at the Beginner Level.
��
3. All cases that have an active entitlement record and a product feature will to go through the this routing. if not, it should be assigned to a queue (that is configurable).

Must have 90%+ test coverage.

Reliability Rating and Bonus

For challenges that have a reliability bonus, the bonus depends on the reliability rating at the moment of registration for that project. A participant with no previous projects is considered to have no reliability rating, and therefore gets no bonus. Reliability bonus does not apply to Digital Run winnings. Since reliability rating is based on the past 15 projects, it can only have 15 discrete values.
Read more.

REVIEW STYLE:

Final Review:

Community Review Board
?

Approval:

User Sign-Off
?

CHALLENGE LINKS:

Review Scorecard

?