How to Create a Pedagogic Conversational Agent for Teaching Computer Science

How to Create a Pedagogic Conversational Agent for Teaching Computer Science

José Miguel Ocaña (Universidad de las Fuerzas Armadas, Ecuador), Elizabeth K. Morales-Urrutia (Universidad Técnica de Ambato, Ecuador), Diana Pérez-Marín (Universidad Autónoma de Madrid and Universidad Rey Juan Carlos, Spain) and Silvia Tamayo-Moreno (Universidad Rey Juan Carlos, Spain)
Copyright: © 2019 |Pages: 21
DOI: 10.4018/978-1-5225-7010-3.ch007
OnDemand PDF Download:
No Current Special Offers


Pedagogic conversational agents are computer applications that can interact with students in natural language. They have been used with satisfactory results on the instruction of several domains. The authors believe that they could also be useful for the instruction of computer science programming. Therefore, in this chapter, the MEDIE methodology is described to explain how to create an agent to teach programming to primary education children and develop their computational thinking. The main steps are to communicate with the teacher team, to validate the interface, and to validate the functionality, practical sessions, and evaluation. The first two steps are covered in this chapter.
Chapter Preview

1. Introduction

Computational Thinking (CT) is defined by the Computer Science Teacher Association (CSTA) as “an approach to solve a problem that empowers the integration of digital technologies with human ideas. It is not intended to replace creativity, reasoning, or critical thinking but reinforces those skills while enhancing ways to organize the problem so that the computer can help”.

Google has provided its own definition of CT as “a set of skills and problem-solving techniques that software engineers use to write the software that underlies the applications we use on a daily. The four specific phases of the CT are: 1) decomposition of a problem or task in discrete steps; 2) recognition of patterns (regularities); 3) generalization of such patterns and abstraction (to discover the laws or principles that cause such patterns); and 4) algorithmic design (to develop precise instructions to solve the problem and its analogues)” (Google for Education, 2015). Another definition is provided by Aho, who defined CT as the thought process involved in the formulation of problems in such a way that its solutions can be represented as discrete computational steps and algorithms (Aho, 2012).

Computational thinking has made sense in the educational field when being posed as a skill that can be developed through abstraction, logical and sequential reasoning of ideas by means of different exercises, whether these relate to mathematics or to human programming or acting. People who develop these computer-based techniques can solve complex problems not only by taking advantage of the computational power of computers but also by the ability of computer languages.

A key concept in programming is that a task or activity is expressed as a series of steps or individual instructions that the computer can execute. As in a recipe, a sequence of programming instructions indicates the behavior or action that must occur (Brennan & Resnick, 2012).

It can be said that “We are faced with a technology that allows transmitting the accumulated inheritance, while making it possible to develop new patterns of thought” (Dwyer, 1974). However, even knowing how important is to foster computational thinking is still under research the best educational technology to use. One possibility could be Pedagogic Conversational Agents (PCAs), which can be defined as “lifelike autonomous characters that cohabite the learning environment creating a rich interface face-to-face with students” (Johnson et al. 2000). These agents can present human features such as emotions, empathy, intelligence or humour. Moreover, they can interact with the students in text or/and voice, and have graphical animation,

PCAs can adopt many different roles such as teachers, tutors, students or companions. In any case, the goal is to support the educational process. For instance, when the agents are used in the role of teachers their goal can be to transmit new knowledge to the students, or to review previous knowledge; while when the agents are used as students, their goal can be to ask the student for information with the belief that whenever students are able to teach information is because they understand it; or, when the agents are used in the role of companions, their goal can be to encourage the students to keep working and devote more effort to the task until its completion.

Domains in which pedagogic agents have successfully been applied are many. For instance, in Biology (Lester et al. 1997), Language (Ryokai et al. 2003; Massaro et al. 2005; Reategui et al. 2007), Maths (Robison et al. 2009), Computer Science (Graesser et al. 2008) or Natural Science (Biswas et al. 2009).

In a previous paper, it was proposed for the first time, to use PCAs to facilitate the development of computational thinking (Morales-Urrutia et al. 2017). To develop such agent, the Methodology for Design and Evaluating agents MEDIE (Tamayo-Moreno, 2017) will be followed. The reason to use MEDIE is that it is not common to find agents in the current classrooms, may be because the lack of knowledge about its existence or, because the belief that it is too complex or expensive to develop an agent.

Complete Chapter List

Search this Book: