Method and system for generating improvement profiles in a skill management platform

An automated system generates strands of KPIs to efficiently rank agents for skill improvement, addressing the labor-intensive manual setup of KPI strands and enhancing employee skill utilization in contact centers.

JP7830315B2Active Publication Date: 2026-03-16GENESIS CLOUD SERVICES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-10-09
Publication Date
2026-03-16

Smart Images

  • Figure 0007830315000011
    Figure 0007830315000011
  • Figure 0007830315000012
    Figure 0007830315000012
  • Figure 0007830315000013
    Figure 0007830315000013
Patent Text Reader

Abstract

Using historical data and a set of KPIs, a system and method for generating improvement profiles in a skill management platform are presented. Variance calculations are performed using a basic variance formula, and strands are generated using these values. A strand is defined as a collection of KPIs, and each KPI can be weighted to indicate the importance of the KPI to the agent type. KPIs can be selected to generate strands, and strands are generated from those KPIs, taking into account the normalized variance of each KPI. The generated strands can also be used to determine the improvement potential of an agent.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention generally relates to telecommunication systems and methods, and to the staffing of contact centers. More specifically, the present invention relates to determining skills for improving the staffing of contact centers.

[0002] (Cross - Reference to Related Applications) This application relates to U.S. Patent No. 8,589,215, titled "WORK SKILLSET GENERATION," filed with the United States Patent and Trademark Office on November 19, 2013. This application claims priority to and is related to U.S. Patent Application No. 16 / 596,840, also known as "METHOD AND SYSTEM FOR IMPROVEMENT PROFILE GENERATION IN A SKILLS MANAGEMENT PLATFORM," filed with the United States Patent and Trademark Office on October 9, 2019.

Summary of the Invention

[0003] A system and method for improvement profile generation in a skills management platform are presented using past data and a set of KPIs. Distributed computing is performed using a basic distributed form, and strands are generated using these values. A strand is defined as a set of KPIs, and each KPI can be weighted to indicate the importance of the KPI for an agent type. KPIs can be selected to generate a strand, and the strand is generated from those KPIs considering the normalized variance of each KPI. The generated strand can also be used to determine the improvement potential of an agent.

[0004] In one embodiment, a method is presented for automatically generating strands of key performance indicators associated with a given agent in a contact center environment using a skill management platform for generating improvement profiles, the method comprising: determining the variance of each desired metric using a variance formula and historical data for the desired metric; normalizing the determined variances for other metrics associated with the agent and determining the importance of each metric; generating strands through a skill management platform; determining the distance from the mean for each desired metric with respect to the agent, wherein distances that do not meet a threshold are selected for agent improvement; comparing the resulting distances with respect to the agent with the distances of other agents in the contact center; and generating an improvement profile in which other agents are ranked along with suggestions provided for each agent's improvement metrics via a user interface associated with the skill management platform.

[0005] Importance is based on weighting applied to each metric according to user ratings. Metrics with higher variance have a greater weight than metrics with lower variance. Selection involves considering the potential gains and difficulty of improvement of the metrics. Determination involves mathematically calculating the minimum value across the set of metrics for the agent to determine which metrics need improvement. The variance formula involves removing the mean of past data by dividing the sum of squares of past data by the same size.

[0006] In another embodiment, a method is presented for automatically generating strands of key performance indicators associated with a given agent in a contact center environment using a skills management platform for profile generation, the method comprising: determining the variance of each desired metric using a variance formula and historical data for the desired metric; normalizing the determined variances for other metrics associated with the agent and determining the importance of each metric; generating strands through a skills management platform; determining the distance from the mean for each desired metric with respect to the agent, wherein the distance is selected to highlight agent performance in light of the metric; comparing the resulting distances with those of other agents; and generating a profile in which other agents are rated and presented to the user via a user interface associated with the skills management platform.

[0007] In another embodiment, a system is presented that uses a skill management platform to automatically generate strands of key performance indicators associated with a given agent in a contact center environment for improvement profile generation, the system comprising a processor and a memory communicating with the processor, which stores instructions that, when executed by the processor, cause the processor to generate an improvement profile, the improvement profile is ranked along with suggestions provided for improvement metrics for each agent, by the agent determining the variance of each desired metric using a variance formula and historical data for the desired metric, normalizing the determined changes for other metrics associated with the agent and determining the importance of each metric, generating strands through the skill management platform, determining the distance from the mean for each desired metric for the agent, determining that distances that do not meet a threshold are selected for agent improvement, and comparing the resulting distances for the agent with the distances of other agents in the contact center.

[0008] In another embodiment, a system is presented that uses a skill management platform to automatically generate strands of key performance indicators associated with a given agent in a contact center environment for profile generation, the system comprising a processor and a memory communicating with the processor, which stores instructions that, when executed by the processor, cause the processor to generate an improvement profile, the improvement profile being ranked and presented to the user by the agent via a user interface associated with the skill management platform, determining the variance of each desired metric using a variance formula and historical data for the desired metric, normalizing the determined variances for other metrics associated with the agent and determining the importance of each metric, generating strands through the skill management platform, determining the distance from the mean for each desired metric for the agent, determining that the distance is selected to highlight the agent's performance in light of the metric, and comparing the resulting distance for the agent with the distances of other agents. [Brief explanation of the drawing]

[0009] [Figure 1] This figure shows one embodiment of a skill data processing system.

[0010] [Figure 2] This is a flowchart illustrating one embodiment of the process for providing mapping data to information providers.

[0011] [Figure 3] This table shows an example of a random sample dataset.

[0012] [Figure 4] This table shows examples of Strand's judgment.

[0013] [Figure 5]This table shows examples of performance evaluations.

[0014] [Figure 6A] This figure shows one embodiment of a computing device.

[0015] [Figure 6B] This figure shows one embodiment of a computing device. [Modes for carrying out the invention]

[0016] For the purpose of facilitating an understanding of the principles of the present invention, embodiments illustrated in the drawings will be described herein using specific terminology. Notwithstanding the foregoing, it will be understood that this is not intended to limit the scope of the present invention. Any changes and further modifications to the embodiments described herein, as well as any further uses of the principles of the present invention described herein, will be conceived as commonly occurring to those skilled in the art relating to the present invention.

[0017] Different employees often possess different skill sets (e.g., technical proficiency, sales experience, multilingualism, etc.), and employees with the same or similar skill sets (e.g., employees in the same job) may have varying degrees of proficiency in specific skills within those skill sets. By defining employee skill sets and establishing proficiency or performance in various skills within those skill sets, employers can better utilize employees, and employees can develop new skills or improve existing ones. For example, if employee X is highly familiar with South American culture and speaks Portuguese fluently, that employee is more likely to be a desirable fit for a sales position in Brazil than an employee with no prior sales experience and who speaks only English. Furthermore, by assigning employee X to a sales position, the employer is more likely to benefit from employee X being more useful in the sales position than employee X, based on the match between employee X's skill set and the requirements of the sales position.

[0018] Similarly, if an employer has two employees with similar skill sets, and the employer needs to assign one employee to serve a key client, the employer may need to know which of the two employees is the best performer (determined, for example, by comparing the employees' skills, abilities, or performance) so that the employer can assign the employee to the client. However, effectively defining and evaluating employee skill sets and matching employees with specific skill sets to the requirements of specific jobs is no trivial task. U.S. Patent No. 8,589,215, issued November 19, 2013, entitled “WORK SKILLSET GENERATION,” describes methods, software, and systems for generating mapping and correlation data based on service provider data. However, in the embodiments described herein, the user of the system must manually create the strands used in the methods, software, and systems by determining the weighting of each key performance indicator (KPI) and building the strands from scratch. This is very time-consuming and labor-intensive. System setup is shortened by automatically generating the strands. An automated approach is described in the embodiments described herein.

[0019] KPIs include values indicating the performance of agents in a field (e.g., average processing time). In a contact center environment, KPIs can be used to compare agents within a performance area. A strand includes an aggregate of these KPIs, and each KPI is weighted to indicate the importance of the KPI for that agent type. Each agent type has its own strand, and each strand has different KPIs and weights. For example, the agent type "Sales" may have its own strand consisting of the KPIs: Sales per hour (30%), average sales price (50%), and average processing time (20%). As shown in this example, the three KPIs (Sales per hour, average sales price, and average processing time) determine how good an agent is in sales. This example also determines how each KPI affects the total score, which has respective weightings of 30%, 50%, and 20%. Generally, with strands, a user of the system can automatically rank agents based on important metrics and identify where an agent can improve the most.

[0020] In another embodiment, by examining the variance value of the agent performance of KPIs, a direct comparison of agents and a comparison of sets of agents for ranking the potential for performance improvement by an agent are made possible. A high variance value across a dataset can imply that those with low performance may need additional training to reach the level of those with high performance. A low variance value across a dataset can indicate that even those with poor performance may have little room for improvement or growth without significant effort.

[0021] Skill Data Processing System

[0022] Figure 1 shows an embodiment of a skills data processing system, represented as 100 in its entirety. The skills data processing system 100 can receive and process performance data and evaluation data to generate skills data, and can generate mapping data and correlation data based on the skills data, as will be described in more detail below. The skills data processing system 100 is typically implemented on a computer server and can provide and receive data over a network. Exemplary networks include local area networks (LANs), wide area networks (WANs), telephone networks, and wireless networks. In one embodiment, the skills data processing system 100 may be implemented in a contact center environment or in an enterprise environment where the management of employee skills, knowledge, and attributes can be correlated with performance.

[0023] In some embodiments, the skill data processing system 100 includes an evaluation data store 102, a performance data store 104, a work task data store 106, and a customer data store 108. Although shown as separate data stores, the data for each of the data stores 102, 104, 106, and 108 can be stored in a single data store, such as a relational database or any other suitable storage scheme.

[0024] The evaluation data store 102 stores evaluation data. As described above, the evaluation data indicates subjective measures of employee or job attributes. For example, the subjective measures may be based on a scale (e.g., from 1 to 10, where 10 is the highest scale and 1 is the lowest scale), or may be more abstract classifications such as, for example, "poor", "good", or "exceptional". However, other rating or classification methods are also possible. Attributes may relate to, for example, sales skills, customer service skills, job completion timeliness, prioritization ability, work product quality, or other attributes or characteristics of an employee or job. Thus, for example, the evaluation data can indicate that a particular customer service representative has above-average customer service skills and average prioritization ability. The evaluation data can also indicate that Employee X has an average sales skill scale of 3 on a 10-point scale when rated by two supervisors of Employee X (one rates 2 and the other rates 4). Evaluation data for service providers (e.g., employees) can be generated not only by other people (e.g., managers), but also by the service providers being evaluated, for example, through self-evaluation.

[0025] The performance data store 104 stores performance data. As described above, the performance data reveals an objective measure of a performance metric. The objective measure is identified or derived from any measured or other unbiased classification of performance on a work task (e.g., a performance metric) so that the objective measure does not vary based on who reports the data, for example. The performance data could reveal, for example, that employee W transferred four customer service calls to other customer service representatives last week (i.e., the performance metric is the number of calls transferred, and the objective measure is four transferred calls). The number of transferred calls is not affected by variations in individual interpretation and can be verified, for example, from a call transfer log that four calls were transferred. In another embodiment, the performance data reveals that employee Y, a customer service representative, received a 92% customer service feedback score based on a survey that rates various aspects of employee Y's performance during a service call. The survey results (e.g., if customer A rates employee Y as "3", the rating remains "3" regardless of who reports the survey results) are valid. In yet another embodiment, performance data can indicate whether an employee has completed a training course.

[0026] The work task data store 106 stores work task data that specifies the work tasks of a service provider (for example, work-related tasks of employees such as call center employees, or work-related tasks that broadly describe a workplace position). A work task is any type of job, duty, aspect of a job, or any other type of activity and role such as selling products, manufacturing goods, supervising others, handling service calls, or repairing electronic equipment. In some embodiments, one or more sets of work tasks can generally describe a workplace role or position, or describe the duties or responsibilities of a particular employee.

[0027] The customer data store 108 stores customer data that specifies the work tasks requested by a particular customer (for example, a customer of a call center company that uses a call center to handle customer support calls or to contact potential buyers of the customer's products). Different customers may have different work task requirements or requests. For example, customer A may be a manufacturer that uses a call center to handle technical support service calls (i.e., work task), and customer B may be an insurer that uses a call center to provide sales services for various insurance products on behalf of the insurer (i.e., work task).

[0028] Customer data can also specify attributes or performance levels required or desired by a particular customer in relation to the requested work task. For example, customer A may specify that only call center employees (e.g., service providers) with at least two years of experience providing technical support over the phone should handle their calls, while customer B may specify that only call center employees with specific investment qualifications (e.g., industry certifications) should handle their calls. In addition to specifying that employees must have two years of experience providing technical support over the phone, customer data may also specify that customer A requires employees with a degree in mechanical engineering. Similarly, for customer B, customer data may specify that customer B requires employees who are fluent in Spanish.

[0029] The skill data processing system 100 also includes a task identification engine 110, a skill data engine 112, a mapping data engine 114, and a correlation data engine 116. The task identification engine 110 is configured to receive work task data that identifies the work tasks of a service provider (e.g., customer service employees of a call center company). The particular architecture shown in Figure 1 is one exemplary embodiment, and other functional distributions and software architectures can be used. Each engine is defined by corresponding software instructions that cause the engine to perform the functions and algorithms described below.

[0030] The task identification engine 110 receives work task data from the service provider's employer, which describes the service provider's job duties, responsibilities, and / or abilities. In some embodiments, the work task data is provided from a database (e.g., an employment database) that includes the work history and qualifications of various service providers.

[0031] The skill data engine 112 is configured to generate skill data for each service provider based on received evaluation data and performance data associated with the service provider's performance on work tasks. In some embodiments, the evaluation data and performance data are received, for example, from the service provider (e.g., self-assessment), the service provider's employer, or both. The skill data defines the service provider's skill set with respect to performance on one or more work tasks.

[0032] A skills set is a representation of a service provider's skills. A skills set includes a collection of performance and evaluation data regarding a service provider's performance on specific work tasks. Therefore, a skills set represents a service provider's skills (e.g., their abilities, aptitudes, capabilities, and weaknesses). For example, a service provider's (e.g., employee John Smith) skills set might represent that the service provider is a customer service representative with product sales experience. Based on objective and subjective measures revealed by performance and evaluation data, a skills set can also represent how well or poorly a service provider performed work tasks (e.g., employee performance reviews). For example, a skills set might represent that the service provider achieved 92% of their sales target last year (e.g., based on performance data). Skill data is discussed in more detail below.

[0033] The mapping data engine 114 is configured to receive customer data that specifies the work tasks requested by the customer. For example, customer A may be a television cable provider that hires information provider 118 (e.g., a call center service provider) to handle all installation reservation calls and perform new service sales calls (i.e., work tasks). Thus, the mapping data engine 114 receives customer data from customer A that specifies the work tasks as handling installation reservation calls and performing new service sales calls.

[0034] The mapping data engine 114 is also configured to generate mapping data. The mapping data reveals a correlation measure between the service provider's skill data and customer data that reveals the work tasks requested by the customer. For example, if customer data reveals a task of handling technical support service calls, the mapping data would include data showing how well various service provider skill sets map to handling technical support service calls. If a service provider has prior experience with technical support service calls, the correlation measure revealed by the mapping data will be high, indicating that the service provider is likely well-suited for the task. Conversely, if a service provider does not have training or experience in handling technical support service calls, or does not possess other relevant skills or attributes (e.g., skills or attributes that indicate the service provider can effectively handle technical support service calls, such as past non-technical call support experience or electronics repair qualifications), the correlation measure will be low, indicating that the service provider is likely not well-suited for the task.

[0035] The mapping data engine 114 is also configured to provide mapping data to the information provider 118. In some embodiments, the mapping data is used by the information provider 118 to map service requests to service providers with skill sets that are highly correlated with the work tasks requested by the customer. For example, if a support call (e.g., a service request) for customer A is received by the information provider 118 (e.g., a call center), the information provider 118 can identify a service provider (e.g., a customer service representative) with a skill set that is well matched to the subject of the service request and forward the service request to that service provider to ensure that the request is processed effectively.

[0036] The correlation data engine 116 is configured to receive performance metrics from performance data and skill sets or skill selections from skill data. The received performance metrics and skill set selections are used by the correlation data engine 116 to generate correlation data for the metrics and skill sets. For example, the correlation data engine 116 may receive selections from a service provider's employer for a performance metric of service call processing efficiency (e.g., average service call length) and skill sets of sales skills for product A and product B. In some scenarios, there may be a large number of selections for performance metrics and a large number of selections for skill sets.

[0037] As described above, the correlation data engine 116 is configured to generate correlation data between each of the selected skill sets and selected performance metrics. The correlation data reveals the correlation scale between each of the selected skill sets and selected performance metrics. For example, the received selections are service call processing efficiency, sales skills for product A, and sales skills for product B. All service providers with sales skills for product A have high service call processing efficiency ratings, while some service providers with sales skills for product B have low service call processing efficiency ratings, while others have high ratings. Therefore, the correlation data reflects a high correlation between sales skills for product A and call processing efficiency, and a low correlation between sales skills for product B and call processing efficiency (because some service providers with sales skills for product B have high efficiency ratings while others have low efficiency ratings).

[0038] By analyzing correlational data, employers can, for example, determine which skill sets are associated with high performance levels for specific work tasks. Therefore, if an employer wants to improve service call handling efficiency, they can, for example, identify employees who are not trained to sell product A and provide them with training in selling product A.

[0039] The generation of mapping data and correlation data by the mapping data engine 114 and the correlation data engine 116 will be described in more detail below.

[0040] Mapping data generation

[0041] One exemplary process by which the skill data processing system 100 generates and provides mapping data to an information provider 118 is illustrated with reference to Figure 2, which is a flowchart of an exemplary process 200 for providing mapping data to the information provider 118. For example, the mapping data provided to the information provider can be used by the information provider to map service requests to service providers whose skill sets adequately match the requested work tasks. Process 200 can be implemented on one or more computer devices of the skill data processing system 100.

[0042] Process 200 receives work task data that specifies multiple work tasks of multiple service providers (202). In some embodiments, a task identification engine 110 receives work task data. The task identification engine 110 may receive work task data that describes the duties and roles of a service provider's job, for example, from the service provider's employer or directly from the service provider. The work task data describes the duties of a particular type of job (e.g., carpenter, mechanic, customer service representative, etc.) or the duties of a particular service provider (e.g., employee X).

[0043] Process 200 receives performance data for each of the multiple service providers, specifying an objective measure of the performance metric associated with the service provider performing the work task (204). As described above, the objective measure of the performance metric is an empirically determined measure of the performance metric. The objective measure is verifiable, for example, so that there is no ambiguity in the measure. In some embodiments, the skill data engine 112 receives the performance data.

[0044] Process 200 receives evaluation data for each of the multiple service providers, specifying subjective scales of attributes associated with the service provider performing the work task (206). As mentioned above, subjective scales are biased measures of attributes. In some embodiments, the skills data engine 112 receives the evaluation data.

[0045] Process 200 generates service provider skill data for each of several service providers based on a set of evaluation data and performance data (208). In some embodiments, the skill data engine 112 generates the skill data. The skill data defines the service provider's skill set for performance on work tasks. As described above, the skill set represents the service provider's skills (e.g., an employee's actual skills or desired skills for a position or role). In one embodiment, the skill set includes one or more skills. The skill set of a particular service provider or agent can be represented as a strand.

[0046] The importance of a particular KPI to a strand can be investigated as follows. A distribution model for determining the importance of a particular KPI to a strand is outlined. While automated, the user can select the KPIs from which they wish to generate a strand, and the strand is generated from those KPIs, taking into account the normalized distribution of each KPI (historical data or data from a data lake). The distribution model can be mathematically defined as follows.

[0047]

number

[0048] In the formula, μ is the mean of the dataset, and X 2 σ represents the sum of squares of the dataset, N represents the size of the dataset, and σ represents the sum of squares of the dataset. 2This represents the variance of each metric. Then, the variance is normalized with respect to the other metrics used in the strand to calculate the importance of each metric as follows:

[0049]

number

[0050] In the formula, N represents the number of metrics, i represents the first metric, and j represents the second metric. To give the user more control over the system, weights can also be applied to each metric based on the user's evaluation. This can be expressed mathematically as follows:

[0051]

number

[0052] In the formula, 0 ≤ α ≥ 1 represents the weight of the metric. High variance in the dataset given for calculation results in metrics with higher weights compared to metrics with lower variance. As a result, the potential improvement of those with below-average performance is maximized, and those with outstanding performance in key areas are highlighted.

[0053] Strand generation can be performed with a random sample set, as illustrated in Figure 3, which illustrates multiple agents and multiple metrics associated with each of those agents. In this embodiment, for simplicity, five agents, each with seven metrics, are shown in Figure 3. The generated strands are used to test the performance and improvement of the agents.

[0054] Figure 4 is a table showing an example of a strand determination, where γ represents the percentage each metric represents in the strand. The reciprocal is expressed as (1-γ), which can be used in performance calculations. For each of the multiple metrics in Figure 3, the mean of the dataset, the sum of squares of the dataset, the size of the dataset, and the variance of each metric are also shown in Figure 4. Thus, the strand is mathematically generated using the γ values ​​in Figure 4 as follows:

[0055]

number

[0056] When determining which metrics to improve, the agent's distance from the mean is examined (to determine whether the agent is performing better or worse than average). The weights of these metrics are used in the strand to determine which metrics the agent should focus on improving. As outlined by the strand determination above, potential gains and the difficulty of improvement are taken into consideration. Mathematically, this can be expressed as follows:

[0057]

number

[0058] In the formula, S represents a set of metric values ​​for the agent. For each metric to be maximized, the formula can be replaced with the following:

[0059]

number

[0060] The system can be mathematically executed on sample data to determine the results and whether the resulting strands are suitable. These are then tested against data from other agents to evaluate the agents and mathematically show where improvements can be made.

[0061] Figure 5 shows multiple metrics and agents from Figure 3, along with performance evaluations and the metrics that agents should focus on improving. Agent 1 is determined to focus on metric 2, and Agent 2 is determined to focus on metric 7. In one embodiment, the metrics are ranked from 1 to 7, which can provide more flexibility regarding what to improve and when. In another embodiment, the system user can exercise personal preference. For example, the user may not want to spend time improving metric 1 and can re-select a second-best metric for the agent (e.g., in Figure 5, for Agent 5, from metric 1 to metric 4).

[0062] In one embodiment, analysis of variance can be used to determine the effectiveness of training items based on historical data. By collecting data on users who have started training items and those who have not (or the same data but before they started training items), it is possible to show how well each training item is performing and whether the right one can be selected based on the current variance in the dataset. This can be done by examining a comparison of the variance, mean, and "tailness" of the set on the dataset.

[0063] In another embodiment, the variance among sets of users can attempt to identify and solve problems that a particular group has; for example, if employees in a particular branch have a lower average than those in other branches, it can attempt to address problems that a particular area has.

[0064] In another embodiment, a low variance in a particular metric may indicate that the metric is not being scored correctly by the user, or that the metric should be reconsidered.

[0065] Process 200 receives customer data for each of several customers that specifies the work tasks requested by the customer (210). For example, customer data is received from a manufacturer (i.e., a customer) that employs a call center service provider to handle sales calls. As described above, the customer data specifies the work tasks requested by a particular customer, and the required or desired attributes or performance levels associated with the requested work tasks. In some embodiments, the mapping data engine 114 receives the customer data.

[0066] For each of the multiple customers, process 200 generates mapping data that reveals a correlation measure between the service provider's skill data and customer data that reveals the work tasks requested by the customer (212). As described above, the mapping data reveals a correlation measure between the service provider's skills (e.g., proficiency in software troubleshooting or sales experience) and work-related tasks or duties (e.g., those requested by the customer).

[0067] Process 200 provides mapping data to the information provider for each of several customers (214). The mapping data is available to the information provider 118 to map service requests to service providers with skill sets that correlate with the work tasks requested by the customer. The information provider 118 (e.g., a call center service provider) can use the mapping data to map service providers with skill sets that are a good match (e.g., highly correlated) to the subject of the service request. For example, a consumer might call a customer service center (e.g., via a phone menu that specifies the product / problem the consumer is experiencing) to ask for help setting up a recently purchased television. The call center receiving the request can use the mapping data to transfer the incoming call to a customer service support specialist who has knowledge of television setup, rather than a support specialist with little experience in television setup. Transferring the call to a knowledgeable support specialist improves the customer experience by allowing the customer to receive assistance from an expert on the subject.

[0068] Furthermore, the mapped transfer process benefits call centers in a time-efficient manner (for example, calls are arbitrarily relayed from one support specialist to the next, without attempting to identify which specialist can handle the call), as well as television manufacturers, as customers can gain a positive support experience from knowledgeable support specialists.

[0069] Correlation data generation

[0070] As described above, skill data is used to generate mapping data. The skill data processing system 100 can also use skill data to generate correlation data. One exemplary process by which the skill data processing system 100 generates correlation data can be described as follows.

[0071] Skill data relating to service providers is received within system 100. In one embodiment, the correlation data engine 116 receives skill data from the skill data engine 112. Performance and evaluation data can also be received. Skill data relating to service providers is generated based on performance and evaluation data in a similar manner to that described above with reference to process 200.

[0072] The selection of performance metrics is received from performance data, and the selection of skill sets is received from skill data. In one embodiment, the correlation data engine 116 receives the selection of performance metrics and skill sets. For example, the received selection may be a selection from the employer based on skill data and performance metrics associated with the employer's employees. The received skill set or selection of skills is, for example, the skills represented by the aforementioned strands.

[0073] For each selected skill set, correlation data is generated from the skill data between the selected skill set and each selected performance metric. The correlation data for the selected skill sets explicitly indicates the correlation scale between the selected skill set and each selected performance metric. For example, if employees with high skill set scores have high performance levels, the correlation data will show a strong correlation between those skills and their performance metrics. On the other hand, if half of the employees with high skill set scores have low performance levels and the other half have high performance levels, the correlation data will show a weak correlation between those skills and their performance metrics.

[0074] Generally, a correlation scale indicates which skill sets influence which performance metrics. In this embodiment, the correlation data engine 116 identifies skill set-performance metric pairs that have a correlation scale above a threshold. For example, if an employer wants to identify skills or skill sets that improve a specific performance metric associated with a work task (e.g., selling a particular product), the employee can set a correlation threshold that defines a minimum correlation scale so that the correlation data engine 116 identifies or highlights only skills or skill sets that have a correlation scale with a performance metric higher than the threshold.

[0075] In one embodiment, the skill set score or strand of a service provider or group of service providers is tracked over a period of time to provide insights into changes in the service provider's performance over time. For example, a service provider skill set score may change over a given period of time based on changes in the service provider's work task performance level (e.g., gaining experience or receiving additional work task-related training) or based on the service provider receiving additional management reviews (e.g., evaluation data).

[0076] Computer system

[0077] In one embodiment, each of the various servers, control units, switches, gateways, engines, and / or modules (collectively referred to as servers) in the diagrams described is implemented via hardware or firmware (e.g., ASICs) as will be understood by those skilled in the art. Each of the various servers may be a process or thread running on one or more processors, executing computer program instructions and interacting with other system components for performing various functions described herein in one or more computing devices (e.g., Figures 6A and 6B). The computer program instructions are stored in memory, which may be implemented in the computing device using standard memory devices such as RAM. The computer program instructions may also be stored in other non-temporary computer-readable media, such as CD-ROMs or flash drives. Those skilled in the art should recognize that computing devices may be implemented via firmware (e.g., application-specific integrated circuits), hardware, or a combination of software, firmware, and hardware. Those skilled in the art should also recognize that the functions of various computing devices may be combined or integrated into a single computing device, or that the functions of a particular computing device may be distributed among one or more other computing devices without departing from the scope of the exemplary embodiments of the present invention. A server may be a software module, which may also be simply referred to as a module. The set of modules within a contact center may include servers and other modules.

[0078] The diverse servers may be located on on-site computing devices in the same physical location as the contact center agents, or off-site in geographically different locations, such as remote data centers connected to the contact center via a network such as the Internet. Furthermore, some servers may be located within on-site computing devices at the contact center, while others may be located within off-site computing devices, or servers providing redundant functionality may be provided via both on-site and off-site computing devices to provide better fault tolerance. In some embodiments, functionality provided by servers located on off-site computing devices may be accessed and provided via a virtual private network (VPN) as if such servers were on-site, or functionality may be provided using software as a service (SaaS) to deliver functionality over the Internet using various protocols, such as exchanging data using encoding in an extensible markup language (XML) or JSON.

[0079] Figures 6A and 6B show an embodiment of a computing device that may be used in embodiments of the present invention, which is represented as 600 overall. Each computing device 600 includes a CPU 605 and a main memory unit 610. As shown in Figure 6A, the computing device 600 may also include a storage device 615, a removable media interface 620, a network interface 625, an input / output (I / O) controller 630, one or more display devices 635A, a keyboard 635B, and a pointing device 635C (e.g., a mouse). The storage device 615 may include, but is not limited to, storage for an operating system and software. As shown in Figure 6B, each computing device 600 may also include additional optional elements such as a memory port 640, a bridge 645, one or more additional input / output devices 635D, 635E, and a cache memory 650 that communicates with the CPU 605. Input / output devices 635A, 635B, 635C, 635D, and 635E may be collectively referred to as 635 in this specification.

[0080] The CPU 605 is any logic circuit that responds to and processes instructions fetched from the main memory unit 610. For example, the CPU 305 may be implemented in an integrated circuit in the form of a microprocessor, microcontroller, or graphics processing unit, or in a field-programmable gate array (FPGA) or application-specific integrated circuit (ASIC). The main memory unit 610 may be one or more memory chips that store data and allow any storage location to be directly accessed by the central processing unit 605. As shown in Figure 6A, the central processing unit 605 communicates with the main memory 610 via the system bus 655. As shown in Figure 6B, the central processing unit 605 may also communicate directly with the main memory 610 via the memory port 640.

[0081] In one embodiment, the CPU 605 may include multiple processors and may provide functionality for the simultaneous execution of instructions or the simultaneous execution of a single instruction on one or more data. In one embodiment, the computing device 600 may include a parallel processor having one or more cores. In one embodiment, the computing device 600 comprises a shared memory parallel device having multiple processors and / or multiple processor cores that access all available memory as a single global address space. In another embodiment, the computing device 600 is a distributed memory parallel device having multiple processors, each accessing only local memory. The computing device 600 may have both some shared memory and some memory that can only be accessed by a particular processor or a subset of processors. The CPU 605 may include a multicore microprocessor that combines two or more independent processors into a single package, for example, a single integrated circuit (IC). For example, the computing device 600 may include at least one CPU 605 and at least one graphics processing unit.

[0082] In one embodiment, the CPU 605 provides single-instruction multiplexing (SIMD) functionality, such as the ability to execute a single instruction simultaneously over multiple data points. In another embodiment, several processors within the CPU 605 may provide functionality for the simultaneous execution of multiple instructions over multiple data points (MIMD). The CPU 605 may also use any combination of SIMD and MIMD cores within a single device.

[0083] Figure 6B shows an embodiment in which the CPU 605 communicates directly with the cache memory 650 via a secondary bus, sometimes referred to as the backside bus. In other embodiments, the CPU 605 communicates with the cache memory 650 using a system bus 655. The cache memory 650 typically has a faster response time than the main memory 610. As illustrated in Figure 6A, the CPU 605 communicates with various I / O devices 635 via the local system bus 655. Various buses, including but not limited to the Video Electronics Standards Association (VESA) Local Bus (VLB), Industry Standard Architecture (ISA) bus, Extended Industry Standard Architecture (EISA) bus, Micro Channel Architecture (MCA) bus, Peripheral Component Interconnect (PCI) bus, PCI Extended (PCI-X) bus, PCI-Express bus, or NuBus, can be used as the local system bus 655. In an embodiment where the I / O device is a display device 635A, the CPU 605 may communicate with the display device 635A via the Advanced Graphics Port (AGP). Figure 6B shows one embodiment of computer 600 in which the CPU 605 communicates directly with the I / O device 635E. Figure 6B also shows an embodiment in which local bus and direct communication are mixed. The CPU 605 communicates with the I / O device 635D using the local system bus 655 while communicating directly with the I / O device 635E.

[0084] A wide variety of I / O devices 635 may be present within the computing device 600. Input devices include, to name a few non-exclusive examples, one or more keyboards 635B, a mouse, a trackpad, a trackball, a microphone, and a drafting table. Output devices include a video display device 635A, a speaker, and a printer. The I / O controller 630 shown in Figure 6A can control one or more I / O devices, such as a keyboard 635B and a pointing device 635C (e.g., a mouse or optical pen).

[0085] Referring again to Figure 6A, the computing device 600 may support one or more removable media interfaces 620, such as a floppy disk drive, CD-ROM drive, DVD-ROM drive, tape drives of various formats, a USB port, a Secure Digital or Compact Flash® memory card port, or any other device suitable for reading data from read-only media, reading data from read-write media, or writing data to read-write media. The I / O device 635 may be a bridge between the system bus 655 and the removable media interface 620.

[0086] The removable media interface 620 may be used, for example, to install software and programs. The computing device 600 may further include storage devices 615, such as one or more hard disk drives or hard disk drive arrays, for storing the operating system and other related software, and for storing application software programs. Optionally, the removable media interface 620 may also be used as a storage device. For example, the operating system and software may be run from bootable media, such as a bootable CD.

[0087] In one embodiment, the computing device 600 may include, or be connected to, a plurality of display devices 635A, each of which may be of the same or different type and / or form. Therefore, either the I / O device 635 and / or the I / O controller 630 may include any type and / or form of suitable hardware, software, or combination of hardware and software to support, enable, or provide the computing device 600 with connection to and use of the plurality of display devices 635A. For example, the computing device 600 may include any type and / or form of video adapters, video cards, drivers, and / or libraries for interface, communicate, connect, or otherwise use the display devices 635A. In one embodiment, the video adapter may include a plurality of connectors for interface to the plurality of display devices 635A. In another embodiment, the computing device 600 may include a plurality of video adapters, each video adapter connected to one or more of the display devices 635A. In yet another embodiment, one or more of the display devices 635A may be provided, for example, by one or more other computing devices connected to the computing device 600 via a network. These embodiments may include any type of software designed and built to use a display device of another computing device as a second display device 635A for computing device 600. Those skilled in the art will recognize and understand the various ways and embodiments by which computing device 600 may be configured to have multiple display devices 635A.

[0088] The computing device embodiments shown in their entirety in Figures 6A and 6B may operate under the control of an operating system, which controls task scheduling and access to system resources. The computing device 600 may run any operating system, any embedded operating system, any real-time operating system, any open-source operating system, any proprietary operating system, any operating system for mobile computing devices, or any other operating system that can run on the computing device and perform the operations described herein.

[0089] The computing device 600 may be any workstation, desktop computer, laptop or notebook computer, server machine, computer with handle, mobile phone or other portable telecommunications device, media playback device, game system, mobile computing device, or any other type and / or form of computing, telecommunications, or media device that is communicative and has sufficient processor power and memory capacity to perform the operations described herein. In some embodiments, the computing device 600 may have different processors, operating systems, and input devices that match the device.

[0090] In other embodiments, the computing device 600 is a mobile device. Examples include a Java-enabled mobile phone or personal digital assistant (PDA), a smartphone, a digital audio player, or a portable media player. In one embodiment, the computing device 600 may be a combination of devices, such as a mobile phone combined with a digital audio player or a portable media player.

[0091] The computing device 600 may be one of several machines connected by a network, or may include several machines connected in this manner. The network environment may include one or more local machines, client nodes, client machines, client computers, client devices, endpoints, or endpoint nodes communicating with one or more remote machines (which may also be generally referred to as server machines or remote machines) via one or more networks. In one embodiment, a local machine may have the ability to function as both a client node seeking access to resources provided by a server machine and a server machine providing access to hosted resources for other clients. The network may be a LAN or WAN link, a broadband connection, a wireless connection, or any or all of the above. The connection may be established using various communication protocols. In one embodiment, the computing device 600 communicates with other computing devices 600 via any type and / or form of gateway or tunneling protocol, such as Secure Socket Layer (SSL) or Transport Layer Security (TLS). The network interface may include an internal network adapter, such as a network interface card, which is suitable for interface the computing device to any type of network to which it can communicate and for performing the operations described herein. The I / O device may also be a bridge between the system bus and the external communication bus.

[0092] In one embodiment, the network environment may be a virtual network environment in which various components of the network are virtualized. For example, the various machines may be virtual machines implemented as software-based computers running on physical machines. Virtual machines may share the same operating system. In other embodiments, different operating systems may run on each virtual machine instance. In one embodiment, a "hypervisor" type of virtualization is implemented in which multiple virtual machines run on the same host physical machine, each functioning as if it had its own dedicated box. Virtual machines may also run on different host physical machines.

[0093] Other types of virtualization can also be conceivable, such as through networks (e.g., via Software Defined Networking (SDN)). Functions such as session boundary controller functions and other types of functions can also be virtualized, for example, through Network Functions Virtualization (NFV).

[0094] In one embodiment, the use of LSH to automatically discover carrier audio messages within a large set of pre-connected audio recordings can be applied to media service support processes for contact center environments. For example, this can assist call analysis processes for contact centers and help eliminate the need for humans to listen to large sets of audio recordings to discover new carrier audio messages.

[0095] Although the present invention has been illustrated and described in detail in the drawings and the foregoing description, this should be considered illustrative rather than restrictive, and only preferred embodiments are shown and described, and it is understood that all equivalents, changes, and modifications that fall within the spirit of the invention as described herein and / or in the following claims are desirable to be protected.

[0096] Therefore, the appropriate scope of the present invention should be determined solely by the broadest interpretation of the appended claims to encompass all such modifications and all relationships equivalent to those illustrated in the drawings and described herein.

Claims

1. A method for automatically generating improvement profiles for key performance indicators associated with a given agent in a contact center environment using a skills management platform, A step of calculating the variance of each metric using the variance formula and historical data for the metric, A step of normalizing the calculated variance with respect to the metric associated with the agent and calculating the importance of each metric, The process of generating a strand representing the set of key performance indicators by generating a random sample set of agents associated with each metric using the importance of each metric through the skill management platform, The process of calculating the distance from the mean for each metric relating to the agent, and selecting metrics whose distance does not meet a threshold for improvement of the agent, A step of determining which of the metrics should focus on improvement by comparing the distance obtained by the calculation with that of other agents in the contact center with respect to the said agent, A step of generating the improvement profile, which includes a ranking of the order in which each agent should be improved, based on the distance obtained by the calculation, Methods that include...

2. The method according to claim 1, wherein the importance is based on the weights set for each metric by the user.

3. The above normalization includes the following formula: [Math 1] In the formula, N represents the number of metrics, i represents the first metric, j represents the second metric, 0 ≤ α ≥ 1 represents the weight of the metric, and σ 2 The method according to claim 2, wherein represents the variance of each metric.

4. The method according to claim 2, wherein the metric having a higher variance has a greater weight than the metric having a lower variance.

5. The method according to claim 4, wherein the step of determining the improvement metric includes mathematically calculating a minimum value across the set of metrics relating to the agent to determine which metric requires improvement.

6. The method according to claim 1, wherein the distribution formula includes removing the mean of the past data by dividing the sum of the squares of the past data by the same size.

7. The normalization described above includes applying the following formula: [Math 2] In the formula, N represents the number of metrics, i represents the first metric, j represents the second metric, 0 ≤ α ≥ 1 represents the weight of the metrics, and σ 2 The method according to claim 1, wherein is the variance of each metric.

8. A method for automatically generating a profile of key performance indicators associated with a given agent in a contact center environment using a skills management platform, A step of calculating the variance of each metric using the variance formula and historical data for the metric, A step of normalizing the calculated variance with respect to the metric associated with the agent and calculating the importance of each metric, The process of generating a strand representing the set of key performance indicators by generating a random sample set of agents associated with each metric using the importance of each metric through the skill management platform, A step of calculating the distance from the mean for each metric relating to the agent, and selecting metrics that have a distance that does not meet a threshold in order to highlight the agent's performance. A step of determining which of the metrics should focus on improvement by comparing the distance obtained by the calculation with the distance of other agents with respect to the agent, A step of generating the profile, which includes a ranking of the order in which each agent should be improved, based on the distance obtained by the calculation, Methods that include...

9. The method according to claim 8, wherein the importance is based on weighting applied to each metric according to user ratings.

10. The above normalization includes the following formula: [Math 3] In the formula, N represents the number of metrics, i represents the first metric, j represents the second metric, 0 ≤ α ≥ 1 represents the weight of the metric, and σ 2 The method according to claim 9, wherein represents the variance of each metric.

11. The method according to claim 9, wherein the metric having a higher variance has a greater weight than the metric having a smaller variance.

12. The method according to claim 8, wherein the distribution formula includes removing the mean of the past data by dividing the sum of the squares of the past data by the same size.

13. The normalization described above includes applying the following formula: 【Number 4】 In the formula, N represents the number of metrics, i represents the first metric, j represents the second metric, 0 ≤ α ≥ 1 represents the weight of the metrics, and σ 2 The method according to claim 8, wherein represents the variance of each metric.

14. A system that uses a skill management platform to automatically generate improvement profiles for key performance indicators associated with a given agent in a contact center environment, Processor and The system includes a memory that communicates with the processor and stores instructions that, when executed by the processor, cause the processor to generate an improvement profile, wherein the improvement profile allows the agent to communicate via a user interface associated with the skill management platform. The variance of each metric is calculated using the variance formula and historical data for the said metric. The calculated variance is normalized for the metrics associated with the agent, and the importance of each metric is calculated. Through the skill management platform, a strand representing the set of key performance indicators is generated by generating a random sample set of agents associated with each metric using the importance of each metric, The distance from the mean is calculated for each metric relating to the agent, and the metrics that have a distance that does not meet the threshold are selected for improvement of the agent. The distance obtained by the calculation with respect to the agent is compared with the distances of other agents in the contact center to determine which of the metrics should be focused on for improvement. Based on the distance obtained by the above calculation, an improvement profile is generated for each agent, which includes a ranking of the order in which improvements should be made. A system that executes this.

15. A system that uses a skill management platform to automatically generate profiles of key performance indicators associated with a given agent in a contact center environment, Processor and The system includes a memory that communicates with the processor and stores instructions that, when executed by the processor, cause the processor to generate an improvement profile, wherein the improvement profile allows the agent to communicate via a user interface associated with the skill management platform. The variance of each metric is calculated using the variance formula and historical data for the said metric. The calculated variance is normalized for the metrics associated with the agent, and the importance of each metric is calculated. Through the skill management platform, a strand representing the set of key performance indicators is generated by generating a random sample set of agents associated with each metric using the importance of each metric, The distance from the mean is calculated for each metric relating to the agent, and metrics with distances that do not meet a threshold are selected to highlight the agent's performance. By comparing the distance obtained by the above calculation with the distance of other agents, the improvement metric that should be focused on for improvement is determined from among the above metrics. Based on the distance obtained by the above calculation, a profile is generated that includes a ranking of the order in which each agent should be improved. A system that executes this.

Citation Information

Patent Citations

  • Deficient job skill procurement system

    JP2007034922A

  • System to support contextualized definitions of competitions in call centers

    US20140192970A1