230 likes | 370 Views
AskMe A Web-Based FAQ Management Tool. Alex Albu. Background. Fast responses to customer inquiries – key factor in customer satisfaction Costs for customer service are high $5 - $8 per phone call $.25 - $2.75 per email. Alternative Solution.
E N D
AskMeA Web-Based FAQ Management Tool Alex Albu
Background • Fast responses to customer inquiries – key factor in customer satisfaction • Costs for customer service are high • $5 - $8 per phone call • $.25 - $2.75 per email
Alternative Solution • Allow customers to ask their questions online or browse the company’s knowledge base • Result: • Instant, real-time customer service • Reduced workload for the company's customer service representatives
AskMe • Create and manage FAQ knowledge bases • Instantly publish FAQs on the web • Hosted application with a customizable “skin”, matching the client’s website
Architecture Overview Search Engine (C++) Java Application Database Engine
(Quasi) Distributed Architecture • Multiple search servers • Multiple database servers • Multiple web servers (load balancer) • Caching • Pooling
Architecture Details Search Engine RMI JNI Web Server Servlet Engine Search Engine RMI JNI Business Objects Search MUX DB Servlets DB MUX DB
Presentation Layer • MVC pattern • Clear separation of data from presentation • Customized JSP pages for each company
Presentation Layer Business Objects in web server dispatches request Servlet (Controller) returns data sends request builds Page Model (Model) JSP Page (View) displays page is consumed by
Search Engine • Written in C++ • Accessed via JNI • Implements a modified vector-space search algorithm • Builds document collections in file system
Vector-Space Search • Documents represented as vectors of weighted terms Di = (wi1, wi2, …, wit) • Each dimension represents a term in the vocabulary • Goal: compute a similarity coefficient between two documents sim(Di, Dj)
Document Similarity • Weighting method: TF-IDF • The weight of a term in a document is the product of its term-frequency (TF) and the inverse of its document frequency (IDF) • Similarity function:
Vector Construction • Eliminate meaningless words (stop words) • Bring words that occur in different morphological forms to a common root (stemming) • Use a thesaurus to replace synonyms • Perform phrase recognition
Search Engine Architecture Document indexing Document Parser Stopword filter Porter stemmer Synonym library Collection Statistical Analyzer (TF-IDF) Index builder
Search Engine Architecture Document matching Query Parser Stopword filter Porter stemmer Collection Synonym library Ranked documents Statistical Analyzer (TF-IDF) Vector space model
Database Design KB 1 ROOT_ID COMPANY_ID KB_TREE KB_CATEG KB_ITEM 1 1 * KB_CATEG_ID ID ID * ANCESTOR_ID PARENT_ID KB_CATEG_ID 1 DEPTH
KB Creation • Easy knowledge base creation • 2 options • Using the KB editor • Doing bulk imports
KB Editor • HTML-based graphic editor • FAQ and category creation and editing • KB tree editing
KB Import • Clients have to provide • FAQs • Knowledge base structure • XML is the perfect format • Clients can upload their files directly
Import file transformation • Clients want various formats for the import file • XSLT used to convert input files to a standard XML format (DTD) • Import module maps XML DB schema • FAQ content needs to be parsed to ensure it’s valid HTML
File Import Architecture Excel Excel2SAX XML XSLT processor XML DB Import module HTML Tidy
Advantages over static FAQ lists • Easy FAQ creation and publishing by CSRs (no web developer intervention) • Reports, statistics on FAQ usage • Helps understand the most frequent types of questions • Track usefulness of FAQs
Conclusions • AskMe is a great way for websites to improve their customer service • Tool that reduces costs and contributes to customer retention • Easy to deploy, fast results