Sign In to Follow Application
View All Documents & Correspondence

System And Method For Forecasting Resource Requirements Using Customer Feedback Attributes

Abstract: This disclosure relates generally to forecasting resource requirements using customer feedback attributes. Current processes of hiring lack a method to forecast uncertainties inherent in business situation of the project. Such an uncertainty may be in form of customer satisfaction or change in customer demand that may impact the requirements of project with respect to hiring of the skills. The disclosed method utilizes the forecast sentiment score based on a weighted sum of the plurality of customer sentiment scores and a baseline forecast score. A difference of the forecast sentiment score and actual customer sentiment score is then utilized to forecast a need for resource requirements.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
27 August 2021
Publication Number
09/2023
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
ip@legasis.in
Parent Application
Patent Number
Legal Status
Grant Date
2024-07-24
Renewal Date

Applicants

Tata Consultancy Services Limited
Nirmal Building, 9th Floor, Nariman Point, Mumbai - 400021, Maharashtra, India

Inventors

1. RAKHEJA, Shuchi
Tata Consultancy Services Limited, 1st to 13th floors, Kensington 'B' Wing - SEZ, Hiranandani Business Park, Powai, Mumbai - 400076, Maharashtra, India
2. TIWARI, Shubham
Tata Consultancy Services Limited, 1st to 13th floors, Kensington 'B' Wing - SEZ, Hiranandani Business Park, Powai, Mumbai - 400076, Maharashtra, India
3. GHOSH, Suman
Tata Consultancy Services Limited, 1st to 13th floors, Kensington 'B' Wing - SEZ, Hiranandani Business Park, Powai, Mumbai - 400076, Maharashtra, India
4. KRISHNASWAMY, Subramanian
Tata Consultancy Services Limited, 1st to 13th floors, Kensington 'B' Wing - SEZ, Hiranandani Business Park, Powai, Mumbai - 400076, Maharashtra, India

Specification

Claims:
1. A processor implemented method (200), comprising:
obtaining (202), via one or more hardware processors, a project feedback data comprising a plurality of feedback comments for a project, the plurality of feedback comments obtained from a customer of an enterprise, wherein the plurality of feedback comments is associated with a first-time duration;
extracting (204), from the project feedback data, a plurality of sentiment attributes for each of a plurality of aspects using an aspect-based sentiment analysis model, via the one or more hardware processors, each of the plurality of sentiment attributes indicative of one of a positive sentiment, a negative sentiment, or a neutral sentiment;
determining (206), for the first time duration, a plurality of customer sentiment scores for the plurality of aspects based on the plurality of sentiment attributes, via the one or more hardware processors;
predicting (208) a baseline forecast score for a second time duration using a forecasting technique, via the one or more hardware processors;
computing (210), via the one or more hardware processors, a forecast sentiment score based on a weighted sum of the plurality of customer sentiment scores for the first time duration and the baseline forecast score for the second time duration, wherein the weighted sum is obtained based on a plurality of preconfigured weights associated with each of the plurality of aspects, and wherein each weight of the plurality of weights is associated with a flag, and wherein the flag is positive for an attribute associated with the positive sentiment and the flag is negative for an attribute associated with the negative sentiment, and wherein the second time duration occurs subsequent to the first time duration, and wherein the forecast sentiment score predicts the sentiment of the customer for the second time duration;
computing (212), via the one or more hardware processors, a difference between the forecast sentiment score for the second time duration and an actual customer sentiment score for the first time duration, wherein the difference is negative for one or more aspects associated with deterioration in the project and the difference is positive for the one or more aspects associated with improvement in the project, and wherein the actual customer sentiment score is obtained using a customer sentiment index for the first time duration;
predicting (214), one or more project requirements based on the one or more aspects associated with the deterioration, via the one or more hardware processors, wherein the one or more aspects are associated with a set of resource skills and are derived from project data stored in a project repository of the enterprise; and
matching (216), by a resource allocation engine, the set of resource skills with a plurality of skills stored in a resource repository associated with the enterprise to identify one or more resources possessing the set of resource skills, via one or more hardware processors.

2. The method of claim 1, wherein the plurality of aspects comprises time of submitting deliverable of the project, quality of the deliverable, and communication during the project.

3. The method of claim 1, further comprising pre-processing the customer feedback data prior to extracting the plurality of sentiment attributes for each of the plurality of aspects.

4. A system (301), comprising:
a memory (315) storing instructions;
one or more communication interfaces (303); and
one or more hardware processors (302) coupled to the memory (315) via the one or more communication interfaces (303), wherein the one or more hardware processors (302) are configured by the instructions to:
obtain a project feedback data comprising a plurality of feedback comments for a project, the plurality of feedback comments obtained from a customer of an enterprise, the plurality of feedback comments associated with a first time duration;
extract, from the project feedback data, a plurality of sentiment attributes for each of a plurality of aspects using an aspect-based sentiment analysis model, each of the plurality of sentiment attributes indicative of one of a positive sentiment. a negative sentiment, or a neutral sentiment;
determine, for the first time duration, a plurality of customer sentiment scores for the plurality of aspects based on the plurality of sentiment attributes;
predict a baseline forecast score for a second time duration using a forecasting technique;
compute a forecast sentiment score based on a weighted sum of the plurality of customer sentiment scores for the first time duration and the baseline forecast score for a second time duration, wherein the weighted sum is obtained based on a plurality of preconfigured weights associated with each of the plurality of aspects, and wherein each weight of the plurality of weights is associated with a flag, and wherein the flag is positive for an attribute associated with the positive sentiment and the flag is negative for an attribute associated with the negative sentiment, and wherein the second time duration occurs subsequent to the first time duration, and wherein the forecast sentiment score predicts the sentiment of the customer for the second time duration;
compute a difference between the forecast sentiment score for the second time duration and an actual customer sentiment score for the first time duration, wherein the difference is negative for one or more aspects associated with deterioration in the project and the difference is positive for the one or more aspects associated with improvement in the project, and wherein the actual customer sentiment score is obtained using a customer sentiment index for the first time duration;
predict, one or more project requirements based on the one or more aspects associated with the deterioration, wherein the one or more aspects are associated with a set of resource skills and are derived from project data stored in a project repository of the enterprise; and
match, by a resource allocation engine, the set of resource skills with a plurality of skills stored in a resource repository associated with the enterprise to identify one or more resources possessing the set of resource skills.

5. The system of claim 4, wherein the plurality of aspects comprises time of submitting deliverable of the project, quality of the deliverable, and communication during the project.

6. The system of claim 4, further comprising pre-processing the customer feedback data prior to extracting the plurality of sentiment attributes for each of the plurality of aspects.
, Description:FORM 2

THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003

COMPLETE SPECIFICATION
(See Section 10 and Rule 13)

Title of invention:
SYSTEM AND METHOD FOR FORECASTING RESOURCE REQUIREMENTS USING CUSTOMER FEEDBACK ATTRIBUTES

Applicant:
Tata Consultancy Services Limited
A company Incorporated in India under the Companies Act, 1956
Having address:
Nirmal Building, 9th Floor,
Nariman Point, Mumbai 400021,
Maharashtra, India

The following specification particularly describes the invention and the manner in which it is to be performed.
TECHNICAL FIELD
[001] The disclosure herein generally relates to resource forecasting systems for an enterprise and methods, and, more particularly, to a system and method for forecasting resource requirements using customer feedback attributes.

BACKGROUND
[002] In large organizations, for creation of a product or a service, resources with multiple skills are required. Availability of right resources or human expertise at right time plays an imperative role in successful creation of the product and timely service. The task of resource identification and assignment is the responsibility of recruiting team. Typically, the recruiting team engages in grueling interviews and assessments to identify appropriate resources to be hired. However, the process is lengthy and time consuming, and many a times it may be time consuming, thereby resulting in unnecessary delay in the start of critical projects.
[003] Currently, various technologies exist that uses natural language processing (NLP) techniques to shortlist appropriate resource profiles from bundles of resumes as an attempt to pace up the project hiring process. However, the process lacks a methodical way to create requirements or predict uncertainty inherent in any business situations or projects. Additionally, the current processes lack a way to suggest best fit resource from amongst the shortlisted bundle of resumes.

SUMMARY
[004] Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a method for forecasting resource requirements using customer feedback attributes is provided. The method includes obtaining, via one or more hardware processors, a project feedback data comprising a plurality of feedback comments for a project, the plurality of feedback comments obtained from a customer of an enterprise, the plurality of feedback comments mentioned in a human understandable language and associated with a first time duration. Further, the method includes extracting via the one or more hardware processors, from the project feedback data, a plurality of sentiment attributes for each of a plurality of aspects using an aspect-based sentiment analysis model, each of the plurality of sentiment attributes indicative of one of a positive sentiment. or a negative sentiment, or a neutral sentiment. Furthermore, the method includes determining, for the first time duration, a plurality of customer sentiment scores for the plurality of aspects based on the plurality of sentiment attributes via the one or more hardware processors. Also, the method includes predicting, via the one or more hardware processors, a baseline forecast score for a second time duration using a forecasting technique, and computing a forecast sentiment score based on a weighted sum of the plurality of customer sentiment scores for the first time duration and the baseline forecast score for a second time duration via the one or more hardware processors, wherein the weighted sum is obtained based on a plurality of preconfigured weights associated with each of the plurality of aspects, and wherein each weight of the plurality of weights is associated with a flag, and wherein the flag is positive for an attribute associated with a positive sentiment and the flag is negative for an attribute associated with a negative sentiment, and wherein the second time duration occurs subsequent to the first time duration, and wherein the forecast sentiment score predicts the sentiment of the customer for the second time duration. Also, the method includes computing, via the one or more hardware processors, a difference between the forecast sentiment score for the second time duration and an actual customer sentiment score for the first time duration, wherein the difference is negative for one or more aspects associated with deterioration in the project and the difference is positive for the one or more aspects associated with improvement in the project, and wherein the actual customer sentiment score is obtained using a customer sentiment index for the first time duration. Further the method includes predicting, via the one or more hardware processors, one or more project requirements based on the one or more aspects associated with the deterioration, wherein the one or more aspects are associated with a set of resource skills and are derived from project data stored in a project repository of the enterprise. Moreover, the method includes matching, by a resource allocation engine, the set of resource skills with a plurality of skills stored in a resource repository associated with the enterprise to identify one or more resources possessing the set of resource skills via the one or more hardware processors.
[005] In another aspect, a system for forecasting resource requirements using customer feedback attributes is provided. The system includes a memory storing instructions; one or more communication interfaces; and one or more hardware processors coupled to the memory via the one or more communication interfaces, wherein the one or more hardware processors are configured by the instructions to obtain a project feedback data comprising a plurality of feedback comments for a project, the plurality of feedback comments obtained from a customer of an enterprise, the plurality of feedback comments mentioned in a human understandable language and associated with a first time duration. Further the one or more hardware processors are configured by the instructions to extract, from the project feedback data, a plurality of sentiment attributes for each of a plurality of aspects using an aspect-based sentiment analysis model, each of the plurality of sentiment attributes indicative of one of a positive sentiment. or a negative sentiment, or a neutral sentiment. Furthermore, the one or more hardware processors are configured by the instructions to determine, for the first time duration, a plurality of customer sentiment scores for the plurality of aspects based on the plurality of sentiment attributes. Moreover, the one or more hardware processors are configured by the instructions to predict a baseline forecast score for a second time duration using a forecasting technique. Also, the one or more hardware processors are configured by the instructions to compute a forecast sentiment score based on a weighted sum of the plurality of customer sentiment scores for the first time duration and the baseline forecast score for a second time duration, wherein the weighted sum is obtained based on a plurality of preconfigured weights associated with each of the plurality of aspects, and wherein each weight of the plurality of weights is associated with a flag, and wherein the flag is positive for an attribute associated with a positive sentiment and the flag is negative for an attribute associated with a negative sentiment, and wherein the second time duration occurs subsequent to the first time duration, and wherein the forecast sentiment score predicts the sentiment of the customer for the second time duration. Also, the one or more hardware processors are configured by the instructions to compute a difference between the forecast sentiment score for the second time duration and an actual customer sentiment score for the first time duration, wherein the difference is negative for one or more aspects associated with deterioration in the project and the difference is positive for the one or more aspects associated with improvement in the project, and wherein the actual customer sentiment score is obtained using a customer sentiment index for the first time duration. Further, the one or more hardware processors are configured by the instructions to predict, one or more project requirements based on the one or more aspects associated with the deterioration, wherein the one or more aspects are associated with a set of resource skills and are derived from project data stored in a project repository of the enterprise. The one or more hardware processors are further configured by the instructions to match, by a resource allocation engine, the set of resource skills with a plurality of skills stored in a resource repository associated with the enterprise to identify one or more resources possessing the set of resource skills.
[006] In yet another aspect, a non-transitory computer readable medium for a method for forecasting resource requirements using customer feedback attributes is provided. The method includes obtaining, via one or more hardware processors, a project feedback data comprising a plurality of feedback comments for a project, the plurality of feedback comments obtained from a customer of an enterprise, the plurality of feedback comments mentioned in a human understandable language and associated with a first time duration. Further, the method includes extracting via the one or more hardware processors, from the project feedback data, a plurality of sentiment attributes for each of a plurality of aspects using an aspect-based sentiment analysis model, each of the plurality of sentiment attributes indicative of one of a positive sentiment. or a negative sentiment, or a neutral sentiment. Furthermore, the method includes determining, for the first time duration, a plurality of customer sentiment scores for the plurality of aspects based on the plurality of sentiment attributes via the one or more hardware processors. Also, the method includes predicting, via the one or more hardware processors, a baseline forecast score for a second time duration using a forecasting technique, and computing a forecast sentiment score based on a weighted sum of the plurality of customer sentiment scores for the first time duration and the baseline forecast score for a second time duration via the one or more hardware processors, wherein the weighted sum is obtained based on a plurality of preconfigured weights associated with each of the plurality of aspects, and wherein each weight of the plurality of weights is associated with a flag, and wherein the flag is positive for an attribute associated with a positive sentiment and the flag is negative for an attribute associated with a negative sentiment, and wherein the second time duration occurs subsequent to the first time duration, and wherein the forecast sentiment score predicts the sentiment of the customer for the second time duration. Also, the method includes computing, via the one or more hardware processors, a difference between the forecast sentiment score for the second time duration and an actual customer sentiment score for the first time duration, wherein the difference is negative for one or more aspects associated with deterioration in the project and the difference is positive for the one or more aspects associated with improvement in the project, and wherein the actual customer sentiment score is obtained using a customer sentiment index for the first time duration. Further the method includes predicting, via the one or more hardware processors, one or more project requirements based on the one or more aspects associated with the deterioration, wherein the one or more aspects are associated with a set of resource skills and are derived from project data stored in a project repository of the enterprise. Moreover, the method includes matching, by a resource allocation engine, the set of resource skills with a plurality of skills stored in a resource repository associated with the enterprise to identify one or more resources possessing the set of resource skills via the one or more hardware processors.
[007] It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS
[008] The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles:
[009] FIG. 1 illustrates a network implementation of a method for forecasting resource requirements using customer feedback attributes according to some embodiments of the present disclosure.
[010] FIGS. 2A-2B is a flow diagram for a method for forecasting resource requirements using customer feedback attributes according to some embodiments of the present disclosure.
[011] FIG. 3 is a block diagram of an exemplary computer system for implementing embodiments consistent with the present disclosure.

DETAILED DESCRIPTION OF EMBODIMENTS
[012] The current process of hiring lacks a method to forecast uncertainties inherent in business situation of the project. Such an uncertainty may be in form of customer satisfaction or change in customer demand that could impact the requirements of project with respect to hiring of the skills. There is a lack of techniques that could learn from the unstructured data that may exist in the most organizations data mart, in form of comments from clients or past performance given by the project manager to candidates as recorded, for example during internal appraisal systems. Assessment of candidates from, on the job performance could be more useful information than the scores from internal assessments. Many a times, expertise is not available at right time as there is no maintenance of component pool of different expertise that could possibly be required in the project.
[013] Various embodiments described herein provides method and system for forecasting resource requirements using customer feedback attributes. For example, in an embodiment, the disclosed system includes a forecasting engine which is configured to quantify uncertainty in business environment of the organization that is related to the project. The uncertainty generated by the forecasting engine is used to determine a level of resource expertise to be hired for the project.
[014] Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts. While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the scope of the disclosed embodiments. It is intended that the following detailed description be considered as exemplary only, with the true scope being indicated by the following claims.
[015] Referring now to the drawings, and more particularly to FIG. 1 through 3, where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method.
[016] FIG. 1 illustrates an example network implementation 100 of a system for forecasting resource requirements using customer feedback attributes, in accordance with an example embodiment. In one embodiment, the network implementation 100 includes one or more devices, for example, devices 102-1, 102-2, …102-N (hereinafter referred to as devices 102), a server 104, and a communication network 108. It will be noted herein that the number of devices, illustrated in FIG. 1, is provided for explanatory purposes only. In practice or some example scenarios, there may be additional or fewer devices than those illustrated in FIG. 1. The devices 102 and/or networks of the network implementation 100 may interconnect via wired connections, wireless connections, or a combination of wired and wireless connections over the communication network 108.
[017] In an embodiment, the communication network 108 may be a wireless or a wired network, or a combination thereof. In an example, the communication network 208 can be implemented as a computer network, as one of the different types of networks, such as virtual private network (VPN), intranet, local area network (LAN), wide area network (WAN), the internet, and such. The communication network 208 may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), and Wireless Application Protocol (WAP), to communicate with each other. Further, the network 108 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices. The network devices within the network 108 may interact with the server 102 through communication links.
[018] The network environment 100 supports various communication links or connectivity options such as BLUETOOTH®, USB, ZigBee and other cellular services. The network environment enables connection of collection unit 102 with the server 104, and accordingly with the database 112 using any communication link including Internet, WAN, MAN, and so on.
[019] As discussed above, the system 106 may be implemented in a computing device, such as a hand-held device, a laptop or other portable computer, a tablet computer, a mobile phone, a PDA, a smartphone, and a desktop computer. The system 206 may also be implemented in a workstation, a mainframe computer, a server, and a network server. In an embodiment, the system 106 may be coupled to a knowledge repository, for example, a repository 112. The repository 112 may store data processed, received, and generated by the system 106. In an alternate embodiment, the system 106 may include the data repository 112. The components and functionalities of the system 106 are described further in detail with reference to FIGS. 2A-3.
[020] FIGS. 2A-2B illustrates a flow diagram of a method 200 for forecasting resource requirements using customer feedback attributes, in accordance with an example embodiment. Operations of the flowchart, and combinations of operation in the flowchart, may be implemented by various means, such as hardware, firmware, processor, circuitry and/or other device associated with execution of software including one or more computer program instructions. For example, one or more of the procedures described in various embodiments may be embodied by computer program instructions. In an example embodiment, the computer program instructions, which embody the procedures, described in various embodiments may be stored by at least one memory device of a system and executed by at least one processor in the system. Any such computer program instructions may be loaded onto a computer or other programmable system (for example, hardware) to produce a machine, such that the resulting computer or other programmable system embody means for implementing the operations specified in the flowchart. It will be noted herein that the operations of the method 200 are described with help of system 102. However, the operations of the method 200 can be described and/or practiced by using any other system.
[021] The disclosed method utilizes advanced techniques including sentiment analysis and forecasting models to evaluate and assign resources/expertise as per the project needs in enterprises. Additionally, the method facilitates providing real time alerts for skill gaps and insights driven hiring to grow expert resource pool. An important contribution of the disclosed method is that the method allows recruiting resources for projects based on feedback received from customers in real-time. For instance, if the customer feedback is pertaining to quality of the output (or deliverables) in the project, then the disclosed method are configured to intelligently categorize the feedback as ‘quality deficit’ and accordingly create requirements for hiring suitable resource that may posses skills to meet the quality criteria of the project. The method is explained in greater detail below.
[022] At 202, the method 200 includes obtaining a project feedback data comprising a plurality of feedback comments for a project. The plurality of feedback comments may be obtained from a customer of an enterprise. The plurality of feedback comments maybe mentioned in a human understandable language and associated with a first-time duration. For instance, the first-time duration may be three months and the plurality of feedback comments may be obtained for the time duration of consecutive three months.
[023] In an embodiment, the project feedback data may include a live stream of comments from the customer. The comments may include, for example, comments pertaining various aspects regarding time of submitting deliverable of the project, quality of the deliverable, and communication during the project. The live stream of comments from the customer may be passed through a sentiment analysis engine to categorize each of the comments a positive, negative or neutral. In particular, the sentiment analysis engine extracts a plurality of sentiment attributes from the project feedback data obtained for the first-time duration at 204.
[024] The sentiment analysis engine uses an aspect-based sentiment analysis (ABSA) model which comprises a keyword extraction algorithm to extract the sentiment attributes for each of a plurality of aspects associated with the comments. The Aspect-based sentiment analysis (ABSA) is a text analysis technique that categorizes data by aspect and identifies the sentiment attributes for each of the aspects. Aspect-based sentiment analysis can be used to analyze customer feedback by associating specific sentiments with different aspects of a product or service. Aspects may be related to the attributes or components of a product or service e.g., “the user experience of a new product,” “the response time for a query or complaint,” or “the ease of integration of new software. The aspect-based sentiment analysis can extract:
(1) Sentiments: For example, positive or negative opinions about an aspect.
(2) Aspects: For example, the category, feature, or topic that is being talked about.
[025] Each of the plurality of sentiment attributes associated with the aspects are indicative of one of a positive sentiment, a negative sentiment, or a neutral sentiment. For instance, for the feedback comment “Happy with project progress, but lack of follow-up communication", the ABSA may result in two aspects, i.e. Project Progress and communication. Examples of some of the attributes or keywords for the aspect of timely deliverable include, but are not limited to, project progress', 'on time', 'deliverables', 'late', 'delivery progress' and so on. Examples of some of the attributes or keywords for the aspect of quality include, but are not limited to Product life',' Ease of use', 'Technically sound',' Product useability',’ the ease of integration’ and so on.. Examples of some of the attributes or keywords for the aspect of communication include, but are not limited to lack of follow-up', 'lost in translation', 'understanding requirements', and so on.
[026] In an embodiment, the ABSA technique comprises the steps of pre-processing, tokenizing, part of speech (PoS) tagging, aspect extraction, and identifying opinion words and their orientation. The pre-processing is done to improve accuracy of the data, for example customer feedback data. The pre-processing also avoids unnecessary data processing in each phase. It includes remove unnecessary words (such as Oh, OMG, Smileys, hello guys, thanks, and so on) and non-alphabetical characters. Tokenize the reviews includes reading reviews from text files. The text files consist of paragraphs, so the entire file may be broken into sentences. These sentences can individually be use for mining. PoS tagging is the process of assigning a part of speech marker to each word in an input text. Since tags are generally also applied to punctuation, tokenization is usually performed before, or as part of, the tagging process. Aspects are the important features rated by the reviewers. In The aspect extraction, the aspects for a domain are identified through the training process. An aspect may be a single word or a phrase. To extract the aspect, searching of noun and noun phrases of the reviews are needed. Thereafter opinion words and their orientation are identified. Opinion words are the words which express opinion towards aspects. In the aspect-based opinion mining, the aspect related opinion words should be identified. The opinion words are mostly adjectives, verbs, adverb adjective, and adverb verb combinations. For each opinion word, its semantic orientation is identified, which is used to predict the semantic orientation of each opinion sentence of the customer feedback data. The ABSA can be applied using any of the known algorithms such as R, BERT, LSTM, Spacy, and so on.
[027] As discussed, the ABSA is used in the sentiment engine to identify the key words representing various aspects such as timely deliverable, quality, and communication aspects based on the customer feedback. Based on the keywords, a sentiment score/flag may be generated for each aspect of the customer feedback comments. At 206, the method 200 includes determining, for the first-time duration, a plurality of customer sentiment scores for the plurality of aspects based on the plurality of sentiment attributes. The customer sentiment scores may be determined by using a sentiment analysis technique that may determine whether a text of the customer feedback is positive, negative or neutral. In an embodiment, the sentiment analysis technique includes a sentiment categorization and a problem aspects identification using keyword extraction. The sentiment categorization may be done using a natural language processing (NLP) technique, for example, Tokenization, Lemmatization, Vectorization (TF-IDF, Word2Vec), Textblob. Using NLP technique, the customer feedback comments for the first-time duration (for instance, last quarter) may be analyzed and divided into categories, such as positive, negative or neutral. For example, in the aforementioned example, the sentiment analysis may tag ‘progress’ as ‘neutral’ and ‘communication’ as ‘negative’. Additionally, for problem aspects identification, most frequently used words in the customer feedback comments that are in line with the aspect of the problem are extracted. Such feedback comments may provide meaningful insights without going through whole text of the feedback comments. An example of generating assignment scores/flags for a comment by identifying aspects in the comments is shown in the table below.
Comment Aspect Sentiment score/Flag
The project delivered the product on time with decent quality, team is hardworking and technically sound. Ideas were not communicated clearly. Time Deliverable 0
Quality 0
Communication -1

[028] As shown herein, for a comment “The project delivered the product on time with decent quality, team is hardworking and technically sound. Ideas were not communicated clearly.”, the aspects ‘time delivery’ and ‘quality’, the sentiment flag is ‘0’ while for the aspect ‘communication’, the sentiment flag is ‘-1’.
[029] At 208, the method 200 includes predicting a baseline forecast score for a second time duration using a forecasting technique. Herein, the baseline forecast score is indicative of average of customer sentiments over time. Herein, the second time duration occurs subsequent to the first time duration, and is the time duration for which the resource requirements are to be predicted based on the customer feedback. The baseline forecast sentiment score can be derived from historic customer feedback scores gathered by organizations on periodic basis for the first-time duration, for example, monthly or quarterly basis.
[030] In order to predict future customer sentiment, historic customer satisfaction survey (CSS) monthly information can be used as input by the forecasting engine. The forecasting engine uses a forecasting technique to predict future customer sentiment. Examples of forecasting techniques include, but are not limited to, Simple Moving Average (SMA), Exponential Smoothing, Autoregressive Integrated Moving Average (ARIMA), Autoregressive Integrated Moving Average with Explanatory Variable (ARIMAX) and so on. A SMA is the simplest type of technique of forecasting. The SMA is calculated by adding up the last ‘n’ period’s values and then dividing that number by ‘n’. So, the moving average value is considering as the forecast for next period. The moving averages can be used to quickly identify whether series is moving in an uptrend or a downtrend depending on the pattern captured by the moving average. The Exponential Smoothing assigns exponentially decreasing weights as the observation get older. The technique ARIMA requires data series to be stationary (Trend and Seasonality eliminated) and secondly, the data should also show a constant variance in its fluctuations over time. ARIMA’s primary application is in short forecasting with minimum 38-40 historical data points with minimum number of outliers. The ARIMAX model is suitable for analysis where there are additional explanatory variables (multivariate) in categorical and/or numeric format. For example, customer satisfaction index (CSI) could be correlated with client market situation or other economic activities.
[031] At 210, the method 200 includes computing a forecast sentiment score based on a weighted sum of the plurality of customer sentiment scores for the first time duration and the baseline forecast score for a second time duration. Herein, the forecast sentiment score predicts the sentiment of the customer for the second time duration. The weighted sum may be obtained based on a plurality of preconfigured weights associated with each of the plurality of aspects. For example, the preconfigured weight for the aspect of communication, timely deliverable and quality may be 2, 3, and 5 respectively. Alternatively, in various scenarios, said weights may be preconfigured as per the enterprise’s requirements. Each weight of the plurality of weights is associated with a flag. The flag is positive for an attribute associated with a positive sentiment and the flag is negative for an attribute associated with a negative sentiment.
[032] At 212, the method 200 includes computing a difference between the forecast sentiment score for the second time duration and an actual customer sentiment score for the first time duration. Herein, the difference is negative for one or more aspects associated with deterioration thereof in the project and the difference is positive for the one or more aspects associated with improvement in the project. In an embodiment, the actual sentiment score is determined from customer feedback shared with the project team for a plurality of project attributes. In an embodiment, the plurality of project attributes may include, but are not limited to, Quality of service, Quality of Experience, and Business Improvement. The customer feedback may be received on the scale of, for example, 1-10, which may further be translated to percentage. A final composite index obtained based on said percentage may be called customer satisfaction index (CSI).
[033] At 214, the method 200 includes predicting, one or more project requirements based on the one or more aspects associated with the deterioration. The one or more aspects associated with the deterioration may be corresponding to a set of resource skills and are derived from project data stored in a project repository of the enterprise. For example, the one or more aspects associated with the deterioration identified based on the customer feedback may be ‘technical skills’. In that case, the one or more project requirements may include recruiting or hiring resources having technical skill matching with that of the project.
[034] At 216, the method 200 includes matching, by a resource allocation engine, the set of resource skills with a plurality of skills stored in a resource repository associated with the enterprise to identify one or more resources possessing the set of resource skills. In an embodiment, the resource allocation engine receives the set of resource skills that may be determined to be required (as per the customer feedback) and the plurality of skills for a plurality of resources prestored in the resource repository. The allocation engine calculates a match percentage between the resource requirements and a plurality of resource skills prestored in the resource repository for a plurality of resources.
[035] In an embodiment, matching the set of resource skills/attributes with the plurality of resource skills/attributes stored in the repository may include, for example, competency score, interest score, past performance score, location, and so on. The competency score may include a skill assessment score obtained from acquiring external certifications, internal certifications score, past education, and so on. The interest score may be based on the inputs received from respective resources with respect to interest areas thereof. The past performance score may be computed based on a feedback score recorded from internal performance. The location¬ may be given weightage based on a matching of the resource location with the requirements of the project. A weightage may be given to each of the aforementioned set of attributes dynamically. The overall score (excluding location) may be called expertise score.
[036] Based on the matching, the plurality of resources may be ranked for each project on the basis of the match percentage. A predetermined number of ranked resources, for example top three ranked resources may be recommended to the project with best match as the first option. In case a resource availability is not feasible, the hiring manager may select the resources from other alternatives.
[037] An example of the method for forecasting resource requirements using customer feedback attributes is described further in the description below.
Example:
[038] An example of a method for forecasting resource requirements using customer feedback attributes is described herein. As a first step, a project feedback data comprising a plurality of feedback comments for a project is obtained from the customer for a first time duration. For example, the project feedback data may be obtained for a period of three months, namely, October 2020, November 2020, and December 2020. The system extracts sentiment attributes for various aspects using an aspect-based sentiment analysis model. For example, for a customer feedback/comment, "Happy with project progress, but lack of follow-up communication", the system extracts sentiment attributes for various aspects using an aspect-based sentiment analysis model. A keyword extraction may result in two aspects, namely, ‘project progress’ and communication. A sentiment analysis of the aforementioned customer comment may tag ‘Progress’ as ‘Neutral’ and ‘Communication’ as negative. The system determines a plurality of customer sentiment scores for the plurality of aspects based on the plurality of sentiment attributes for the first time duration. For example, in the present scenario, the system may determine the customer sentiment scores as given in the table (Table 1) below:
Table 1
Time Customer Feedback Score
Oct-20 M1 97
Nov-20 M2 99
Dec-20 M3 95

[039] The system then predicts a baseline forecast score for a second time duration using a forecasting technique. The second time duration is the time occurring subsequent to the first-time duration. For example, in the present scenario, the second time duration is January 2021. The system predicts the baseline forecast score for the month of January 2021 using a forecasting technique, for example, ARIMA model. In the present example, assuming that the baseline forecast score for January 2021 is determined to be 96.
[040] The system then computes a forecast sentiment score based on a weighted sum of the customer sentiment scores for the first time duration and the baseline forecast score for a second time duration:
[041] = Baseline forecast score for a second time duration + W1* flag1+ W2*flag2 + W3*flag3 +W4*flag4, where W1, W2, W3 and W4 the weightages for external factors, and aspects including, timely deliverables, quality and communication, respectively. In the present example, the aforementioned weightages are assumed to be 3, 2, 4 and 1. It will however be understood that the aforementioned weightages may be configured as per user requirements. Each of the flags flag1, flag2, flag3, and flag4 can either be positive (+1), negative (-1) or neutral (0) for respective attributes associated with a positive sentiment, negative sentiment and a neutral sentiment respectively. Also, the external factors may include a crisis situation such as pandemic, market crash, client’s business not performing well, and so on. For example, in the present example, the baseline forecast score is 96. Hence, the forecast sentiment score is computed as below:
= 96 + ((3*(-1)) + (2*0) + (4*0) + (1*(-1))
= 92
[042] The system then computes a difference between the forecast sentiment score for the second time duration and an actual customer sentiment score for the first time duration. For example, in the present example, the difference may be (92-97 = -5), assuming that the actual customer sentiment score is 97. Herein, since the difference is more than the threshold value of difference it is indicative of deterioration of the project aspects. In the present example, the threshold value (of difference) is assumed to be 5, however, in different applications, the threshold value may assume any value other than 5. In response, the system may trigger prediction of one or more project requirements based on the one or more aspects associated with the deterioration.
[043] FIG. 3 is a block diagram of an exemplary computer system 301 for implementing embodiments consistent with the present disclosure. The computer system 301 may be implemented in alone or in combination of components of the system 302 (FIG. 1). Variations of computer system 301 may be used for implementing the devices included in this disclosure. Computer system 301 may comprise a central processing unit (“CPU” or “hardware processor”) 302. The hardware processor 302 may comprise at least one data processor for executing program components for executing user- or system-generated requests. The processor may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating point units, graphics processing units, digital signal processing units, etc. The processor may include a microprocessor, such as AMD AthlonTM, DuronTM or OpteronTM, ARM’s application, embedded or secure processors, IBM PowerPCTM, Intel’s Core, ItaniumTM, XeonTM, CeleronTM or other line of processors, etc. The processor 302 may be implemented using mainframe, distributed processor, multi-core, parallel, grid, or other architectures. Some embodiments may utilize embedded technologies like application specific integrated circuits (ASICs), digital signal processors (DSPs), Field Programmable Gate Arrays (FPGAs), etc. The processor 302 may be a multi-core multi-threaded processor.
[044] Processor 302 may be disposed in communication with one or more input/output (I/O) devices via I/O interface 303. The I/O interface 303 may employ communication protocols/methods such as, without limitation, audio, analog, digital, monoaural, RCA, stereo, IEEE-1394, serial bus, universal serial bus (USB), infrared, PS/2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (HDMI), RF antennas, S-Video, VGA, IEEE 802.11 a/b/g/n/x, Bluetooth, cellular (e.g., code-division multiple access (CDMA), high-speed packet access (HSPA+), global system for mobile communications (GSM), long-term evolution (LTE), WiMax, or the like), etc.
[045] Using the I/O interface 303, the computer system 301 may communicate with one or more I/O devices. For example, the input device 304 may be an antenna, keyboard, mouse, joystick, (infrared) remote control, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touchpad, trackball, sensor (e.g., accelerometer, light sensor, GPS, gyroscope, proximity sensor, or the like), stylus, scanner, storage device, transceiver, video device/source, visors, etc.
[046] Output device 305 may be a printer, fax machine, video display (e.g., cathode ray tube (CRT), liquid crystal display (LCD), light-emitting diode (LED), plasma, or the like), audio speaker, etc. In some embodiments, a transceiver 306 may be disposed in connection with the processor 302. The transceiver may facilitate various types of wireless transmission or reception. For example, the transceiver may include an antenna operatively connected to a transceiver chip (e.g., Texas Instruments WiLink WL1283, Broadcom BCM4750IUB8, Infineon Technologies X-Gold 618-PMB9800, or the like), providing IEEE 802.11a/b/g/n, Bluetooth, FM, global positioning system (GPS), 2G/3G HSDPA/HSUPA communications, etc.
[047] In some embodiments, the processor 302 may be disposed in communication with a communication network 308 via a network interface 307. The network interface 307 may communicate with the communication network 308. The network interface may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), transmission control protocol/internet protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc. The communication network 308 may include, without limitation, a direct interconnection, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, etc. Using the network interface 307 and the communication network 308, the computer system 301 may communicate with devices 309 and 310. These devices may include, without limitation, personal computer(s), server(s), fax machines, printers, scanners, various mobile devices such as cellular telephones, smartphones (e.g., Apple iPhone, Blackberry, Android-based phones, etc.), tablet computers, eBook readers (Amazon Kindle, Nook, etc.), laptop computers, notebooks, gaming consoles (Microsoft Xbox, Nintendo DS, Sony PlayStation, etc.), or the like. In some embodiments, the computer system 301 may itself embody one or more of these devices.
[048] In some embodiments, the processor 302 may be disposed in communication with one or more memory devices (e.g., RAM 313, ROM 314, etc.) via a storage interface 312. The storage interface may connect to memory devices including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as serial advanced technology attachment (SATA), integrated drive electronics (IDE), IEEE-1394, universal serial bus (USB), fiber channel, small computer systems interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, redundant array of independent discs (RAID), solid-state memory devices, solid-state drives, etc. Variations of memory devices may be used for implementing, for example, any databases utilized in this disclosure.
[049] The memory devices may store a collection of programs or database components, including, without limitation, an operating system 316, user interface application 317, user/application data 318 (e.g., any data variables or data records discussed in this disclosure), etc. The operating system 316 may facilitate resource management and operation of the computer system 301. Examples of operating systems include, without limitation, Apple Macintosh OS X, Unix, Unix-like system distributions (e.g., Berkeley Software Distribution (BSD), FreeBSD, NetBSD, OpenBSD, etc.), Linux distributions (e.g., Red Hat, Ubuntu, Kubuntu, etc.), IBM OS/2, Microsoft Windows (XP, Vista/7/8, etc.), Apple iOS, Google Android, Blackberry OS, or the like. User interface 317 may facilitate display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities. For example, user interfaces may provide computer interaction interface elements on a display system operatively connected to the computer system 301, such as cursors, icons, check boxes, menus, scrollers, windows, widgets, etc. Graphical user interfaces (GUIs) may be employed, including, without limitation, Apple Macintosh operating systems’ Aqua, IBM OS/2, Microsoft Windows (e.g., Aero, Metro, etc.), Unix X-Windows, web interface libraries (e.g., ActiveX, Java, Javascript, AJAX, HTML, Adobe Flash, etc.), or the like.
[050] In some embodiments, computer system 301 may store user/application data 318, such as the data, variables, records, etc. as described in this disclosure. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase. Alternatively, such databases may be implemented using standardized data structures, such as an array, hash, linked list, structured text file (e.g., XML), table, or as hand-oriented databases (e.g., using HandStore, Poet, Zope, etc.). Such databases may be consolidated or distributed, sometimes among various computer systems discussed above. It is to be understood that the structure and operation of any computer or database component may be combined, consolidated, or distributed in any working combination.
[051] Additionally, in some embodiments, (the server, messaging and instructions transmitted or received may emanate from hardware, including operating system, and program code (i.e., application code) residing in a cloud implementation. Further, it should be noted that one or more of the systems and methods provided herein may be suitable for cloud-based implementation. For example, in some embodiments, some or all of the data used in the disclosed methods may be sourced from or stored on any cloud computing platform.
[052] The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language of the claims.
[053] Various embodiments disclosed herein provides method and system for forecasting resource requirements using customer feedback attributes. Current processes of hiring lack a method to forecast uncertainties inherent in business situation of the project. Such an uncertainty may be in form of customer satisfaction or change in customer demand that could impact the requirements of project with respect to hiring of the skills. The disclosed method utilizes the forecasting techniques in combination with aspect based sentiment analysis for forecasting resource requirements.
[054] It is to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein; such computer-readable storage means contain program-code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g. hardware means like e.g. an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software processing components located therein. Thus, the means can include both hardware means and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the embodiments may be implemented on different hardware devices, e.g. using a plurality of CPUs.
[055] The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various components described herein may be implemented in other components or combinations of other components. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
[056] The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope of the disclosed embodiments. Also, the words “comprising,” “having,” “containing,” and “including,” and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise.
[057] Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
[058] It is intended that the disclosure and examples be considered as exemplary only, with a true scope of disclosed embodiments being indicated by the following claims.

Documents

Application Documents

# Name Date
1 202121038903-STATEMENT OF UNDERTAKING (FORM 3) [27-08-2021(online)].pdf 2021-08-27
2 202121038903-REQUEST FOR EXAMINATION (FORM-18) [27-08-2021(online)].pdf 2021-08-27
3 202121038903-FORM 18 [27-08-2021(online)].pdf 2021-08-27
4 202121038903-FORM 1 [27-08-2021(online)].pdf 2021-08-27
5 202121038903-FIGURE OF ABSTRACT [27-08-2021(online)].jpg 2021-08-27
6 202121038903-DRAWINGS [27-08-2021(online)].pdf 2021-08-27
7 202121038903-DECLARATION OF INVENTORSHIP (FORM 5) [27-08-2021(online)].pdf 2021-08-27
8 202121038903-COMPLETE SPECIFICATION [27-08-2021(online)].pdf 2021-08-27
9 202121038903-Proof of Right [01-09-2021(online)].pdf 2021-09-01
10 Abstract1.jpg 2022-03-17
11 202121038903-FORM-26 [08-04-2022(online)].pdf 2022-04-08
12 202121038903-FER.pdf 2023-09-20
13 202121038903-OTHERS [08-02-2024(online)].pdf 2024-02-08
14 202121038903-FER_SER_REPLY [08-02-2024(online)].pdf 2024-02-08
15 202121038903-COMPLETE SPECIFICATION [08-02-2024(online)].pdf 2024-02-08
16 202121038903-CLAIMS [08-02-2024(online)].pdf 2024-02-08
17 202121038903-ABSTRACT [08-02-2024(online)].pdf 2024-02-08
18 202121038903-US(14)-HearingNotice-(HearingDate-04-06-2024).pdf 2024-05-14
19 202121038903-Correspondence to notify the Controller [30-05-2024(online)].pdf 2024-05-30
20 202121038903-FORM-26 [31-05-2024(online)].pdf 2024-05-31
21 202121038903-FORM-26 [31-05-2024(online)]-1.pdf 2024-05-31
22 202121038903-Written submissions and relevant documents [17-06-2024(online)].pdf 2024-06-17
23 202121038903-PatentCertificate24-07-2024.pdf 2024-07-24
24 202121038903-IntimationOfGrant24-07-2024.pdf 2024-07-24

Search Strategy

1 SearchHistory_202121038903E_19-09-2023.pdf

ERegister / Renewals

3rd: 27 Aug 2024

From 27/08/2023 - To 27/08/2024

4th: 27 Aug 2024

From 27/08/2024 - To 27/08/2025

5th: 19 Aug 2025

From 27/08/2025 - To 27/08/2026