SYSTEM FOR AUTOMATICALLY PREDICTING AVAILABILITY OF A RESOURCE IN A CUSTOMER CARE CENTER ENVIRONMENT
Field of the Invention
This invention relates to call management systems operational in a customer care center, and a system for automatically predicting the availability of a resource in a customer care center environment.
Problem
It is a problem in customer service scenarios, such as call center systems, that these systems are architected in a manner to minimize the cost of providing the offered services pursuant to some predefined level of responsiveness to customers' requests. The call center systems typically provide a pool of customer service representatives (termed "agents" herein), who have various skill levels, to provide the customer with a substantially appropriate response to their inquiry (also termed a "contact" herein). During periods when voice calls or other classes of work must be queued due to the lack of available agent resources, predictive calculations are employed to enable the work requests to be queued for service by a pool of agents in a manner that can provide the quickest response in receiving the customer contact. The call center systems predict when any agent of a particular skill class will become available, or when a work item added to a queue will be serviced. In each case, the predictors are statistical calculations based on agent resource pools and not individual agents. Estimated Wait Time is an example of such a prediction paradigm. However, this technique cannot support predicting when a specific agent will become available to receive a new work item. Also, many of the prediction algorithms in use today do not support the additional complexity of multi media work processing by agents. Today's agents increasingly support processing multi media interactive contacts such as: voice, text chat and video with non-interactive work, such as: E-Mail, fax, electronic document processing. Because so many of the contacts or work items are not managed by today's switch-based Automatic Call Distributor Systems, it is expected that some work distribution predictors presently in use are ineffective to accurately predict the time until any individual agent well become available.
Also, if an existing customer care center system is required to forward a customer contact to a specific agent who is presently unavailable, it is incapable of obtaining predictive data indicative of the time at which this selected agent will be
available. There are a number of instances when there is a need for such information, such as:
Return of repeat customer contacts to a preferred agent
Match of particular agent skills
Provide wait time indication to customer waiting for a specific agent
Provide the customer with a choice of service between previous agent and another agent
Call back from customer to selected agent relating to a work item that was just processed by that agent for that customer.
Existing call centers therefore do not have the capability to efficiently and automatically fine tune the allocation of resources to the incoming contacts or other work types requiring distribution processing, especially where there is a need to predict the expected availability of an individual agent.
Solution
The above described problems are solved and a technical advance achieved by the system for automatically predicting availability of a resource in a customer care center environment, which divides each customer interaction scenario into a plurality of separate work tasks that are tracked by agent, group, line of business, company, or various other dimensions. The system for automatically predicting availability of a resource in a customer care center environment uses past measurements of the time an individual agent has spent on the subtasks of a customer interaction as a reference in calculating the future times that this agent will spend on the same subtasks of a customer interaction. When an agent is processing a new task for which no individual history for time on task exists, the system employs an average of times spent on the sub tasks that constitute the task from an average of actual times collected from other agents. These estimations of time on individual tasks or the work task in whole can be modulated for various customer contact specific factors, such as media type, customer characteristics, and the like. The time required for an entire customer interaction by a particular agent is thereby predicted from such data. Additionally, a dynamic projection can be supported by the present system for automatically predicting availability of a
resource in a customer care center environment, where the initial predictions for the time needed to complete a customer interaction are automatically adjusted during the interaction with a customer.
Thus, the present system for automatically predicting availability of a resource in a customer care center environment provides an agent specific prediction of availability to thereby enable the system to provide a customer with an indication of the time expected to elapse before an agent is available to service the customer's work request.
Brief Description of the Drawing Figure 1 illustrates in block diagram form a customer care center which incorporates the system for automatically predicting availability of a resource in a customer care center environment; and
Figure 2 illustrates in flow diagram form the operation of the customer care center of Figure 1 in the processing of a typical customer contact, using the system for automatically predicting availability of a resource in a customer care center environment.
Detailed Description Customer Care Center Philosophy
Today's customer care center processing of an incoming contact, to completion can be divided into three identifiable functions. The first function represents the segmentation phase where the customer care center identifies customers and determines the type and quality of service to be provided to this customer. The customer identity is typically determined via Automatic Number Identification data received from the central office that serves the customer and/or the use of an Interactive Voice Response system to collect data from the customer. The customer care center may also use the customer identity to compute a customer lifetime value, which is an indication of the value of this customer to the operator of the customer care center. The second function comprises resource selection, wherein the customer care center selects a resource, such as an agent from the pool of skilled agents, using data from any of a number of sources to identify the service needed by the customer, such as data indicative of the dialed number (where the customer care center maintains a plurality of listed directory numbers for the each of the various services provided), data
from the Interactive Voice Response system indicative of a customer selection of a desired destination or desired service, and/or data from databases maintained in the customer care center indicative of the customer's previous interactions with the customer care center, which data can be used to extrapolate the customer's history to predict the service presently required. The identified service request is mapped to an agent in the pool of agents as a function of agent skill level, agent availability, customer value, and various other factors. Finally, the third function comprises a fulfillment phase wherein the customer is connected with a selected agent who performs requested function, using the agent's acquired and/or augmented skills. The execution of the final function includes the collection of data regarding the performance of the agent, which data is used to automatically update the agent's skill level. This data collection includes detecting trends in agent performance as well as the extrapolation of detected trends. Customer Care Center Architecture
Figure 1 illustrates, in block diagram form, a customer care center which incorporates the present system for automatically predicting availability of a resource in a customer care center environment. The customer care center 101 comprises a plurality of telephone lines and/or trunks 100 which are selectively interconnected with a plurality of agent positions 102-104 via customer care center 101. Each agent position 102-104 includes a voice and data terminal 105 for use by a corresponding agent 106-108 in handling incoming calls. Data terminals 105 are connected to customer care center 101 by a voice and data medium 109. This customer care center 101 is a stored program controlled system that includes interfaces to external communication links, a communications switching fabric, service circuits, memory for storing control programs and data, and a processor for executing the stored control programs to control the interfaces and the switching fabric and to provide the customer care center functionality. However, the use of this customer care center system in this description is not intended to limit the applicability of the present system for automatically routing calls, since the applicability of the concepts disclosed herein are not limited to the particular application disclosed herein. Included in the data stored in the customer care center 101 are a set of work queues 120 and a set of agent queues 130. Each work queue 121-129 corresponds to a different type of communication service and each agent queue 131-139
corresponds to an agent skill set. Conventionally, calls are prioritized and enqueued in individual ones of work queues 121-129. Likewise, each agent's skills are prioritized according to the agent's level of expertise in that skill, and agents are enqueued in individual ones of agent queues, 9 of which (131-139) are shown in Figure 1 for illustrative purposes, each of which corresponds to a skill. As shown in Figure 1 , agent A can have skills 1 , 2, while agent Z can have skills 1 , 2, 3, 9. In addition, the proficiency of an agent with their assigned skills can be defined, using a predefined scale indicative of agent skill proficiency.
Included among the control programs in customer care center 101 is Agent Selector and Work Dispatcher program 150 which assigns available ones of agents 106-108 to agent queues 131-139 based upon the skills which they possess. Since agents may have multiple skills and different levels of expertise in each of these skills, the Agent Selector and Work Dispatcher program 150 assigns agents 106-108 to different agent queues 131-139 at different expertise levels. Also, Agent Selector and Work Dispatcher program 150 effects assignments between incoming calls and available agents in a manner to meet the business goals of the customer care center, typically to equalize the level of service to each skill.
System for Automatically Predicting Availability of a Resource in a Customer Care Center Environment Figure 2 illustrates in flow diagram form the operation of the customer care center of Figure 1 in the processing of a typical call connection, using the system for automatically predicting availability of a resource in a customer care center environment.
Since communication connections of all media types can be accepted, the customer care center 101 at step 201 , in response to receipt of a work request in the form of an incoming call, determines the nature of the data content and format in the incoming call: E-Mail, voice, WEB connection, Interactive textual data, facsimile transmission, and the like 100.
The work pre-processor 160 interacts with the Media Server 140 associated with the customer contact 100 and accesses enterprise data 180, identifies the customer, service context and other attributes needed by the Agent selector & Work Dispatcher
Thus, on an incoming call, the identity of the customer, customer query information input by the customer, and the like are addressed by the Work Preprocessor 160 at step 202 that provides its information to the work queues 120. The agent selector program 150 reviews the work pending in the work queues and scans the Agent State Matrix 130 for agents with the best skill and Predicted Time To Availability (PTTA) that is needed to process the customer contact work in step 203. The agent selection process 150 occurs at step 204 when a call that is determined to require a special skill x that would be best served by an agent that is not yet available but has a PTTA that will meet the needed service level goals for this customer contact. The Agent selector program 150 at step 204A optionally provides the customer with an indication of the expected availability of a agent who has been selected for the customer, who has previously serviced a work request for this customer, or who has particular skills appropriate for this work request. If the customer acquiesces with this agent selection, with the estimated agent wait time at step 204B, the agent selector program 150 selects the designated or best agent (such as agent 106) with skill x to handle the call using an agent selection process that computes agent selection based on agent specific estimated availability. In the instance described herein, the granularity of these estimations and agent selections are facilitated by the estimation of individual agent availability on a per work request item. Customer Care Centers are increasing the use of enterprise customer data to enable new competitive capabilities in the area of customer contact work management. The system for automatically predicting availability of a resource in a customer care center environment 190 divides each customer interaction scenario into a plurality of separate work tasks that are tracked by agent, group, line of business, company, or various other dimensions 170. The system for automatically predicting availability of a resource in a customer care center environment 190 uses past measurements of the time an individual agent 106 has spent on the subtasks of a customer interaction as a reference in calculatingl 10 the future times that this agent 106 will spend on the same subtasks of a customer interaction. These estimations can be modulated for various customer contact specific factors, such as media type, customer characteristics, interaction context, and the Iike110. The time required for an entire customer interaction by a particular agent is thereby predicted from such data 110. For example,
an agent 106 receives a call from a customer needing to report a warranty claim. The agent's desktop application at step 205 acquires a predicted time for the warranty claim processing from a database of customer interaction statistics 170 that have been accumulated for agent 106, and optionally reviews similar data for other equivalently skilled agents. At the same time, the agent's desktop application picks up some additional work request/customer related information from the agent 106 at step 206, such as whether the customer is hostile or cooperative and calculates at step 207 what modification is required to render the time required for an entire customer interaction by this particular agent more accurate. As tasks being processed by an agent are completed and navigated, this information is provided to the Task Time Processor 110 which updates the Task Time Database 170 and also the associated Predicted Time To Availability (PTTA) in the Agent State Matrix 130 for the associated agent. Additionally, a dynamic projection of the time required for an entire customer interaction by a particular agent can be supported by the system for automatically predicting availability of a resource in a customer care center environment where the initial predictions for the time needed to complete a customer interaction that have been calculated by the task time processor 110 are automatically adjusted at step 208 during the interaction with a customer.
Certain actions that the agent takes while performing work for this customer 106/170 allow incrementally refined predictions 190 for when the agent will become available. During an interaction, the customer may request the agent 106 to execute another procedure at step 209, such as a change in the customer's mailing address.
When the agent selects the task for updating the customer address, the predicted time to availability is updated 110/170/130 at step 210 by the system for automatically predicting availability of a resource in a customer care center environment. Similarly, if the customer is receptive to an up-sale/cross-sale opportunity that is offered during the call, a workflow associated with the up-sale/cross-sale is begun at the agent desktop. The time projection for the task is acquired from the Task Time Database 170 with task times and it is added to the predicted agent availability calculation 110 and updated in the Agent State Matrix 130 for use by the Agent Selector/Work distribution server 150. Typical tasks that can be timed for predictions for agent availability are: Change of Customer Address
Product Problem Entry
Warranty Claim
Travel Reservation
Order Entry Billing Inquiry
Product Offering
Feedback Questionnaire
Thus, the present system for automatically predicting availability of a resource in a customer care center environment provides an agent specific prediction of availability to thereby enable the customer care center system to provide a customer with an indication of the time expected to elapse before a agent is available to service the customer's work request.
Through this method, every agent in the system has the most dynamic and up to date predictor for the time required to complete the task that they are presently assigned. The work distribution system is able to use this information to provide enhanced work distribution not only based on agent skills and talent, but also based on predicted availability. Summary
The present system for automatically predicting availability of a resource in a customer care center environment uses past measurements of the time an individual agent has spent on the subtasks of a customer interaction as a reference in calculating the future times that this agent will spend on the same subtasks of a customer interaction. These estimations can be modulated for various customer contact specific factors, such as media type, customer characteristics, and the like. The time required for an entire customer interaction by a particular agent is thereby predicted from such data.