Introduction

Background & Problem Statement

The ADVICE Platform aims to help both students and student advisors at UCT by being a transitional step in the UCT registration process. The number of students enrolling at UCT every year far outnumbers that of the student advisors who are tasked with aiding students through the registration process.

ADVICE is a platform that aims to offer information and guidance to students in the place of student advisors. The advantages of ADVICE over contacting a human student advisor is that you can get information almost instantly and the fact that it operates outside of regular office hours (24/7). The goal is for students to use our platform to get the information before needing to schdeule a consultation with a student advisor. This will hopefully reduce the reliance on student advisors and allow for every student to get the information they need easily and efficiently.

One way for students to get this information from ADVICE is by utilising the built-in chatbot. To maximise user-experience, a contextual inquiry into the design of chat bots and more specifically virtual student advisors was conducted. The results of which influenced the design of the chat bot and the features that were included (on the website or in the chat bot).

Since we did not have access to UCT's database of Degrees, Majors and Courses, we needed an alternative method of getting this information so that ADVICE could operate properly. The next best solution was to get it from UCT's official student handbook(s). This involved designing and creating a Student Handbook reader application that reads the UCT student handbooks and uploads the required information to ADVICE's database.

Background Work

Student Handbook Reader

Through a literature review, several tools and libraries were discovered to help build this tool. An open-source library, Apache PDFBox allows Java programs to extract data from and manipulate PDF documents. This was instrumental in the design and implementation of the handbook reader application because UCT uploads the handbooks in this file format.

Since ADVICE uses a MongoDB database, the handbook reader application needed to be able to connect and upload data to it. Research found that the MongoDB java drivers library could be used to achieve this. The library can be added through the use of any Java IDE.

Contextual Inquiry

Nowadays, the most popular application of chat bots are virtual assisstants like Amazon's Alexa, Apple's Siri, and Google's Google Assisstant. Before these were simple online support agents used in commerce and marketing manned by real people. Advances in technology lead to the development of chatbots which accurately mimic human speech patterns and give the impresion of speaking to a real person.

Research into the "humanness" of chatbots and chatbot user-experience influenced the questions asked during the contextual inquiry. There are three main aspects of to what makes conversational agents human-like:

  • Use of Human figures (Visual Cues)
  • Human-associated names or identity (Identity Cues)
  • The mimicking of human language (Coversational Cues)

There has been little work in the field of virtual student advisors and even less so in South Africa. The questions in the contextual inquiry aimed to discover the what the most important aspects of chatbots are and more specifcally a potential virtual student advisor platform for UCT.

System Development & Implementation

Student Handbook Reader

The application consists of a simple Graphical-User-Interface (GUI) which contains a toolbar. This toolbar has three options: File, Edit, Help.

File

The file tab has three options: Open, Settings, & Exit. Selecting "Open" prompts the user with a file chooser (Fig.1 Below). From here, the user can navigate to the student handbook PDF file on their local machine and select "Open".

Choosing a pdf file will prompt the application to start reading the selected pdf file and process the data.

The settings tab will open a settings GUI where the user can edit the settings of the application, such as the upload locations of the majors and courses in the database. The "Exit" option closes the application.

Edit

Every time the application processes a file, it is saved in the recent file history. This tab contains the option to clear your recent file history.

Help

The Help tab only has one option: View ReadMe. Clicking on this will open the README.txt which contains instructions on how to use the program as well as other information.

Technology Used

The application was built using the Java programming language and the use of the following open-source libraries:

  • Apache PDFBox
  • Apache FontBox
  • Apache Commons
  • MongoDB Java Drivers

The apache libraries were used for reading and processing data in the UCT student handbooks and the MongoDB drivers were used to interface with ADVICE's MongoDB database.

Code Structure

Methods Used to Process Data

Once a PDF file has been selected, the application uses a pdf text stripper to check the first page of the document. From this, the application can determine if it is a UCT student handbook or not. The program returns an error to the user if it is not a readable file.

If the input file is a valid student handbook, the program saves the text in a .txt file and searches iteratively through the file for specific keywords and symbols to save the relevant information about each major (name, code, first, second, third, fourth and fifth year courses) included in the handbook. The program saves the information in an ArrayList of Major objects.

The program then moves on to the start of the courses section in the document by locating a keyword (handbook faculty dependent). The application saves the information for each course it comes across (course name, code, credits, NQF level, entry requirements, outline).

The application then asks the user if they would like to upload the information to the database (Yes/No). If "Yes" is selected, the program iterates through the CourseArrayList and adds the entries to the database and then starts the processing the majors list. For each course that belongs to a major, the program queries the database using the course code as reference and fetches the ObjectId field. The program then uses the ObjectId as a reference to the course when inserting each Major into the database. This is done so that the website can look up the information about each course from the Majors collection using the ObjectId as reference.

Experiment Design & Execution

Human-Computer Interaction with Chat Bots

Survey Outline

In order to gain an understanding of the possible user-base for ADVICE. A contextual inquiry was conducted. Google Forms was used as a platform to record responses to questions pertaining to the use of chatbots and assess general feelings towards a UCT-made tool for advising students.

The UCT Ethics in Research committee approved the research and an Informed consent form was included in the beginning of the Google Form. Participants had to accept the agreement before they could participate in the research.

The form consisted of 23 short questions where the participants could choose between multiple options. All respondents were familiar with the UCT electronic ecosystem as they were once students at one time or they were currently studying at UCT.

Survey Results

A full breakdown of the survey can be found in the final paper. Some notable results from the contextual inquiry will be outlined.

The majority of participants had first-hand experience with chat bots, but every single participant was aware of them and understood the concept. Their opinion on whether a chatbot should have a name was quite divisive. Almost a 50/50 split between "Yes" and "No".

According to users, the best aspects of a chat bot were how quikcly they answered and their availability even outside office hours. A feature many partcipants also wanted was the ability to get into contact with a human student advisor if the chat bot could not help them.

The general opinion towards UCT's registration process was quite low, and many participants were excited at the prospect of a tool that could help them with their major and courses. When asked about a potential course credits calculator, the majority of participants (95%) expressed interest and indicated they would find benefit from using it.

Participants were happy with giving their name and student number to the virtual student advisor tool but when asked for further information, some skepticism arose. Participants were also skeptic of taking cirriculum advice from a chatbot, but those who did not agree indicated they would "Maybe" trust the recommendations. This could mean that students would use it if they observed that it works and can reliably help people picking their majors and courses.

Overall, the introduction of this proposed tool was met with positive feedback and healthy sketicism, this bodes well for the implementation of the platform as a whole.

Conclusions

The Student Handbook reader can successfully read the format of the Faculty of Science and Commerce student handbooks and upload the data to the mongoDB database. Working with the handbooks has highlighted inconsistencies within them as their formats proved to differ from faculty to faculty. The handbooks are not a complete source of information and the website cannot reliably operate only using information found in the handbooks.

The contextual inquiry highlighted the two most important aspects of a chatbot, efficiency and availability. One must ensure that the bot is responsive and can be used at any time. The ability to contact a student advisor was also a highly requested feature which should be included on the platform. The majority of participants expressed that they would find benefit in using a platform like ADVICE and would potentially trust it to recommend courses and majors to them in the place of a human student advisor.

Future Work

Future work on this project could be extending the functionality of the PDF reader and conducting a more thorough contextual inquiry. This new inquiry could be based on a prototype and gathering user-feedback from participants and their experience with it. The information gathered from this inquiry would be used to further improve the ADVICE platform and tailor it specifically for UCT students.

Documents