METHODS AND APPARATUS FOR PROVIDING CUSTOMER SUPPORT
Field of the Invention
The present invention relates generally to methods and apparatus for providing customer support and more specifically to methods and apparatus for generating and providing a self-help form of customer support.
Background of the Invention
The World Wide Web ("web") has exploded to encompass untold millions of web sites. Each such web site is potentially a source of news and information, or a place to purchase goods or services. Unfortunately, each site tends to present a unique interface to the user. Sites have different organizational structures, tools, and resources that a user must learn and understand to use the site effectively, making it difficult and time consuming for a user to find items of interest on the web. The relatively steep learning curve coupled with the constantly changing nature of the web often leads to confusion and frustration on the part of the user.
User frustration and confusion is a major concern for on-line merchants. Indeed, survey data suggests that consumers are likely to abandon an on-line shopping
session when they become confused or frustrated. The source of the confusion or frustration may be, for example, an inability to find an item of interest, an apparently illogical web site organization, or an unfamiliar purchasing procedure. In a real store, employees are generally available to help a customer find an item of interest, provide advice as to differences between similar products, or address some other customer need. However, this is often not true in an on-line setting, wherein a consumer may be fortunate to find a toll-free customer support phone number or e-mail address.
One way to provide a high level of customer support in an on-line setting is through the use of live on-line help sessions. For example, commonly- owned, U.S. patent application Serial No. 09/522,280, filed March 9, 2000, entitled
"METHOD AND APPARATUS FOR PROVIDING CUSTOMER SUPPORT", which is incorporated herein by this reference, describes methods and apparatus for providing live customer assistance using text-based chat or Voice over Internet Protocol ("VoIP"). The system enables a customer to get help from a live person when and were the help is needed.
While the system described in the patent application is effective for providing customer support, such systems can become expensive to implement and operate. Providing live help requires a staff of customer support representatives and the work space, equipment, and other infrastructure needed to support them. Because the number of customer support representatives needed to provided an adequate level of customer support depends on the number of customer requests being handled, reducing the number of requests is an important factor in reducing the cost of providing customer support services.
In addition to cost, there are other considerations in providing effective
customer support. For example, a customer support system should minimizing the time needed for a customer to get the help they need, and should accommodate those customers that would prefer not to use a live help system. In these instances an alternative to live help may provide faster, more effective customer assistance. Therefore, in view of the foregoing, it would be desirable to provide methods and apparatus for providing customer support to the on-line consumer in a cost effective manner.
It would also be desirable to reduce the number of customer support representatives required to provide an adequate level of customer service. In addition, it would be desirable to reduce the number of customer service requests.
Furthermore, it would be desirable to provide an effective alternative to live help forms of customer assistance.
Summary of the Invention It is therefore an object of the present invention to provide methods and apparatus for providing customer support to the on-line consumer in a cost effective manner.
It is also an object of the present invention to reduce the number of customer support representatives required to provide an adequate level of customer service.
In addition, it is an object of the present invention to reduce the number of customer service requests.
It is a further object of the present invention to provide an effective
alternative to live help forms of customer assistance.
These and other objects of the present invention are achieved by a method and system that maintains a questions and answer ("Q/A") database of questions frequently asked by customers. Transcripts of live help sessions are data- mined to extract the frequently asked questions, and appropriate answers are supplied by knowledgeable customer support personnel. The questions and answers are then stored in the Q/A database.
Customers may pose questions to the system in lieu of, or as a prelude to, a live help session. A natural language parsing routine extracts key words and phrases from the customer questions, adds synonyms, and then stems the words to provide a broad query of relevant topics. The resulting query is used to search the Q/A database for a list of relevant questions and answers. The list of questions and answers, are then transmitted to the customer for appropriate display.
In the event, a search of the Q/A database fails to find questions and answers relevant to a customer's question, the customer question is automatically forwarded to a knowledge engineer, who may then formulate an appropriate answer. The question and answer may then be added to the Q/A database.
Brief Description of the Drawings
The above and other objects and advantages of the present invention will be apparent upon consideration of the following detailed description taken in conjunction with the accompanying drawings, in which like characters refer to like parts throughout, and in which:
FIG. 1 is a simplified diagram of an exemplary system in which the
principles of the present invention may prove useful;
FIG. 2 is an exemplary web page that a consumer might reach by following a customer support hypertext link;
FIG. 3 is an exemplary web page showing the results of submitting a question to the Q/A system of the present invention;
FIG. 4 is an exemplary web page and pop up window showing a more complete answer to a common question;
FIG. 5 is a simplified diagram of the system of the present invention;
FIG. 6 is an illustrative user interface for a question and answer editor in accordance with the principles of the present invention;
FIGS. 7A-B are exemplary database schemas suitable for implementing the present invention;
FIG. 8 is another exemplary database schema for implementing another aspect of the present invention; and FIG. 9 is an exemplary flow chart of how a customer questions is processed.
Detailed Description of the Invention
A simplified schematic representation of the Internet is shown in FIG. 1, including user computers 17a and 17b, and web servers 18a and 18b. Web site operators, e.g., on-line merchants, publish content in the form of web pages that may include text and references to program routines, such as applets and scripts, or to multimedia content, such as audio and video clips, as well as links to other web pages. Typically, web pages are text files encoded using the HyperText Markup Language
("HTML") and stored on one or more servers, such as web servers (18a and 18b) connected to Internet 16.
Customers use web browser software on computers, such as personal computer ("PC") 17a or Macintosh™ computer 17b, which are coupled to Internet 16. The web browser software uses the HyperText Transport Protocol (HTTP) to retrieve content from web servers 18a and 18b and then format and reproduce the content for the user. For example, text and graphics images may be displayed on a monitor attached to computer 17a or 17b, whereas audio files may be reproduced by speakers (not shown) attached to sound processing hardware in computer 17a or 17b. It should be noted that the invention herein is described in the context of specific protocols and languages, e.g., HTTP and HTML; however, the skilled artisan will understand that other forms of encoding and delivering content may be used to expand the types of machines that may be used to access and reproduce web based content. So that a user may use, for example, a cellular telephone to access web content using the Wireless Markup Language (WML) and the Wireless Access
Protocol (WAP). The extensible Markup Language (XML) is another form for encoding content.
In accordance with the principles of the present invention, a web site operator includes on a web page a link to a web page devoted to customer service issues. Selecting the customer service link causes a user's web browser software to retrieve and display customer service page 20 of FIG. 2. From customer service page 20, a customer may select from several forms of assistance
For example, customer service page 20 includes button 21 having a "live help" link to customer service server 15 of FIG. 1. As described in the
aforementioned patent application Serial No. 09/522,280, activating button 21 may cause one or more Java™ applets to be retrieved that create a text based chat dialog between the customer and one of customer support representatives 12a-12e. The chat dialog enables a customer at computer 17a or 17b to pose a questions and otherwise communicate in real time with a customer service representative at one of workstations 12a-d connected to Internet 16. Customer support services may be provided by a web site operator, or may be out-sourced to a third party customer support service provider.
A customer support service provider typically has the resources and infrastructure to provide customer support services. These resources may include trained customer service representatives and as well as various databases of customer service data and information. Whereas the infrastructure may include items such as customer service server 15, workstations 12a-d, and database server 13. The customer support service provider may then use the resources and infrastructure to provide customer services to multiple clients.
In an out-sourced customer service environment, "client" refers to the clients of the customer service provider, whereas "customer," "consumer," or "user" refers to individuals accessing the web site of a client. That is web site owners or operators that obtain customer service from the customer service provider are clients, and someone accessing a clients web site is a customer. As described herein, a preferred embodiment of the present invention includes support for its use in an outsourced customer support environment. For example, the database tables shown and described herein include fields for identifying specific clients. One skilled in the art will appreciate, however, that the present invention need not be used in such a multi-client
environment.
In addition to live chat sessions, alternative methods may also be used to provide customer support. For example, system 10 of FIG. 1 may provide support for using electronic mail, computer telephony, video conferencing, Voice over IP, streaming media, and other technologies. Telephone based support may be provided by a connection between telephone equipment, e.g., PBX 19, and customer support server 15, whereby incoming customer support calls may be handled by customer service representatives at workstations 12a-d.
Implementing a system such as system 10 of FIG. 1 can be relatively expensive in terms of the technologies, personnel, infrastructure, and overhead required. A significant cost is related to employing the customer service personnel The number of personnel, and the associated expense, is largely dependent on the number of service requests received. A large number of customer service personnel are required to service a high volume of customer service requests in a reasonable amount of time. Because personnel costs are a significant expense, it is desirable to reduce the number of customer support personnel while maintaining high levels of service. This can best be accomplished by reducing the number of customer service requests.
Because many customer service questions relate to the same or similar topics, there is an opportunity to reduce the number of customer service requests and thereby reduce customer care costs, by letting customers engage in a self-help session as a first step in receiving customer assistance. For example, a web site may provide one or more documents containing frequently asked questions and corresponding answers, which a user is able to browse to determine whether their particular question
has been previously addressed. As long as the documents, known as FAQs, are relatively short, or well indexed, this type of self-help may be acceptable. However, browsing a lengthy list is too burdensome and unacceptable for the typical consumer. Alternatively, a web site may offer a searchable database of common questions and there answers. A user may submit a question, or a list of keywords, which is used to search the database and a list of questions and answers containing the keywords is then returned to the user.
While such Q/A systems are useful, they are often created based on a list of generic questions. They are typically difficult and time consuming to maintain, are updated infrequently, and, as a result, contain static and stale information. This can be a drawback, for example, when a new product comes on the market Increased sales likely lead to increased customer service requests to answer questions such "can I buy the item from your web site?", "when will I get it?", or "how long until the back orders are filled." In accordance with the principles of the present invention these issues are addressed by a dynamic Q/A system in which customer questions and their corresponding answers are updated frequently in response to changing customer demands. A self-help session is initiated from web page 20 of FIG. 2 when a customer types a question into text box 22 and activates button 23. The question is submitted to customer service server 15 of FIG. 1, where it is processed to form an expanded database query which is applied to a database of frequently asked questions. The results of the query are formatted and returned to the user for review, as shown, for example, by web page 30 of FIG. 3, which includes results 31 of a database search obtained from running a query derived from the contents of text box 22 against the
Q/A database. Preferably, the query results are displayed in an abbreviated format so that several results may be shown to the user, with a link to a more complete description. The user may then scroll through the query results to find the most appropriate question. Selecting truncated answer 32a brings up window 42 providing the complete question and answer as shown in FIG. 4.
Referring now to FIG. 5, dynamic Q/A system 50 includes two main components: a Q/A engine and a transcript mining tool. When customer 52 initiates a live help session with customer service representative 53, a transcript of the session may be recorded, for example, in database 54. Q/A editor 55, also referred to as a knowledge engineer, then uses the transcript mining tool, running on computer 53, to extract information from the recorded transcripts to create and update questions for Q/A database 57.
An exemplary transcript mining tool session is shown in FIG. 6. Q/A editor 55 uses transcript mining tool 60 to load transcripts of help sessions into review window 61 for review. List boxes 62 and 63 are provided, respectively, for selecting a client whose transcripts are to be reviewed and a category to which the question and answer belong. Client information is needed in an environment wherein a single customer support service provider has multiple clients. Category information may be used to provide context for customer questions. Buttons 64 are provided for navigating to other transcripts associated with the selected client. Other navigation controls, such as tree diagrams and the like, may be used in stead of, or in addition to buttons 64.
In one embodiment of the present invention, Q/A editor 55, upon reviewing a transcript, enters a question in text box 65 that is representative of the
user's question in the transcript. For example, in FIG. 6, the customer is inquiring about the cost of shipping an item by express delivery, and the Q/A editor has entered that question into text box 65. In a preferred embodiment of the invention, the transcript mining tool analyzes the transcript to identify likely questions, based on punctuation, such as "?", and words, such as "when" or "where."
After entering the questions, the Q/A editor provides a corresponding answer in text box 66. Key words describing the question and/or answer may be entered in text box 67, or may be automatically determined by the system in response to selecting button 68. The questions, answers, and key words are then be added to the Q/A database by selecting buttons 69. This procedure may be performed on existing session transcripts when first creating the Q/A database, and then repeated on a frequent basis to extract common questions from many transcripts of actual customer service sessions. In addition, customer questions for which a database search produces few or no relevant questions and answers may be automatically forwarded to a Q/A editor so that it may be added to the Q/A database. A analogous mechanism is used to purge or update old and stale questions and answers.
The Q/A database includes information about common questions posed by customers and the answers to those questions. An exemplary database schema is shown in FIGS. 7A-E. Looking first to FIG. 7 A, question table 71 provides entries for each question in the Q/A database and includes fields for the question ID, the text of the question, the question's rating, and the question category. Answer table 72 provides a list of answers to commonly asked questions and includes an answer ID and the actual text of the answer. Q/A map table 73 maps questions to their corresponding answers using the question and answer ID's. Q/A map table 73 may also include
additional information such as the client ID, the source and status of the answer, the identity of the transcript from which the question originated, and the name of the Q/A editor, as well as the date the Q/A database entry was created and the language of the question and answer. Such information is useful, for example, when the answer to a question depends on the client or when the client has a multilingual customer base.
Keyword table 74 provides a list of keywords associated with each question and is linked to question table 71 by the question ID field. Category table 75 provides a mechanism for classifying and organizing questions in the Q/A database.
Additional database tables are shown in FIG. 7B, including phrase table 76, noise word table 77, and client table 78. Phrase table 76 provides a number of phrases that are to be recognized by Q/A engine 58 of FIG. 5 as described below. The phrases are linked to individual clients because the phrases to be recognized may differ depending on the subject matter of the client web sites. Similarly, noise word table 77 provides a list of client specified noise words, that is words that are not significant or relevant to the customer's site. Although not shown in FIG. 7B, global phrase and noise word tables are also provided. Client table 78 provides basic information about the client, such as their address, phone number, and web site address.
To improve the selection of answers from the Q/A database, it is advantageous to know which answer a customer selected when a number of related questions and answers are shown to the customer as in browser window 33 of FIG. 3.
This information is maintained in database tables linking the question asked by the customer with the answer selected by the customer. Questions asked table 80 includes the text of the question, the date and time it was asked, and an identification of the question and the client. Analogously, answer picked table 81 provides the text of the
answer and other similar information. The questions and answers are linked by Q/A match table 81. The information provided by these tables may be used to gather feedback about the effectiveness of the Q/A system and to update the questions and answers contained therein.
The processing of a customer question is described in conjunction with FIG 9 and Listings 1-5. As an example, assume that customer 32 entered the question "What is the goal, of crm implementation?" into text box 24 of FIG. 2 and submitted it to Q/A engine 38 by selecting button 26. At step 91 of FIG. 9, the question is preprocessed to put it into a form suitable for further processing. This may entail
Preprocess: what is the goal of crm implementation
Listing 1
removing punctuation, extra spaces or tabs, and converting the text to all lower case letters. As an example, the result of preprocessing the hypothetical question posed above is shown in Listing 1.
The question is then searched for client specified phrases, abbreviations, and specialized terms. The use of phrases enables the Q/A engine to respond to questions more accurately. For example, the abbreviation "crm" in the example question as well as the phrase "crm implementation" may have special significance in the context of the client web site. Then at step 93, client specified noise words are removed from the text of the question. This step removes words such as
Remove noise words: goal crm implementation
Listing 2
'and', 'the', 'a' and the like which have little or no significance in analyzing the question. The ability to specify noise words provides flexibility in adapting the Q/A engine to the needs of individual clients. As shown in Listing 2, the words "what," "is," "the," and "of have been removed from Listing 1 for being noise words.
Add synonyms: aim, approach, choice, endeavor, expectation, aid, facilitation, implementation, intermediate, agenda, ambition, calculation, consideration, agency, expediency, go-between, instrumentality, intervention, . . .
Listing 3
After removal of noise words, the remaining words are processed at step 94 to find synonyms, which are added to the list of significant words found in the question. For example, synonyms of "goal" include "aim", "approach", "choice", "endeavor", and "expectation," among others. Adding synonyms to the list of key words broadens search of Q/A database 57 by Q/A engine 58 to account for the many ways in which a question may be posed by a customer. For example, a customer may ask how to start an account instead of how to open an account. Listing 3 shows the words in Listing 2 with the addition of synonyms.
Stem words: aim, approach, choice, endeavor, expect, aid, facilitat, implement, intermediate, agenda, ambition, calculat, consider, agency, expediency, go-between, instrument, intervention, . . .
Listing 4
Because words take on many different forms depending on whether they are singular or plural, denote possession, or tense, the key words are stemmed at step 95. For example, "ation" may be removed from key words "expectation" and
"implementation" in Listing 3. The results of stemming are shown in Listing 4.
A query is then formed from the key words and submitted to the Q/A database. A sample SQL query corresponding to the example question is shown in
"SELECT Count(QAMAP.QUESTIONID), QAMAP.QUESTIONID, QUESTION.QUESTION, QAMAP.FAQID FROM (((QAMAP INNER JOIN QUESTION ON QAMAP.QUESTIONID = QUESTION.QUESTIOMD) INNER JOIN ANSWER ON QAMAP.ANSWERID = ANSWER.ANSWERID) INNER JOIN KEYWORDINDEX ON QUESTION.QUESTIOMD = KEYWORDINDEX.QUESTIONID) INNER JOIN tblCLIENT ON QAMAP.CLIENTID = tblCLIENT. CLIENTID WHERE (((KEYWORD .KEYWORD) LIKE 'goal%' OR (KEYWORD.KEYWORD) LIKE 'crm%' OR KEYWORD. KEYWORD LIKE 'implement%' OR KEYWORD. KEYWORD=' aim' OR KEYWORD.KEYWORD='approach' OR KEYWORD.KEYWORD=' choice' O . . . ) AND ((tblCLJBNT.CLIENTID) = T)) GROUP BY QAMAP.FAQID, QAMAP.QUESTIONID, QUESTION.QUESTION ORDER BY Count(QAMAP.QUESTIONID) DESC"
Listing 5
Listing 5. The query retrieves questions ID's, questions, and FAQ ID's from those questions or answers that include one or more of the keywords, e.g., 'goal', 'crm', 'implement,' 'aim,' 'approach,' 'choice,' or other word from Listing 4. A count is also made of the number of times each particular question has been accessed, which is used to sort the list of questions. This has the effect of ranking the returned questions and answers in a rough estimate of their importance.
The results returned by the database search are then formatted for display to the customer. In one embodiment of the present invention, the results are processed to include suitable HTML markup so that the results are displayed as a web page in the customer's web browser. As its use becomes more widespread, it is anticipated that XML may be used instead of HTML. To provide the user with as many questions and answers as practical, the text of the questions and or answers may be abbreviated or truncated so that more questions will fit on a display screen. For example, as shown in FIG. 3, the three answers shown are truncated so that they fit on a single display line. Although only answers have been truncated in FIG. 3, one skilled in the art will appreciate that the same formatting may be applied to the questions.
When questions or answers are truncated, a hyperlink is provided to the full text of the question or answer. Selecting the hyperlink may open a new window to display the full text as shown in FIG. 4, or may load a page containing the full text into the already open browser window. A control may also be provided to display additional pages of questions and answers.
While preferred illustrative embodiments of the present invention are described above, it will be evident to one skilled in the art that various changes and modifications may be made without departing from the invention. It is intended in the appended claims to cover all such changes and modifications which fall within the true spirit and scope of the invention.