Prototyping a Chatbot for Student Supervision in a...

10
CommIT (Communication & Information Technology) Journal 12(2), 8796, 2018 Prototyping a Chatbot for Student Supervision in a Pre-registration Process Lucia Dwi Krisnawati 1 , Bill Edward Butar-Butar 2 , and Gloria Virginia 3 1-3 Information Technology Department, Duta Wacana Christian University Yogyakarta 55224, Indonesia Email: 1 [email protected], 2 [email protected], 3 [email protected] Abstract—Developing a chatbot becomes a challenging task when it is built from scratch and independent of any Software as a Service (SaaS). Inspired by the idea of freeing lecturers from the burden of answering the same questions repetitively during the pre-registration process, this research has succeeded in building a text- based chatbot system. Further, this research has proved that the combination of keyword spotting technique for the Language Understanding component, Finite-State Transducer (FST) for the Dialogue Management, rule- based keyword matching for language generation, and the system-in-the-loop paradigm for system validation can produce an efficient chatbot. The chatbot efficiency is high enough as its score on Concept Efficiency (CE) reaches 0.946. It shows that users do not need to repeat their utterances several times to be understood. The chatbot performance on recognizing new concepts introduced by users is also more than satisfactory which is presented by its Query Density (QD) score of 0.80. Index Terms—Chatbots, Dialogue System, Keyword- spotting technique, Transducer I. I NTRODUCTION C HATBOTS, also known as conversational agents or chatterbots, are computer applications that imitate human personality [1]. It also enables online human-computer dialog with natural language [2]. Re- cently, chatbots have become popular and attracted the interest of many researchers, companies, and users. This is proven by the fact that by September 2016, Facebook messenger had hosted 30.000 bots and had 34.000 developers on its platform [3]. Meanwhile, Jemma, a chatbot released by kata.ai for Unilever Company, has sent 50 Mio messages and got 17 Mio friends in less than one year period [4]. At least three factors trigger the rise of chatbots. First, their ability to interact intelligently with humans has improved signif- icantly [5]. Second, it is the advancement of hardware technologies and artificial intelligence supports. Third, Received: Jun. 11, 2018; received in revised form: Jul. 24, 2018; accepted: Jul. 25, 2018; available online: Dec. 5, 2018. it characterizes the era in which there are plenty of ac- cessible open source codes. The development platforms are also available widely, and chatbots implementation options are available through Software as a Service (SaaS) [6] such as Amazon Lex. These factors make chatbots are now easier to train and implement. Although chatbots gain popularity in recent years, their existence can be traced back since 1966 when Weizenbaum introduced ELIZA which was pro- grammed to act as a Rogerian therapist. ELIZA was able to fool users into believing that they were con- versing with a real human [7]. Another notable chat- bot is Artificial Linguistic Internet Computer Entity (A.L.I.C.E) which was written in 1995 using AIML (an XML-based markup language). The modern chatbots have a wide range of functions, the degree of intelli- gence and modalities, whether they are text-based or voice-based conversational agents. Both text-based and voice-based chatbots are one category of Conversational Agents which are not em- bodied in the forms of animal, avatars, or human robots [6]. The one which devises computer-generated cartoonlike characters is categorized as Embodied Con- versational Agents [8]. The Conversational Agents fall into a class of Dialogue System which has been subject to research for decades. There is another class of Dialogue System which is not categorized as Con- versational Agents such as Interactive Voice Response (IVR). The exclusion of IVR from the conversational agents is caused by its modality of interaction which uses phone keypads (“press 1 to choose xxx.”) instead of utterances. Reference [8] also constructed the taxon- omy of Dialogue System which can be seen in Fig. 1. As a class of Dialogue System (DS), chatbots sim- ulate a conversation in its primary sense, intend to fool users with whom they are communicating [9]. In response to robustness, pattern matching techniques are commonly used to provide a certain level of control over system [2, 9]. In Contrast, DSs attempt to model the actual dialogue process which incorporates the In Press

Transcript of Prototyping a Chatbot for Student Supervision in a...

Page 1: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

CommIT (Communication & Information Technology) Journal 12(2), 87–96, 2018

Prototyping a Chatbot for StudentSupervision in a Pre-registration Process

Lucia Dwi Krisnawati1, Bill Edward Butar-Butar2, and Gloria Virginia31−3Information Technology Department, Duta Wacana Christian University

Yogyakarta 55224, IndonesiaEmail: [email protected], [email protected],

[email protected]

Abstract—Developing a chatbot becomes a challengingtask when it is built from scratch and independent ofany Software as a Service (SaaS). Inspired by the ideaof freeing lecturers from the burden of answering thesame questions repetitively during the pre-registrationprocess, this research has succeeded in building a text-based chatbot system. Further, this research has provedthat the combination of keyword spotting technique forthe Language Understanding component, Finite-StateTransducer (FST) for the Dialogue Management, rule-based keyword matching for language generation, andthe system-in-the-loop paradigm for system validationcan produce an efficient chatbot. The chatbot efficiencyis high enough as its score on Concept Efficiency (CE)reaches 0.946. It shows that users do not need torepeat their utterances several times to be understood.The chatbot performance on recognizing new conceptsintroduced by users is also more than satisfactory whichis presented by its Query Density (QD) score of 0.80.

Index Terms—Chatbots, Dialogue System, Keyword-spotting technique, Transducer

I. INTRODUCTION

CHATBOTS, also known as conversational agentsor chatterbots, are computer applications that

imitate human personality [1]. It also enables onlinehuman-computer dialog with natural language [2]. Re-cently, chatbots have become popular and attracted theinterest of many researchers, companies, and users.This is proven by the fact that by September 2016,Facebook messenger had hosted 30.000 bots and had34.000 developers on its platform [3]. Meanwhile,Jemma, a chatbot released by kata.ai for UnileverCompany, has sent 50 Mio messages and got 17 Miofriends in less than one year period [4]. At least threefactors trigger the rise of chatbots. First, their ability tointeract intelligently with humans has improved signif-icantly [5]. Second, it is the advancement of hardwaretechnologies and artificial intelligence supports. Third,

Received: Jun. 11, 2018; received in revised form: Jul. 24, 2018;accepted: Jul. 25, 2018; available online: Dec. 5, 2018.

it characterizes the era in which there are plenty of ac-cessible open source codes. The development platformsare also available widely, and chatbots implementationoptions are available through Software as a Service(SaaS) [6] such as Amazon Lex. These factors makechatbots are now easier to train and implement.

Although chatbots gain popularity in recent years,their existence can be traced back since 1966 whenWeizenbaum introduced ELIZA which was pro-grammed to act as a Rogerian therapist. ELIZA wasable to fool users into believing that they were con-versing with a real human [7]. Another notable chat-bot is Artificial Linguistic Internet Computer Entity(A.L.I.C.E) which was written in 1995 using AIML (anXML-based markup language). The modern chatbotshave a wide range of functions, the degree of intelli-gence and modalities, whether they are text-based orvoice-based conversational agents.

Both text-based and voice-based chatbots are onecategory of Conversational Agents which are not em-bodied in the forms of animal, avatars, or humanrobots [6]. The one which devises computer-generatedcartoonlike characters is categorized as Embodied Con-versational Agents [8]. The Conversational Agents fallinto a class of Dialogue System which has been subjectto research for decades. There is another class ofDialogue System which is not categorized as Con-versational Agents such as Interactive Voice Response(IVR). The exclusion of IVR from the conversationalagents is caused by its modality of interaction whichuses phone keypads (“press 1 to choose xxx.”) insteadof utterances. Reference [8] also constructed the taxon-omy of Dialogue System which can be seen in Fig. 1.

As a class of Dialogue System (DS), chatbots sim-ulate a conversation in its primary sense, intend tofool users with whom they are communicating [9]. Inresponse to robustness, pattern matching techniques arecommonly used to provide a certain level of controlover system [2, 9]. In Contrast, DSs attempt to modelthe actual dialogue process which incorporates the

In Pres

s

Page 2: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

billing.

Figure 1. The class hierarchy of dialogue systems [8]

II. LITERATURE REVIEW

A literary survey on chatbot by Ref. [10] has concluded that

the techniques of chatbot designs are still a matter of debate

due to its varied approaches. However, it is inferred that the

basic architecture of a chatbot follows its parent, Dialogue

System. It comprises three main components. Those are a

natural language understanding (NLU), a dialogue manager

(DM), and a natural language generation (NLG) [5]. NLU

processes raw user inputs and extracts information into a

semantic representation that can be interpreted by DM [11] to

update the internal states, send queries to the database, or find

actions based on scripts [5]. Some methods and approaches

commonly applied to NLU are semantic formats which

represent an utterance in key-value pairs [1], [12], or a

template matching between user input and pre-defined

utterances [13]. A more flexible matching approach takes a

form of keyword matching [14], or Data-Driven Approach

which requires a large corpus of interactions and utterances as

found by Ref. [5].

The primary task of Dialogue Manager is to interpret

semantic representation outputted by NLU in the context of

dialogue to decide the actions. The various methods applied in

building Dialogue Manager can be categorized into three

approaches: the finite-state, frame-based, and statistical

approaches [11]. The finite-state approaches tend to lead a

deterministic dialogue flow and have a single-initiative

dialogue, in which system or user takes the dialogue control.

The implementation of AIML-based chatbots as in [12], [13],

[15] are mostly deterministic and single-initiative. Hence, they

are claimed to fall into the category of finite-state approaches.

The frame-based system works with a frame consisting of

slots. The dialogue flow is not pre-defined as in finite-state

system. Thus, it enables users to exchange initiative or control

over the conversation with the system or a mixed-initiative

dialogue [8]. Based on frame-based Dialogue Manager,

Krisnawati in [14] successfully elaborated the capabilities of

her mixed-initiative Dialogue System into performing a real

subtask action such as dialing the extension number of certain

staff demanded by the user in the dialogue. Meanwhile, Ref.

[16] combined the mixed-initiative dialogue with a

knowledge-based Dialogue Manager which kept track of the

current state of the conversation.

The NLG acts inversely to NLU. It is responsible for

presenting responses generated by the Dialogue Manager to

users. In the latest systems applying statistical and machine

learning approach, the tasks of NLU, DM, and NLG are

performed by a single function. For example, Ref. [5] devised

a single deep network to merge the task of three components.

Meanwhile, Ref. [17] applied Maximum Entropy and Gibbs

Distribution to represent and select the user-system sequence

pair of dialogues. The IBM researchers propose a futuristic DS

using a new dialog programming model based on grammars

[18]. They argued that grammar, which was a successful

formalism of imposing a structure over sequences of

conversation, could solve the human-computer dialogue

problems.

So far, text-based or voice-based chatbots function as a

Question-Answering agent whose task is to retrieve the

information needed by users and end the dialogue after the

answer is delivered. This can be found in Apple’s Siri, Google

Now apps, or in [15]. In contrast, the Information Retrieval-

based DS has more complicated dialogues with users such as

in [1] which delivered queries on book search and library

services, or in [11] which reserved a movie ticket. A chit-chat

with no specific topic for achieving fun and user entertainment

can be done by both chatbots and DS as found in [13]. Other

functions taken over by DS is a healthcare coach and advisor

for retired troops [16], customer service of a company such as

Vodafone [5], technical assistant and troubleshooter in using

computer devices [17], and online shop-assistant [19].

III. METHODS

In the absence of a conversation corpus, implementing a

chatbot with a domain-specific dialogue is much more

controllable than a chit-chat one. Based on this argument, the

researchers construct a text-based chatbot. It focuses on

coping with two topics of pre-registration process such as the

maximum credits for a student who is eligible to enroll, and

the subjects offered. These topics are chosen to comply with

the research objective. It is to relieve the supervisors from

answering the same repetitive questions. Moreover, those

topics fall under the most frequently asked questions among

students.

Another research objective is to construct a chatbot that is

free from SaaS. For this reason, the researchers apply a set of

simple but applicable methods in each module of chatbot

implementation and provide possibilities to upgrade their

capabilities. The basic architecture of the chatbot in Fig. 2

follows the general architecture of DS. The following

subsections describe the applied methods in detail.

A. Data Collection

One of the problems in developing a chatbot system is how

to model the human-machine dialogue flow. This implies that

modeling a dialogue flow of a chatbot needs data taking the

form of conversations. To collect such data, the researchers

need a system prototype in which users can communicate.

Fig. 1. The class hierarchy of dialogue systems [8].

task of analyzing and understanding input. DSs makeuse of refined technologies and approaches includingthe integration of knowledge, ontologies, and the useof methods originating from Computational Linguis-tics [9].

This research focuses on implementing a text-basedchatbot for student supervision in a pre-registrationprocess. The goal is to free the academic supervisorsfrom the burden of answering the same repetitivequestions from different students. The chatbot devisesa Keyword-Spotting technique to understand the userinputs and Finite-State Transducer (FST) for manag-ing the dialogue run. To gain mutual understandingbetween users and our chatbot, its Dialogue Manager(DM)r component is completed with event handlingand verification process. It is built from scratch andcan be run from the local server. Thus, the chatbot isindependent of pay-per-user as a SaaS pricing strategyor other software license billing.

II. LITERATURE REVIEW

A literary survey on chatbot by Ref. [10] has con-cluded that the techniques of chatbot designs are still amatter of debate due to its varied approaches. However,it is inferred that the basic architecture of a chatbotfollows its parent, Dialogue System. It comprises threemain components. Those are a natural language under-standing (NLU),DM, and a natural language generation(NLG) [5]. NLU processes raw user inputs and extractsinformation into a semantic representation that canbe interpreted by DM [11] to update the internalstates, send queries to the database, or find actionsbased on scripts [5]. Some methods and approachescommonly applied to NLU are semantic formats whichrepresent an utterance in key-value pairs [1, 12], or atemplate matching between user input and pre-definedutterances [13]. A more flexible matching approachtakes a form of keyword matching [14], or Data-DrivenApproach which requires a large corpus of interactionsand utterances as found by Ref. [5].

The primary task of DM is to interpret semanticrepresentation outputted by NLU in the context ofdialogue to decide the actions. The various methodsapplied in building DM can be categorized into threeapproaches: the finite-state, frame-based, and statisticalapproaches [11]. The finite-state approaches tend tolead a deterministic dialogue flow and have a single-initiative dialogue, in which system or user takes thedialogue control. The implementation of AIML-basedchatbots as in [12, 13, 15] are mostly deterministicand single-initiative. Hence, they are claimed to fallinto the category of finite-state approaches.

The frame-based system works with a frame con-sisting of slots. The dialogue flow is not pre-definedas in finite-state system. Thus, it enables users toexchange initiative or control over the conversationwith the system or a mixed-initiative dialogue [8].Based on frame-based DM, Krisnawati in [14] success-fully elaborated the capabilities of her mixed-initiativeDialogue System into performing a real subtask actionsuch as dialing the extension number of certain staffdemanded by the user in the dialogue. Meanwhile,Ref. [16] combined the mixed-initiative dialogue witha knowledge-based DM which kept track of the currentstate of the conversation.

The NLG acts inversely to NLU. It is responsiblefor presenting responses generated by the DM to users.In the latest systems applying statistical and machinelearning approach, the tasks of NLU, DM, and NLGare performed by a single function. For example,Ref. [5] devised a single deep network to mergethe task of three components. Meanwhile, Ref. [17]applied Maximum Entropy and Gibbs Distribution torepresent and select the user-system sequence pair ofdialogues. The IBM researchers propose a futuristicDS using a new dialog programming model based ongrammars [18]. They argued that grammar, which wasa successful formalism of imposing a structure oversequences of conversation, could solve the human-computer dialogue problems.

So far, text-based or voice-based chatbots functionas a Question-Answering agent whose task is to re-trieve the information needed by users and end thedialogue after the answer is delivered. This can befound in Apple’s Siri, Google Now apps, or in [15].In contrast, the Information Retrieval-based DS hasmore complicated dialogues with users such as in [1]which delivered queries on book search and libraryservices, or in [11] which reserved a movie ticket. Achit-chat with no specific topic for achieving fun anduser entertainment can be done by both chatbots andDS as found in Ref. [13]. Other functions taken overby DS is a healthcare coach and advisor for retiredtroops [16], customer service of a company such as

88

In Pres

s

Page 3: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

This becomes a chicken and egg problem.

Figure 2 The basic architecture of the chatbot

To break the cycle of this chicken-egg problem, the

researchers firstly observe how students usually pose

questions to their academic supervisor. Then, the question-

answer formulations are sampled from a handful of IT

students by asking them to playact the conversation. The

results are some topics of pre-registration questions. The

researchers pick up two categories which are most frequently

asked. Those are the number of credits ‘Satuan Kredit

Semester’ (SKS) and the offered subjects. Based on this

restricted data, the researchers design a chatbot with

insufficient natural language capability and dialogue flows.

This chatbot is used to collect data through “system-in-the-

loop” paradigm.

System-in-the-loop, which was introduced by Ref. [20], is a

wizardless and iterative procedure for collecting data using the

developing system prototype. The researchers apply this data

collection paradigm in two iterations, each with ten different

users. Most users are students, but there are two lecturers

involved in this process. For data gathering, a task scenario

consisting of guidance on doing the given tasks is prepared.

Besides, Camtasia (a screen recording software) is installed to

record and capture any user movement on the screen such as

what they type, and how they converse with the chatbot. After

interaction with the pre-alpha chatbot, users are interviewed to

give feedback on the interface design, dialogue navigation,

and the system capability in dealing with the dialogue.

Nine out of ten users in the first session suggest dialogue

navigation that enables moving backward to the nodes leading

to the former topic of conversation. The resulting data are used

to improve the system navigation which is completed with

verification. Moreover, the unrecognized user inputs in this

session are used for enriching the vocabulary of the natural

language understanding component as synonyms for the

defined keywords.

Using the same procedure but improved task scenario, the

refined chatbot is run for the second test for ten different

students from the first test. In this session, the users’

feedbacks on system improvement become more specific and

focused. For example, the backward navigation in a node of

compulsory subjects needs improvement. It is due to its being

error-prone. Moreover, the system should also understand the

writing variations of keywords, the abbreviations of subject

names, and the use of Arabic numbers as an alternative for

stating numbers. Most feedbacks in this session are from both

interview and user interaction with the chatbot and deal with

the improvement on NLU and DM component. Only three

users suggest the improvement of the interface design.

B. Keyword Spotting Technique

Processing and understanding user input are the tasks of

language understanding component of a chatbot. Most

currently built chatbots accept user inputs in the form of

sentences instead of phrases and word sequences. There is

much variety of methods to understand these sentences. Some

systems treat the whole user input sentence as a template to be

matched. In Ref. [13], a pair of user-system utterances are

predefined in AIML format and saved in a database. Thus, to

understand user input of “Apa kabar?”, the system computes

the bigram similarity of this string to all defined templates in

the database (apa kabar, siapa nama kamu, and others), and

retrieves the answer of the template whose similarity score is

the highest.

Instead of treating the whole user input as a template to

match, this research resorts to keyword and phrase spotting

method. In this method, the system needs to identify the

keywords and pattern match those keywords against a set of

pre-programmed rules to generate the appropriate responses.

Thus, NLU component does not need to analyze an utterance

fully. The advantages of this technique are that the chatbot

system recognizes all utterance variations as long as they

contain the keywords, and users get a positive impression on

the system intelligence. The order of keyword occurrences is

also ignored. Table 1 shows the variations of recognized user

inputs by the chatbot.

TABLE 1 The Examples of Recognized User Input Variations in the Chatbot’s Log.

Variation of users’ utterances for one query Recognized

keywords

Berapakah SKS yang bisa saya ambil? (how many credits that I can take?)

SKS, ambil (credit,

take)

Berapakah syarat pengambilan SKS maksimal tiap semester? (What is the maximum taken

credit of each semester?)

ambil, SKS (take,

credit)

berapa batas pengambilan SKS di semester ini? (what is the limit of taking credit in this

semester?)

ambil, SKS (take,

credit)

Jumlah SKS untuk IPK 2.9 (Number of credits for GPA 2.9)

SKS (credit)

Tolong tampilkan syarat pengambilan SKS

(Please show credit taking requirements)

ambil, SKS (take,

credit)

In its implementation, at least one keyword is defined for

each step of dialogue. The variation of these keywords are

saved in an array and formulated as a pattern using Regular

Expression to match. In total, there are 23 sets of keywords

with a minimal set cardinality of 2 keyword variations and

maximal cardinality of 12 variations for the keyword ‘terima

kasih’ (thank you). Keywords taking the form of phrases are

treated as separate tokens and defined only in their root word

forms. As its consequence, the order of keywords in their

occurrences and affixation will not affect the recognition.

C. Dialogue Strategies

The dialogue flow of the chatbot is managed by an

Fig. 2. The basic architecture of the chatbot.

Vodafone [5], technical assistant and troubleshooterin using computer devices [17], and online shop-assistant [19].

III. RESEARCH METHOD

In the absence of a conversation corpus, imple-menting a chatbot with a domain-specific dialogue ismuch more controllable than a chit-chat one. Based onthis argument, the researchers construct a text-basedchatbot. It focuses on coping with two topics of pre-registration process such as the maximum credits fora student who is eligible to enroll, and the subjectsoffered. These topics are chosen to comply with theresearch objective. It is to relieve the supervisors fromanswering the same repetitive questions. Moreover,those topics fall under the most frequently asked ques-tions among students.

Another research objective is to construct a chatbotthat is free from SaaS. For this reason, the researchersapply a set of simple but applicable methods ineach module of chatbot implementation and providepossibilities to upgrade their capabilities. The basicarchitecture of the chatbot in Fig. 2 follows the generalarchitecture of DS.

A. Data Collection

One of the problems in developing a chatbot systemis how to model the human-machine dialogue flow.This implies that modeling a dialogue flow of a chatbotneeds data taking the form of conversations. To collectsuch data, the researchers need a system prototype inwhich users can communicate. This becomes a chickenand egg problem.

To break the cycle of this chicken-egg problem,the researchers firstly observe how students usuallypose questions to their academic supervisor. Then,the question-answer formulations are sampled froma handful of IT students by asking them to playactthe conversation. The results are some topics of pre-registration questions. The researchers pick up twocategories which are most frequently asked. Thoseare the number of credits ‘Satuan Kredit Semester’(SKS) and the offered subjects. Based on this restricted

data, the researchers design a chatbot with insufficientnatural language capability and dialogue flows. Thischatbot is used to collect data through “system-in-the-loop” paradigm.

System-in-the-loop, which was introduced byRef. [20], is a wizardless and iterative procedure forcollecting data using the developing system prototype.The researchers apply this data collection paradigm intwo iterations, each with ten different users. Most usersare students, but there are two lecturers involved in thisprocess. For data gathering, a task scenario consistingof guidance on doing the given tasks is prepared.Besides, Camtasia (a screen recording software) is in-stalled to record and capture any user movement on thescreen such as what they type, and how they conversewith the chatbot. After interaction with the pre-alphachatbot, users are interviewed to give feedback on theinterface design, dialogue navigation, and the systemcapability in dealing with the dialogue.

Nine out of ten users in the first session suggestdialogue navigation that enables moving backward tothe nodes leading to the former topic of conversation.The resulting data are used to improve the system navi-gation which is completed with verification. Moreover,the unrecognized user inputs in this session are usedfor enriching the vocabulary of the natural languageunderstanding component as synonyms for the definedkeywords.

Using the same procedure but improved task sce-nario, the refined chatbot is run for the second testfor ten different students from the first test. In thissession, the users’ feedbacks on system improvementbecome more specific and focused. For example, thebackward navigation in a node of compulsory sub-jects needs improvement. It is due to its being error-prone. Moreover, the system should also understandthe writing variations of keywords, the abbreviationsof subject names, and the use of Arabic numbers as analternative for stating numbers. Most feedbacks in thissession are from both interview and user interactionwith the chatbot and deal with the improvement onNLU and DM component. Only three users suggestthe improvement of the interface design.

B. Keyword Spotting Technique

Processing and understanding user input are thetasks of language understanding component of a chat-bot. Most currently built chatbots accept user inputsin the form of sentences instead of phrases and wordsequences. There is much variety of methods to under-stand these sentences. Some systems treat the wholeuser input sentence as a template to be matched.In Ref. [13], a pair of user-system utterances are

89

In Pres

s

Page 4: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

TABLE ITHE EXAMPLES OF RECOGNIZED USER INPUT VARIATIONS IN

THE CHATBOT’S LOG.

Variation of users’ utterances for one query Recognizedkeywords

Berapakah SKS yang bisa saya ambil? (howmany credits that I can take?)

SKS, ambil(credit, take)

Berapakah syarat pengambilan SKS maksimaltiap semester? (What is the maximum takencredit of each semester?)

ambil, SKS(take, credit)

berapa batas pengambilan SKS di semester ini?(what is the limit of taking credit in thissemester?)

ambil, SKS(take, credit)

Jumlah SKS untuk IPK 2.9 (Number of creditsfor GPA 2.9)

SKS (credit)

Tolong tampilkan syarat pengambilan SKS(Please show credit taking requirements)

ambil, SKS(take, credit)

predefined in AIML format and saved in a database.Thus, to understand user input of “Apa kabar?”, thesystem computes the bigram similarity of this string toall defined templates in the database (apa kabar, siapanama kamu, and others), and retrieves the answer ofthe template whose similarity score is the highest.

Instead of treating the whole user input as a templateto match, this research resorts to keyword and phrasespotting method. In this method, the system needsto identify the keywords and pattern match thosekeywords against a set of pre-programmed rules togenerate the appropriate responses. Thus, NLU com-ponent does not need to analyze an utterance fully.The advantages of this technique are that the chatbotsystem recognizes all utterance variations as long asthey contain the keywords, and users get a positiveimpression on the system intelligence. The order ofkeyword occurrences is also ignored. Table 1 showsthe variations of recognized user inputs by the chatbot.

In its implementation, at least one keyword is de-fined for each step of dialogue. The variation of thesekeywords are saved in an array and formulated as apattern using Regular Expression to match. In total,there are 23 sets of keywords with a minimal setcardinality of 2 keyword variations and maximal car-dinality of 12 variations for the keyword ‘terima kasih’(thank you). Keywords taking the form of phrases aretreated as separate tokens and defined only in their rootword forms. As its consequence, the order of keywordsin their occurrences and affixation will not affect therecognition.

C. Dialogue Strategies

The dialogue flow of the chatbot is managed by anunweighted Finite State Transducer (FST) which is avariation of a Finite State Automata (FSA). It is capa-ble of producing outputs and reading inputs as well.In contrast, FSA is only capable of recognizing for

unweighted Finite State Transducer (FST) which is a variation

of a Finite State Automata (FSA). It is capable of producing

outputs and reading inputs as well. In contrast, FSA is only

capable of recognizing for matching patterns. The state

traversal within FST can be deterministic as well as non-

deterministic depending on the applied algorithm.

In the FST-based chatbot, user input is placed in one state at

a given time. The chatbot maintains the control of dialogue by

producing prompts at each state, and the user needs to give

responses to move to another state. The recognized keywords

determine the state that will be traversed in the users’

responses. The transducer describing the flow of dialogue in

the chatbot is seen in Fig. 3

Figure 3 The transducer’s state transitions which depict the dialogue flow of

our chatbot.

All states in Fig. 3 are labeled in Arabic numbers. The state

labeled 0 symbolizes the start state. Meanwhile, 17 is the end

or stop state. The start state has four forward transitions (green

arrows) to states 1, 4, 18, and 19. The first two states deal with

the main topics of conversation. Meanwhile, states 18 and 19

are the short-cut states as a result of cooperative design by

integrating users’ needs (cf. section III a). The start state (0)

conveys a discourse opening which users are welcome, and

the domain of conversation is introduced. Figure 4 shows the

capture of chatbot’s prompt to start state.

Figure 4 The discourse opening introduced by the chatbot. A user can type

her/his response on the blank text field to communicate with the chatbot.

The transition from state 0 to state 1, 2, and 3 marks the

dialogue on how many SKS a student can take based on their

semester Grade Point Average (GPA) ‘Indeks Prestasi

Semester’ (IPS) (state 2) and cumulative GPA “Indeks

Prestasi Kumulatif’ (IPK) (state 3). The state transitions from

0 to 4–16 regulate the Question-Answering (QA) dialogues on

the offered subjects per semester, the subject types (optional

or compulsory), and profile-based subject categories. The

shortcut dialogue on the prerequisite of taking Internship

‘Kerja Praktek’ (KP) as the subject is directed for state 0 to

state 18. Meanwhile, the transition to state 19 from state 0

rules the shortcut QA dialogue on the Community Service

subject ‘Kuliah Kerja Nyata’ (KKN).

The transition from one state to another one is determined

by two parameters such as the recognized keywords and the

rules predefined on each state. Algorithm 1 exemplifies the

transition rules on state 3. Given the inputs of the values of the

semester and cumulative GPAs (IPS and IPK), state 3 prompts

a verification. The user response to system verification

determines the transition to other states. Algorithm 1 is

presented in Fig. 5. State 3 also deals with verification and

event handler which are provided on different conditions.

Fig. 3. The transducer’s state transitions which depict the dialogueflow of the chatbot.

matching patterns. The state traversal within FST canbe deterministic as well as non-deterministic dependingon the applied algorithm.

In the FST-based chatbot, user input is placed in onestate at a given time. The chatbot maintains the controlof dialogue by producing prompts at each state, and theuser needs to give responses to move to another state.The recognized keywords determine the state that willbe traversed in the users’ responses. The transducerdescribing the flow of dialogue in the chatbot is seenin Fig. 3.

All states in Fig. 3 are labeled in Arabic numbers.The state labeled 0 symbolizes the start state. Mean-while, 17 is the end or stop state. The start state hasfour forward transitions (green arrows) to states 1, 4,18, and 19. The first two states deal with the maintopics of conversation. Meanwhile, states 18 and 19are the short-cut states as a result of cooperative designby integrating users’ needs. The start state (0) conveysa discourse opening which users are welcome, and thedomain of conversation is introduced. Figure 4 showsthe capture of chatbot’s prompt to start state.

The transition from state 0 to state 1, 2, and 3marks the dialogue on how many SKS a student cantake based on their semester Grade Point Average(GPA) ‘Indeks Prestasi Semester’ (IPS) (state 2) andcumulative GPA ‘Indeks Prestasi Kumulatif’ (IPK)(state 3). The state transitions from 0 to 416 regulatethe Question-Answering (QA) dialogues on the offered

90

In Pres

s

Page 5: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

unweighted Finite State Transducer (FST) which is a variation

of a Finite State Automata (FSA). It is capable of producing

outputs and reading inputs as well. In contrast, FSA is only

capable of recognizing for matching patterns. The state

traversal within FST can be deterministic as well as non-

deterministic depending on the applied algorithm.

In the FST-based chatbot, user input is placed in one state at

a given time. The chatbot maintains the control of dialogue by

producing prompts at each state, and the user needs to give

responses to move to another state. The recognized keywords

determine the state that will be traversed in the users’

responses. The transducer describing the flow of dialogue in

the chatbot is seen in Fig. 3

Figure 3 The transducer’s state transitions which depict the dialogue flow of

our chatbot.

All states in Fig. 3 are labeled in Arabic numbers. The state

labeled 0 symbolizes the start state. Meanwhile, 17 is the end

or stop state. The start state has four forward transitions (green

arrows) to states 1, 4, 18, and 19. The first two states deal with

the main topics of conversation. Meanwhile, states 18 and 19

are the short-cut states as a result of cooperative design by

integrating users’ needs (cf. section III a). The start state (0)

conveys a discourse opening which users are welcome, and

the domain of conversation is introduced. Figure 4 shows the

capture of chatbot’s prompt to start state.

Figure 4 The discourse opening introduced by the chatbot. A user can type

her/his response on the blank text field to communicate with the chatbot.

The transition from state 0 to state 1, 2, and 3 marks the

dialogue on how many SKS a student can take based on their

semester Grade Point Average (GPA) ‘Indeks Prestasi

Semester’ (IPS) (state 2) and cumulative GPA “Indeks

Prestasi Kumulatif’ (IPK) (state 3). The state transitions from

0 to 4–16 regulate the Question-Answering (QA) dialogues on

the offered subjects per semester, the subject types (optional

or compulsory), and profile-based subject categories. The

shortcut dialogue on the prerequisite of taking Internship

‘Kerja Praktek’ (KP) as the subject is directed for state 0 to

state 18. Meanwhile, the transition to state 19 from state 0

rules the shortcut QA dialogue on the Community Service

subject ‘Kuliah Kerja Nyata’ (KKN).

The transition from one state to another one is determined

by two parameters such as the recognized keywords and the

rules predefined on each state. Algorithm 1 exemplifies the

transition rules on state 3. Given the inputs of the values of the

semester and cumulative GPAs (IPS and IPK), state 3 prompts

a verification. The user response to system verification

determines the transition to other states. Algorithm 1 is

presented in Fig. 5. State 3 also deals with verification and

event handler which are provided on different conditions.

Fig. 4. The discourse opening introduced by the chatbot. A user cantype her/his response on the blank text field to communicate withthe chatbot. The figure in English: Hello and welcome, this is thedialogue system of Information Technology academic, please submitthe questions regarding the rule of registering SKS which you cantake or information about list of course in Information Technology.

subjects per semester, the subject types (optional orcompulsory), and profile-based subject categories. Theshortcut dialogue on the prerequisite of taking Intern-ship ‘Kerja Praktek’ (KP) as the subject is directedfor state 0 to state 18. Meanwhile, the transition tostate 19 from state 0 rules the shortcut QA dialogue onthe Community Service subject ‘Kuliah Kerja Nyata’(KKN).

The transition from one state to another one isdetermined by two parameters such as the recognizedkeywords and the rules predefined on each state. Al-gorithm 1 exemplifies the transition rules on state 3.Given the inputs of the values of the semester andcumulative GPAs (IPS and IPK), state 3 prompts averification. The user response to system verificationdetermines the transition to other states. Algorithm 1 ispresented in Alg. 1. State 3 also deals with verificationand event handler which are provided on differentconditions.

Algorithm 1: Transition rules of the state 3.Input: IPS, IPK, userResponseOutput: Transition from X to Y , retrieved answer of the queryPrompt verification defined for state 3VerifyAnswer ← read(userResponse)if BenarKey is in VerifyAnswer then

AnswerCand ← retrieveMatrix(IPK, IPS)Answer ← join(AnswerCand, templateAnswer)display Answer to usersprompt user whether to end or repeat the dialogueif User ends dialogue OR NoInput ≥ 20 sec then

random(closing statements)move to state 17

elseupdateState(3,0)move to state 0

endelse if SalahKey is in VerifyAnswer then

unset(IPK, IPS)updateState(3,1)Move to state 1

else if No IPKkey found OR IPKformat is false thenEHPrompt ← random(eventHandler alternatives)display EHPromptunset(IPK)updateState(3,2)Move to state 2

end

The researchers use MySQL as a database to storethe information on the states being traversed, and theuser inputs on IPS and IPK values. The current activestate is dynamically updated as the dialogue betweenchatbot, and a user is in progress. The values of IPKand IPS are stored in the query regarding the totalnumber of credits that a student (user) can take inthe IPK-IPS matrix. This matrix construction is basedon the academic handbook given to first-year students.Information on that handbook also defines the subjectcategorization and requirements.

D. Grounding and Verification

Grounding, which is a way of establishing mu-tual knowledge, is a vital part of communication inboth human-human and human-computer conversation.Grounding becomes a real challenging task of havinga chat with a bot, as it involves efforts to shareeach speaker’s common understanding to achieve thegoal. Reference [21] proposed three kinds of ground-ing strategies: the cautious grounding, the optimisticgrounding strategy, and the verification. Each strat-egy had its strengths and drawbacks. The cautiousgrounding strategy would be annoying since systemalways checked the correctness of each user inputand asked the user to confirm it. In contrast, theoptimistic grounding strategy could lead to a dead enddialogue, since the system was too optimistic about thecorrectness of user input without confirmation.

In this chatbot, the verification is applied to ensurethat the users’ responses understood by the system arecorrect, so that the system can retrieve the right infor-mation needed by users. The verification is placed atstates 3, 6, 8, 9, and 10 where users have completed allqueries needed by the system to output the informationas an answer to those queries. For example, to retrievethe maximal number of credits (SKS) that a student iseligible to take, the system needs the student IPK andIPS. Having received the values of IPK and IPS fromthe former states, the system issues the verificationon state 3. This requires user confirmation by typing‘yes’ or ‘no’. Figure 5 captures the verification processimplemented in chatbot verification.

E. Event Handling

Another communication strategy applied in the chat-bot is the mechanism to handle events which are notcovered by the state mechanism. The researchers definethree events to be handled. Those are no keyword, noinput, and no well-formed input.

1) No-keyword. When the system finds no keywordon user responses, a special prompt defined forno-keyword event will be issued. Following it,

91

In Pres

s

Page 6: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

Figure 5 An example of the transition rules defined for state 3.

The researchers use MySQL as a database to store the

information on the states being traversed, and the user inputs

on IPS and IPK values. The current active state is dynamically

updated as the dialogue between chatbot, and a user is in

progress. The values of IPK and IPS are stored in the query

regarding the total number of credits that a student (user) can

take in the IPK-IPS matrix. This matrix construction is based

on the academic handbook given to first-year students.

Information on that handbook also defines the subject

categorization and requirements.

D. Grounding and Verification

Grounding, which is a way of establishing mutual

knowledge, is a vital part of communication in both human-

human and human-computer conversation. Grounding

becomes a real challenging task of having a chat with a bot, as

it involves efforts to share each speaker’s common

understanding to achieve the goal. Reference [21] proposed

three kinds of grounding strategies: the cautious grounding,

the optimistic grounding strategy, and the verification. Each

strategy had its strengths and drawbacks. The cautious

grounding strategy would be annoying since system always

checked the correctness of each user input and asked the user

to confirm it. In contrast, the optimistic grounding strategy

could lead to a dead end dialogue, since the system was too

optimistic about the correctness of user input without

confirmation.

In this chatbot, the verification is applied to ensure that the

users’ responses understood by the system are correct, so that

the system can retrieve the right information needed by users.

The verification is placed at states 3, 6, 8, 9, and 10 where

users have completed all queries needed by the system to

output the information as an answer to those queries. For

example, to retrieve the maximal number of credits (SKS) that

a student is eligible to take, the system needs the student IPK

and IPS. Having received the values of IPK and IPS from the

former states, the system issues the verification on state 3.

This requires user confirmation by typing ‘yes' or ‘no'. Figure

6 captures the verification process implemented in chatbot

verification.

Figure 6 the verification implementation on the system utterance inside the red box by stating “Apakah nilai IPS 3.8 dan nilai IPK 3.7…” (Is the semester

GPA 2.8 and Cumulative GPA 3.7...)

E. Event Handling

Another communication strategy applied in the chatbot is

the mechanism to handle events which are not covered by the

state mechanism. The researchers define three events to be

handled. Those are no keyword, no input, and no well-formed

input.

1) No-keyword. When the system finds no keyword on user

responses, a special prompt defined for no-keyword event will

be issued. Following it, the dialogue manager directs the

conversation back to the former state so that the user can

correct her/his responses. There are three statements defined in

response to no-keyword events. The issuance of this statement

is done through a random selection technique. The aim is to

provide various event handling statements in the case in which

a user makes mistakes repetitively. The following is the

translation version of statements for no-keyword events:

“I am really sorry for being unable to understand your

response. Could you please check your input again?”

“The response you have just inputted could not be

understood by the system.”

“Would you like to rewrite your response in an

understandable way?”

2) No-input. In case, when a user cannot continue his/her

dialogue because of many reasons that it leaves the users’ text

field unfilled or blank, a no-input event will be issued. The

toleration for the no-input event is set up for 20 seconds. After

20 seconds, there is no input. The dialogue manager will lead

the transition to the end state 17. The no-input event function

is called on every state except the start (state 0) and the state

17. Thus, there is a transition from every state to state 17, but

these transitions are not depicted in Fig. 3 to avoid the

crowdedness of arrows as a transition symbol. There is only

one statement defined in response to no input-event such as

“Your time is up, and thank you for chatting with me.”

3) Not well-formed input. This is to tackle an event in

which the keywords are successfully extracted from the users’

response, but they are not well-formed. An excellent example

of the not well-formed input is a conversation occurring in

states 1, 2, and 3. In these states, a user inputs his/her IPS

which is set in numeric format between zero (0.00) to four

(4.00) since there will be no IPS greater than 4.00. If a user

inputs 4.5 or -1.00 for his/her IPS, the function of not well-

formed input event will be issued, and the prompts to correct

the input will be done. Figure 7 illustrates a dialogue with this

event handler. The followings are some translated examples of

system prompts for handling not well-formed inputs:

“Your IPS is not well-formed. Please input the right

one.”

“So, have you inputted the right IPK of yours?”

“The input that you have provided could not be

understood."

Fig. 5. the verification implementation on the system utteranceinside the red box by stating “Apakah nilai IPS 3.8 dan nilai IPK3.7. . . ” (Is the semester GPA 2.8 and Cumulative GPA 3.7 . . . ).The figure in English: Dialogue: Hello and welcome, this is thedialogue system of Information Technology academic, please submitthe questions regarding the rule of registering SKS which you cantake or information about list of course in Information Technology.User: how many SKS that I can take in the next semester? System:what is the lastest of your IPS? (0.00–4.00) User: 3.7 System: whatis the lastest of your IPK? (0.00–4.00) User: 3.8 System:are yourIPS 3.8 and IPK 3.7 correct ? User: yes System: the amount of SKSthat you can take is 24 do you want to repeat the process? User: noSystem

the DM directs the conversation back to theformer state so that the user can correct her/hisresponses. There are three statements defined inresponse to no-keyword events. The issuance ofthis statement is done through a random selectiontechnique. The aim is to provide various eventhandling statements in the case in which a usermakes mistakes repetitively. The following is thetranslation version of statements for no-keywordevents:

• “I am really sorry for being unable to under-stand your response. Could you please checkyour input again?”

• “The response you have just inputted couldnot be understood by the system.”

• “Would you like to rewrite your response inan understandable way?”

2) No-input. In case, when a user cannot continuehis/her dialogue because of many reasons that itleaves the users’ text field unfilled or blank, ano-input event will be issued. The toleration forthe no-input event is set up for 20 seconds. After20 seconds, there is no input. The DM will leadthe transition to the end state 17. The no-inputevent function is called on every state except thestart (state 0) and the state 17. Thus, there is atransition from every state to state 17, but thesetransitions are not depicted in Fig. 3 to avoidthe crowdedness of arrows as a transition symbol.There is only one statement defined in responseto no input-event such as “Your time is up, andthank you for chatting with me.”

Figure 7 An example of issuing an event handler on not well-formed input.

IV. EXPERIMENT

A. Evaluation Process

The evaluation process of this chatbot system takes the form

of process validation and system assessment. The process

validation is applied to collect data with a goal to improve

chatbot performance in having a dialogue with users. This has

been described in section IIIA. To elucidate it, this validation

is considered as an iterative evaluation which is a part of

system development. It has been done in two phases with ten

different testers involved in each phase. All testers are IT

students of different intake years. This has been done on

purpose for two reasons. Firstly, IT students have the better

sense of the bugs and system performance compared to

students from different departments. Secondly, the researchers

badly need a lot of qualified feedbacks to have a successful

system improvement and IT students can provide such

feedbacks. Due to limited space, the researchers exemplify

five pairs of feedbacks gathered during these phases. Table 2

presents tester’s feedback on interface design, dialogue

navigation, and dialogue content.

TABLE 2

Examples of Translated Respondents’ Feedbacks for System Improvement

Interface design Dialogue navigation Dialogue competency

The UI design is too

simple

I cannot repeat taking

the compulsory subjects

The system prompts

for options should be stressed (bold, maybe)

to make users easily

understand

If it is possible, do not

display the history of chatting

Please add navigation

to repeat the dialogue to the start after

finishing it

The system has to

understand writing variations such as

lower vs. upper cases,

numbers: 1 and ‘one'

Please use the chat

interface to make it more interesting

The end navigation on

(state) optional-profile subjects has not led to

the database yet

Some abbreviations

commonly used by students should be

understood such as

‘matkul’ for ‘mata kuliah' (course)

Use the university logo to fill the blank

space

The system should direct users to answer

a specific question

and lead to the next steps

Requirements for taking KP and KKN

should be added as a

shortcut

There are still bugs in dialogue for taking

subjects on semester 1

It should be possible to go back to rewrite

inputs due to

misspelling or mistakes

The possibility of using abbreviations

for optional profile

subjects: SuLe for Supervised Learning

The goal of system assessment is to evaluate the chatbot

performance in having a chat with users. About 15 IT students

are involved in this evaluation. 13.2% of them have been

involved in the previous evaluation. In detail, 6.6% of the

students have been involved in the first two data collection

processes, while 6.6% of students take part in the second

phase only. The 86.7% of evaluators are new testers having no

prior knowledge on the workflow of our chatbot.

Akin to the process of data collection, the researchers

provide a task scenario to testers before they perform the

chatting. Testers are asked to read the task scenario which

consists of four tasks. Those are as follows.

Task 1: having a dialogue on the number of credits

which traverses the states 0,1,2,3, back to 0 or jump to

17 (cf. Fig. 3 for the state traversal)

Task 2: having a dialogue on the subject offered which

needs to traverse the states 0,4,5,6, back to 0 or jump to

17 for querying the compulsory subjects. As an option,

testers can have a chat on the optional subjects, which

need to traverse the states 0, 4, 7, 8|9|10,

11|12|13|14|15|16 then to 17 or back to 10 and 7 or 0, or

jump to 17.

Task 3: querying the requirements of KP as a shortcut

traversing the states 0, 18, 0|17

Task 4: querying the requirements of KKN as a shortcut

traversing the states 0, 19, 0|17.

In having a chat with the chatbot, the testers perform

various chat flows and dialogues. For a dialogue and session

definition, the researchers follow Refs. [14], [20]. A session of

chat refers to a tester’s interaction with the chatbot within a

given time frame. One chat session may comprise several

dialogues. Those are a collection of user-chatbot conversation

in which a user has succeeded in achieving the goal of

conversation to get the information needed. Figure 6

illustrates one complete dialogue. Meanwhile, Fig. 7 exhibits

the system has not delivered a partial dialogue since the

number of credits being asked. The minimal number of

dialogue done by testers achieves two, and the maximal

number of dialogue achieved by some testers reaches eight

dialogues in one session.

A written utterance refers to one complete sentence or

linguistic fragments in a conversation which is typed by a user

of prompted by the bot. An adjacency pair of utterances or a

discourse in Foucault's terminology [14] marks a tester

transition to different states. Thus, the number of utterances in

one dialogue shows the flow of dialogue. In other words, it

shows how testers traverse back-and-forth the states. Table 3

summaries the number of sessions, dialogues, and written

utterances in the process of system assessment.

TABLE 3

Fig. 6. An example of issuing an event handler on not well-formedinput. The figure in English: Dialogue: Hello and welcome, this is thedialogue system of Information Technology academic, please submitthe questions regarding the rule of registering SKS which you cantake or information about list of course in Information Technology.User: what is the maximum SKS in each semester? System: whatis the lastest of your IPS? (0.00–4.00) User: 4.5 System: your inputcannot be understood by the system

3) Not well-formed input. This is to tackle an eventin which the keywords are successfully extractedfrom the users response, but they are not well-formed. An excellent example of the not well-formed input is a conversation occurring in states1, 2, and 3. In these states, a user inputs his/herIPS which is set in numeric format between zero(0.00) to four (4.00) since there will be no IPSgreater than 4.00. If a user inputs 4.5 or -1.00for his/her IPS, the function of not well-formedinput event will be issued, and the prompts tocorrect the input will be done. Figure 6 illustratesa dialogue with this event handler. The followingsare some translated examples of system promptsfor handling not well-formed inputs:• “Your IPS is not well-formed. Please input

the right one.”• “So, have you inputted the right IPK of

yours?”• “The input that you have provided could not

be understood.”

IV. RESULTS AND DISCUSSION

A. Evaluation Process

The evaluation process of this chatbot system takesthe form of process validation and system assessment.The process validation is applied to collect data witha goal to improve chatbot performance in having adialogue with users. To elucidate it, this validation isconsidered as an iterative evaluation which is a part ofsystem development. It has been done in two phaseswith ten different testers involved in each phase. Alltesters are IT students of different intake years. Thishas been done on purpose for two reasons. Firstly, IT

92

In Pres

s

Page 7: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

TABLE IIEXAMPLES OF TRANSLATED RESPONDENTS’ FEEDBACKS FOR

SYSTEM IMPROVEMENT.

Interface design Dialogue navigation Dialogue competency

The UI design is toosimple

I cannot repeat takingthe compulsory sub-jects

The system promptsfor options shouldbe stressed (bold,maybe) to make userseasily understand

If it is possible, do notdisplay the history ofchatting

Please add navigationto repeat the dialogueto the start after fin-ishing it

The system has to un-derstand writing vari-ations such as lowervs. upper cases, num-bers: 1 and one’

Please use the chatinterface to make itmore interesting

The end navigationon (state) optional-profile subjects hasnot led to the databaseyet

Some abbreviationscommonly used bystudents should beunderstood such as‘matkul’ for ‘matakuliah’ (course)

Use the universitylogo to fill the blankspace

The system should di-rect users to answer aspecific question andlead to the next steps

Requirements for tak-ing KP and KKNshould be added as ashortcut

There are still bugsin dialogue for takingsubjects on semester 1

It should be possibleto go back to rewriteinputs due to mis-spelling or mistakes

The possibility of us-ing abbreviations foroptional profile sub-jects: SuLe for Super-vised Learning

students have the better sense of the bugs and sys-tem performance compared to students from differentdepartments. Secondly, the researchers badly need alot of qualified feedbacks to have a successful systemimprovement and IT students can provide such feed-backs. Due to limited space, the researchers exemplifyfive pairs of feedbacks gathered during these phases.Table II presents tester’s feedback on interface design,dialogue navigation, and dialogue content.

The goal of system assessment is to evaluate thechatbot performance in having a chat with users. About15 IT students are involved in this evaluation. 13.2%of them have been involved in the previous evaluation.In detail, 6.6% of the students have been involved inthe first two data collection processes, while 6.6

Akin to the process of data collection, the re-searchers provide a task scenario to testers before theyperform the chatting. Testers are asked to read the taskscenario which consists of four tasks. Those are asfollows.

• Task 1: having a dialogue on the number of creditswhich traverses the states 0,1,2,3, back to 0 orjump to 17 (see Fig. 3 for the state traversal)

• Task 2: having a dialogue on the subject offeredwhich needs to traverse the states 0,4,5,6, backto 0 or jump to 17 for querying the compulsorysubjects. As an option, testers can have a chat onthe optional subjects, which need to traverse thestates 0, 4, 7,8|9|10, 11|12|13|14|15|16 then to 17or back to 10 and 7 or 0, or jump to 17.

TABLE IIIA SUMMARY OF STATISTICAL DATA ON THE SYSTEM

ASSESSMENT PROCESS.

Testers Initials Number ofsessions

Number ofdialogues

Numbersof utterancepairs persession

Zf 1 8 45Dn 1 5 23Eg 1 5 28Ys 1 6 27Al 1 4 43

Am 1 6 25Ar 1 5 27De 1 8 35Hk 1 3 18Ha 1 6 29Ma 1 5 26St 1 5 39Af 1 2 15An 1 6 39Pa 1 6 30

Total numbers 15 80 449

• Task 3: querying the requirements of KP as ashortcut traversing the states 0, 18, 0|17

• Task 4: querying the requirements of KKN as ashortcut traversing the states 0, 19, 0|17.

In having a chat with the chatbot, the testers performvarious chat flows and dialogues. For a dialogue andsession definition, the researchers follow Refs. [14, 20].A session of chat refers to a tester’s interaction withthe chatbot within a given time frame. One chat sessionmay comprise several dialogues. Those are a collectionof user-chatbot conversation in which a user has suc-ceeded in achieving the goal of conversation to get theinformation needed. Figure 5 illustrates one completedialogue. Meanwhile, Fig. 6 exhibits the system hasnot delivered a partial dialogue since the number ofcredits being asked. The minimal number of dialoguedone by testers achieves two, and the maximal numberof dialogue achieved by some testers reaches eightdialogues in one session.

A written utterance refers to one complete sentenceor linguistic fragments in a conversation which istyped by a user of prompted by the bot. An adja-cency pair of utterances or a discourse in Foucault’sterminology [14] marks a tester transition to differentstates. Thus, the number of utterances in one dialogueshows the flow of dialogue. In other words, it showshow testers traverse back-and-forth the states. Table IIIsummaries the number of sessions, dialogues, andwritten utterances in the process of system assessment.

In this evaluation process, the researchers record alltesters’ movement and behavior on the screen usingCamtasia software as in the data collection process.However, following the chat, no questionnaire is ad-ministered to testers.

93

In Pres

s

Page 8: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

B. Evaluation Metrics

One of the issues of developing a chatbot is to selectevaluation metrics to quantify system performance.Reference [2] listed several metrics from differentperspectives in evaluating a dialogue system. Infor-mation retrieval perspective will evaluate the systemeffectiveness by measuring precision, recall, and F-score. In user experience perspective, the goal of thebot is to maximize user satisfaction. Hence, bots areevaluated through questionnaires which rank it basedon usability and user satisfaction [2]. In the linguisticperspective, bots should be evaluated on their ability togenerate full, grammatical, and meaningful sentences.The used metrics are Word Error Rate (WER), Sen-tence Error Rate (SER), Concept Error Rate (CER),and Understand Error Rate (UER) [20].

Most mentioned metrics focus on evaluating theSpoken Dialogue Systems (SDSs) since they concen-trate on the speech recognition and understanding. Inthe case of this bot which is based on written dialogue,such metrics do not apply well. Furthermore, somemetrics offered by linguistic and information retrievalperspectives do not evaluate the effectiveness of anoverall dialogue. Instead, they are applied on a per-utterance basis. For this reason, the researchers turnto dialogue-based metrics introduced by Ref. [20] andwhich have also been applied in [14].

The dialogue-based metrics measure the collectiveperformance of the recognition, understanding, dis-course and dialogue components [20] through QueryDensity (QD) and Concept Efficiency (CE). A concept,in this context, refers to a semantic unit realized as akeyword. For instance, in user utterance “How manycredits can I take for the next semester if my semesterGPA is 3.2?” There are two concepts in this utterance,namely credits and 3.2 of semester GPA. Although onekeyword is realized in different word form, they willbe counted as one concept if they refer to the samesemantic unit.

QD measures how effective users can provide newconcepts to the system by computing the mean numberof a new concept introduced per-user query. It iscomputed by

QD =1

Nd

Nd∑i=1

Nu(i)

Nq(i). (1)

where Nd is the number of dialogues, Nq(i) is the totalnumber of user queries in ith dialogue, and Nu(i) is thenumber of unique concepts understood by the systemin ith dialogue. A concept in a dialogue is not countedin Nu if the system had already understood it from apreviously written utterance in one dialogue.

CE computes the average number of turns (similar to

Figure 8 Categorization of user behavior in introducing concepts during their chats with the chatbot.

40% of testers can be classified as straightforward users as

they write their responses in phrases or sentence fragments.

They obediently response as guided by the bot prompts. As its

consequence, this type of users has no difficulties with the

dialogue flow of an FST-based chatbot. Only some users

(7%) fell in the category of a playful one. The researchers

based this categorization on their utterances that personify the

bot, and express fun in having a chat. Their utterances also

reflect that despite their awareness on the limitation of system

capability, they like to know how far the system can response

their queries. The following is an example of utterance in

which the user addresses the chatbot as ‘Min’, a common

name for a Javanese man but it is also a nickname of the

administrator. For example, the utterance is “Saya bingung

mau ambil mata kuliah apa, bisa bantu Min? (I am confused

to take what course, can you help Min?)”.

The quantitative evaluation of system performance is

measured through dialogue-based metrics: QD and CE. Using

equations (1) and (2), the results of QD and CE computation

are presented in Table 4. The QD is 0.805, while the CE of the

system reaches 0.95. The high CE rate indicates the system

recognition on user inputs. In other words, the higher the

efficiency is, the fewer times a user has to repeat a concept.

The rationale is the use of keyword spotting technique which

still recognizes the needed concept on a given time, although a

user introduces more additional and unnecessary concepts on

that given state or time. The QD rate of this chatbot is more

than satisfactory. It shows that a user can communicate the

concepts to the system. To increase the QD rate, the data

collection with system-in-the-loop paradigm should be

conducted with more users and done in several iterations.

TABLE 4

Data for QD and CE Computation

Testers

Initials

Number of

dialogues

∑(nu/nq) ∑(nu/nc)

Zf 8 6.88 8

Dn 5 4.6 4,71

Eg 5 4,689 4,75

Ys 6 4,73 6

Al 4 2,4 3,357

Am 6 5.1 6

Ar 5 4.33 4,58

De 8 5,28 7.69

Hk 3 2.63 3

Ha 6 5.05 5.83

Ma 5 4.25 4

St 5 3.69 4.49

Af 2 2.66 1.82

An 6 3.58 4.87

Pa 6 4.44 5.62

Total # 80 64.37 75.7346

QD/CE 0.805 0.946

In regards to these evaluation processes, the researchers

identify this chatbot strengths and weaknesses. The system

suffers from the common drawback of FST-based chatbot in

which a user should prompt for specific concepts one-by-one

to achieve the goal. This system is unfit for users who are

familiar with QA system, but it is very suitable for a

straightforward type of users. Another drawback of the system

is that it is prone to typo errors and unable to recognize the

misspelled concepts. To improve it, a spelling correction

module should be added to its NLU component.

Despite these drawbacks, this chatbot is smart enough in

recognizing different illocutionary acts such as asking, giving

the orders, and teasing as presented in Table 1. The rationale is

the use of the keyword-spotting technique which recognizes

the concepts only and disregards the rest. The other strength is

that the system still recognizes a typo in part of multi-words

concepts. In cases which a single concept is defined using

several words, a typo in one of these words will not affect

system recognition. For example, in the concept defined as

‘mata kuliah pilihan non prodi (course selection of non-

department)’, the word ‘prodi’ is misspelled to ‘produ’ as in

‘pilihan non produ’ (found in 4th

dialogue of 2nd

user in Table

4).

V. CONCLUSION

Developing a chatbot becomes a challenging task when it is

built from scratch and independent of any SaaS. However, this

research has proved that the combined methods of keyword

spotting technique for the NLU component, FST for the

Dialogue Management, rule-based keyword matching for

NLG, and the system-in-the-loop paradigm for system

validation can produce an efficient chatbot. Assessed with

Dialogue-based metrics, the chatbot capability in

understanding concepts introduced by testers is quite high

with the QD score of 0.80, and CE score of 0.946. The high

rate of CE proves that users do not need to repeat their

utterances several times to be understood by the systems.

In addition to quantitative assessment, the researchers also

observe user behavior or patterns in introducing the new

concepts to be understood by the chatbot. This evaluation

proves that only 40% of testers need more extended time in

adapting the chatbot dialogue flow and understand that a

single concept should be given in response to the system

prompts. The researchers identify this group as ‘slow learner’

since their mental model on a QA system strongly influence

their conversation with the chatbot. However, 60% of testers

have no difficulties in interacting with the chatbot since they

fall both in the category of fast learner or straightforward user.

Fig. 7. Categorization of user behavior in introducing conceptsduring their chats with the chatbot.

a pair of utterances written in a reciprocal) necessaryfor each concept to be understood by the system [20].CE is computed by

CE =1

Nd

Nd∑i=1

Nu(i)

Nc(i)(2)

where Nc(i) is the total number of concepts in ithdialogue. A concept is counted whenever it is writtenby users and is not understood by the system. Since,Nc(i) ≥ Nu(i), then 0 ≤ CE ≤ 1.

C. Results

The researchers conduct two kinds of evaluationsconcerning the experiment, the qualitative and quanti-tative evaluations. The researchers base the qualitativeevaluation on the recorded dialogues between users andthe chatbot. The researchers observe users’ tendency inintroducing new concepts which are shown in Fig. 7.Since the researchers do not evaluate user-experienceperspective, the researchers base the analysis solely onthe recorded discourses.

Based mainly on user utterances in discourse open-ing, it can be concluded that most users have a strongmental model on the QA chatbot. This is because theyhave been familiar with Siri or Google Now. As aresult, 53% of users tend to introduce several conceptsor keywords in one utterance. However, 13% of testersor users in this group can be identified as fast learners,as they introduce several concepts on the discourseopening of their first dialogue only. In contrast, 40% ofthem are classified as slow learners since they repeatthis tendency in more than a half of their succeedingdialogues. This can also be interpreted that they applytheir mental model to QA system for interacting withan FST-based chatbot.

40% of testers can be classified as straightforwardusers as they write their responses in phrases or sen-tence fragments. They obediently response as guided

94

In Pres

s

Page 9: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

TABLE IVDATA FOR QUERY DENSITY AND CONCEPT EFFICIENCY

COMPUTATION.

Testers Initials Number ofdialogues

∑(Nu/Nq)

∑(Nu/Nc)

Zf 8 6.88 8Dn 5 4.6 4.71Eg 5 4.689 4.75Ys 6 4.73 6Al 4 2.4 3.357

Am 6 5.1 6Ar 5 4.33 4.58De 8 5.28 7.69Hk 3 2.63 3Ha 6 5.05 5.83Ma 5 4.25 4St 5 3.69 4.49Af 2 2.66 1.82An 6 3.58 4.87Pa 6 4.44 5.62

Total numbers 80 64.37 75.7346

QD/CE 0.805 0.946

by the bot prompts. As its consequence, this type ofusers has no difficulties with the dialogue flow of anFST-based chatbot. Only some users (7%) fell in thecategory of a playful one. The researchers based thiscategorization on their utterances that personify thebot, and express fun in having a chat. Their utterancesalso reflect that despite their awareness on the limita-tion of system capability, they like to know how farthe system can response their queries. The followingis an example of utterance in which the user addressesthe chatbot as ‘Min’, a common name for a Javaneseman but it is also a nickname of the administrator. Forexample, the utterance is “Saya bingung mau ambilmata kuliah apa, bisa bantu Min? (I am confused totake what course, can you help Min?)”.

The quantitative evaluation of system performanceis measured through dialogue-based metrics: QD andCE. Using Eqs. (1) and (2), the results of QD andCE computation are presented in Table IV. The QDis 0.805, while the CE of the system reaches 0.95.The high CE rate indicates the system recognition onuser inputs. In other words, the higher the efficiencyis, the fewer times a user has to repeat a concept.The rationale is the use of keyword spotting techniquewhich still recognizes the needed concept on a giventime, although a user introduces more additional andunnecessary concepts on that given state or time. TheQD rate of this chatbot is more than satisfactory. Itshows that a user can communicate the concepts tothe system. To increase the QD rate, the data collectionwith system-in-the-loop paradigm should be conductedwith more users and done in several iterations.

In regards to these evaluation processes, the re-searchers identify this chatbot strengths and weak-

nesses. The system suffers from the common drawbackof FST-based chatbot in which a user should promptfor specific concepts one-by-one to achieve the goal.This system is unfit for users who are familiar with QAsystem, but it is very suitable for a straightforward typeof users. Another drawback of the system is that it isprone to typo errors and unable to recognize the mis-spelled concepts. To improve it, a spelling correctionmodule should be added to its NLU component.

Despite these drawbacks, this chatbot is smartenough in recognizing different illocutionary acts suchas asking, giving the orders, and teasing as presentedin Table I. The rationale is the use of the keyword-spotting technique which recognizes the concepts onlyand disregards the rest. The other strength is that thesystem still recognizes a typo in part of multi-wordsconcepts. In cases which a single concept is definedusing several words, a typo in one of these wordswill not affect system recognition. For example, inthe concept defined as ‘mata kuliah pilihan non prodi’(course selection of non-department), the word ‘prodi’is misspelled to ‘produ’ as in ‘pilihan non produ’(found in 4th dialogue of 2nd user in Table IV).

V. CONCLUSION

Developing a chatbot becomes a challenging taskwhen it is built from scratch and independent ofany SaaS. However, this research has proved that thecombined methods of keyword spotting technique forthe NLU component, FST for the Dialogue Manage-ment, rule-based keyword matching for NLG, and thesystem-in-the-loop paradigm for system validation canproduce an efficient chatbot. Assessed with Dialogue-based metrics, the chatbot capability in understandingconcepts introduced by testers is quite high with theQD score of 0.80, and CE score of 0.946. The highrate of CE proves that users do not need to repeattheir utterances several times to be understood by thesystems.

In addition to quantitative assessment, the re-searchers also observe user behavior or patterns inintroducing the new concepts to be understood bythe chatbot. This evaluation proves that only 40% oftesters need more extended time in adapting the chatbotdialogue flow and understand that a single conceptshould be given in response to the system prompts.The researchers identify this group as ‘slow learner’since their mental model on a QA system stronglyinfluence their conversation with the chatbot. However,60% of testers have no difficulties in interacting withthe chatbot since they fall both in the category of fastlearner or straightforward user.

The chatbot’s capability and flexibility in managingdialogues with users can be enhanced by using it as

95

In Pres

s

Page 10: Prototyping a Chatbot for Student Supervision in a …lecturer.ukdw.ac.id/virginia/files/Papers/2018_COMMIT...CommIT (Communication & Information Technology) Journal 12(2),87–96,

Cite this article as: L. D. Krisnawati, B. E. Butar-Butar, and G. Virginia, “Prototyping a Chatbot for StudentSupervision in a Pre-registration Process”, CommIT (Communication & Information Technology) Journal12(2), 87–96, 2018.

a prototype to collect more data in the system-in-the-loop paradigm. The result of data collection can beused to build a conversational corpus which will enablethe use of statistical or machine learning methods forimproving the chatbot intelligence. Another alternativefor future work is to apply the frame-based methodin a component of DM. Then, to improve the chatbotcapability, the future researchers can broaden the topicof conversation such as the subject description orsummary.

REFERENCES

[1] D. Allison, “Chatbots in the library: Is it time?”Library Hi Tech, vol. 30, no. 1, pp. 95–107, 2012.

[2] J. Cahn, “CHATBOT: Architecture, design, &development,” 2017, University of Pennsylvania.

[3] J. Constine and S. Perez. (2016) FacebookMessenger now allows payments in its 30,000chatbots. [Online]. Available: https://techcrunch.com/2016/09/12/messenger-bot-payments/

[4] kata.ai. (2018) Studi kasus chatbot: Pelajaribagaimana chatbot membantu perusahaanmencapai tujuan bisnisnya. [Online]. Available:https://kata.ai/case-studies/

[5] A. Bartl and G. Spanakis, “A retrieval-baseddialogue system utilizing utterance and contextembeddings,” in 16th IEEE International Con-ference on Machine Learning and Applications(ICMLA). IEEE, 2017, pp. 1120–1125.

[6] N. M. Radziwill and M. C. Benton, “Evaluatingquality of chatbots and intelligent conversationalagents,” ArXiv Preprint ArXiv:1704.04579, 2017.

[7] M. L. McNeal and D. Newyear, “Introducingchatbots in libraries,” Library technology reports,vol. 49, no. 8, pp. 5–10, 2013.

[8] M. McTear, Z. Callejas, and D. Griol, The con-versational interface: Talking to smart devices.Switzerland: Springer, 2016.

[9] T. Kluwer, “From chatbots to dialog systems,”in Conversational agents and natural languageinteraction: Techniques and effective practices.IGI Global, 2011, pp. 1–22.

[10] S. A. Abdul-Kader and J. Woods, “Survey onchatbot design techniques in speech conversa-tion systems,” International Journal of AdvancedComputer Science and Applications, vol. 6, no. 7,pp. 72–80, 2015.

[11] A. Niklasson, “Dialogue systems using web-based language tools,” Master’s thesis, UmeaUniversity, Sweden, 2017.

[12] S. Ghose and J. J. Barua, “Toward the implemen-tation of a topic specific dialogue based naturallanguage chatbot as an undergraduate advisor,”

in International Conference on Informatics, Elec-tronics & Vision (ICIEV). Dhaka, Bangladesh:IEEE, 2013, pp. 1–5.

[13] B. Setiaji and F. W. Wibowo, “Chatbot using aknowledge in database: Human-to-machine con-versation modeling,” in 7th International Con-ference on Intelligent Systems, Modelling andSimulation, Bangkok, Thailand, 2016, pp. 72–77.

[14] L. D. Krisnawati, “Implementing mixed initiativedialogue in voiceXML to process CIS queries,” inSeminar Nasional Sistem dan Informatika, Bali,2007, pp. 149–155.

[15] M. Dahiya, “A tool of conversation: Chatbot,”International Journal of Computer Sciences andEngineering, vol. 5, no. 5, pp. 158–161, 2017.

[16] F. Morbini, E. Forbell, D. DeVault, K. Sagae,D. R. Traum, and A. A. Rizzo, “A mixed-initiative conversational dialogue system forhealthcare,” in Proceedings of the 13th AnnualMeeting of the Special Interest Group on Dis-course and Dialogue. Association for Compu-tational Linguistics, 2012, pp. 137–139.

[17] D. Griol and J. M. Molina, “A proposal to managemulti-task dialogs in conversational interfaces,”Advances in Distributed Computing and ArtificialIntelligence Journal (ADCAIJ), vol. 5, no. 2, pp.53–65, 2016.

[18] M. Hirzel, L. Mandel, A. Shinnar, J. Simon,and M. Vaziri, “I can parse you: Grammars fordialogs,” in 2nd Summit on Advances in Program-ming Languages (SNAPL), 2017, pp. 6:1–6:15.

[19] Z. Yan, N. Duan, P. Chen, M. Zhou, J. Zhou,and Z. Li, “Building task-oriented dialogue sys-tems for online shopping.” in Proceedings ofthe Thirty-First AAAI Conference on ArtificialIntelligence (AAAI-17), 2017, pp. 4618–4626.

[20] J. Glass, J. Polifroni, S. Seneff, and V. Zue, “Datacollection and performance evaluation of spokendialogue systems: The MIT experience,” in SixthInternational Conference on Spoken LanguageProcessing (ICSLP), 2000, pp. 1–4.

[21] M. Gabsdil, “Clarification in spoken dialoguesystems,” in Proceedings of the 2003 AAAI SpringSymposium. Workshop on Natural Language Gen-eration in Spoken and Written Dialogue, 2003,pp. 28–35.

96

In Pres

s