Developing an Alarm Manager Based on Web Services 1 Daniela Leal Musa, Marcel Weschenfelder, José Palazzo Moreira de Oliveira Instituto de Informática - UFRGS {musa, mweschenfelder, palazzo@inf.ufrgs.br} Abstract another worry, as in distance learning the teacher is not present to evaluate this aspect. This paper describes an alarm manager aimed Usually, the process of student’s evaluation in web- at monitoring students’ activities in online based courses is performed only through the analysis of courses over the Internet. The goal is to show information collected through tests, exercises or extensive an alarm manager to give more support to reports that contain the log of pages accessed during the distance teaching, and help the teacher to course. That is the reason why counting on appropriate have a thorough follow-up of distance tools to monitor what each student is performing is very students, thus minimizing the teacher’s task of important: problematic situations can be detected and the looking for information in long reports or teacher is warned about each student’s behavior. The complex graphs. Besides, the alarm manager teacher would have access to the particular features of also helps students during their study sessions, each student, and would be able to customize classes to sending extra material, help when it considers each one, making a closer follow-up and guiding the necessary. The alarm manager proposed here student during study sessions. was incorporated into the distance-teaching environment known as Claroline. The In some web-based teaching environments, Artificial propodsed solution is an approach to identify Intelligence agents assess the student’s behavior. An the necessary requirements for alarms agent monitors the processes of interaction between integration with web-based distance teaching students and the e-learning system, aiming at identifying environments situations. the learning process of each student [1]. The higher the amount of information about each student, more suitable 1. Introduction will be the agents’ help. In the majority of teaching environments that use student’s behavior monitoring techniques, the required data about student’s data are Today, most of the web-based distance learning extracted from an analysis of the distance learning server environments have a great concern with the management logs. Such records can provide the behavior of each of their courses, the display of instructional material and student in what concerns files access (pages), which are the availability of communication tools that foster the stored in the server. However, it is necessary to perform interaction between students and teachers. These several searches in these records to obtain information environments lack mechanisms that would enable the that are important and that can help to discover the teacher to perform a more complete and comprehensive student’s behavior. A system of alarms can be used to follow-up of student’s activities during courses. This perform such searches and warn the teacher about what is could happen by the identification of the students’ going on with some of them. knowledge level and their learning pace. The goal of the present article is to show an alarm In distance learning courses, the teacher’s presence is manager to give more support to distance teaching, and not as effective as it is in presential courses. The help the teacher to have a thorough follow-up of distance evaluation of students’ individual efforts is a great reason students, thus minimizing the teacher’s task of looking for of teacher’s concerns, especially when a great number of information in long reports or complex graphs. Besides, participants are involved in the course. Obtaining results the alarm manager also helps students during their study that enable the assessment of the class as a whole is sessions, sending extra material, notes or help when it considers necessary. 1 The work described in this paper was partially supported by grants from CAPES. The alarm manager proposed here was incorporated Some environments propose the use of web-server log into the distance-teaching environment known as files to collect students’ and course’s information. Claroline[2]. It was a way of identifying the necessary Niegemann [5] presents the EDASEQ tool (Exploratory requirements for its integration with web-based distance Data Analysis for Sequential Data) to help in the analysis teaching environments. of student’s navigation history. The tool tracks the web- server log file, converts data to an Excel file and The present paper is organized as follows. Section 2 generates graphs about the student’s navigation. shows some studies that have been developed for students However, a human analysis is necessary to retrieve follow-up in web-based distance learning environments. important information from these graphics. According to Section 3 shows the alarm manager proposed, and Section Niegemann, the tools were not used with real navigation 4 describes the integration with the distance-teaching data; fictitious data were produced to test the tool’s environment named Claroline and the alarm manager. functionality. Section 5 brings some conclusions and future works. The monitoring model presented by Peled [6] is 2. Related works composed of a filter that extracts information from the In general, the student’s behavior is assessed by using information log considered not necessary, like the the agents’ technology developed by Artificial navigator used, the accesses generated with double clicks, Intelligence. Otsuka et al’s [3] model is composed of accesses of teachers or course administrative personnel, interface agents. These agents learn through observation administrative tasks, login, etc. Data resulting from these and monitoring of user’s actions, they work as personal filters remain in text type files. This system was tested in assistants, collaborating with the user and with other a course with 200 students, however no tool had been agents in the accomplishment of certain tasks. The model developed to make visualization of these information proposed by Otsuka is composed of three modules: (1) easier. An exhaustive analysis in texts generated is follow-up module, which tracks the student’s interaction necessary, making the process unfeasible. within the environment and generates reports about their participation; (2) module of behaviour analysis, which Current studies have showed that the majority of selects and presents data that can help in the analysis of techniques used offer final reports with access data and, student’s performance in a specific activity; (3) validation in general, a human analysis is performed to collect module, which is responsible for the construction of the important information from these reports. The teacher student’s profile. Up to the present moment, no result has should search each student’s data but is not aware of what been shown about the efficacy of the model proposed, or is happening during the learning process. There is a need if it has already been implemented or if it is under use. for other alternatives that would allow obtaining information about the student and the use of this The conBa system (CONcept Based) [4] is composed of information in the evaluation process. interface agents able of monitoring and advising students during navigation in the instructional material. The system is composed of two main agents, the professor and 3. Alarm system the tutor. The professor agent offers the interface to the A solution for the problem presented in section 2 is the human-professors, who perform the following activities: use of an alarm system that monitors the processes of (1) manages the course instructional material; (2) student’s interaction with the course environment and discovers, through the tutor agent, which topics the generates a navigation history. The alarm system makes students are learning; (3) modifies the student’s profile, an analysis of this history. When certain situations are informing the tutor agent that a given topic can be detected, the teacher is warned about what is going on considered as acquired. The tutor agent keeps a with some students. Thus, the system is able to discover description of the pages the student accessed, which are when a student stops at a certain point of the course, considered studied topics. These agents do not take meaning he may not have understood the topic decisions, and do not act in the student’s favor. They only approached. Data from this analysis can also be used to generate suggestions based on pages already visited by help students in their study sessions, by stimulating and students and on the structure of the online course. Agents indicating extra material, exercises, etc. The coordinator do not take into consideration the student’s previous of the instructional material can also benefit from an knowledge nor their style and learning pace. It would be alarm system, because information of pages accessed and interesting if the agent could indicate extra material when other about possible problems in the site structure may be student’s needs were identified, and not simply when the sent to the coordinator. Figure 1 shows the architecture of student reaches the module’s end or accesses a specific the Alarm manager. page. chooses the events from a list of elements pre-defined by the alarm system. professor teacher Another information that must be informed at the SistemaAlert de System Alertas alert alerta aluno moment of an alarm creation is the condition that will be learner tested at the moment the event is triggered. Today, the Alarm editor Editor Editor de de alertas alertas Servidor Servidor Alarm managerr Sistema Sistema de E-learning EAD system de EAD condition is informed to the system in the form of SQL de de alertas alertas administrador queries, thus requiring the teacher has notions on the administrator language and on the structure of the environment’s data Base Base de de database Monitor Monitor de de event monitor Base Base Dados Dados Sistema Sistema database model. A solution that exports the teaching environment Dados Eventos Eventos Dados EAD EAD logic structure to the teacher and another form of the conditions representation is under study, so that the Fig.1. Alarm system architecture teacher can create his or her own alarms with no knowledge on SQL language. The alarm system is composed of the following modules: alarm editor, events monitor, monitoring The alarm action must be informed at the moment the module, database, Log and alarm manager, which we alarm is created, and it can be a message in the navigator present in details in the following sections. or in the e-mail. The message receiver, who can be the teacher, the student or the course administrator, must be informed. The type of action and the receiver are selected 3.1 Alarms creation and edition from a list previously defined, and it is not possible to Teachers or administrators use the alarm editor to insert a new action or receiver. define alarms used in the follow-up of student’s activities. In this environment, each teacher can create alarms for Data informed for the creation of an alarm are stored in their courses or select alarms that were already defined by the database shown in Figure 1. It is possible to make other teachers. Figure 2 shows the user’s interface for the new searches, insertion and deletion of alarms through the definition of alarms in the current implementation of the Alarm editor. Any other teacher who participates in the system. system can use an alarm that has already been defined by a teacher. An alarm is composed of: (a) a triggering event, (b) one or more conditions that must be verified, and (c) an 3.2 Monitoring action that must be performed. Events are indicators of different situations, they can be two types: (a) The alarm system has a monitor of events that happen environment’s events, which are events the teacher or the in the teaching environment database. The monitor student generates during their interaction with the consists basically of an interpreter of SQL commands. It teaching environment. Examples of this type of event are receives an SQL command as parameter (Insert, Delete, the student’s logon, the end of some exercise or access to Update) that will be performed in the teaching a certain page; (b) temporal events: some situations must environment. The alarm server receives a warning from be checked in a certain period of time, once a week, for the monitor of events informing that some important example. This type of event depends on time and not on event has taken place. After the warning, the alarm server some situation that happened because of an interaction verifies the conditions associated to that event. If the between the user and the environment. condition is true, the action indicated in the database of the alarm system is performed. An alarm is represented by ECA (event-condition- action) rules, that is, when an event takes place, a The alarm manager also stores the history of all alarms condition is checked and if it is true the action is generated so that it is possible to perform statistics about performed. Rules are expressed as follows: the student’s performance during the course. On event IF THEN 4 Integration of the alarm system into the Claroline system When the alarm is created, the teacher selects the alarm-triggering event. In the current version of the The alarm system we presented in the previous section system, the teacher cannot include a new event, and only was integrated into a distance-teaching environment so that the main requirements of integration of alarm systems into distance teaching environments could be identified. This section describes this integration in The communication between Claroline and the further detail. The alarm system was integrated into the monitoring web service is carried out through SOAP Claroline environment, which is distance-teaching (Simple Object Access Protocol); a protocol based on software developed at the UCL (Université Catholique de XML (Extensible Markup Language) and establishes a Louvain) and is open code. Currently, 500 students and communication path among applications in different 20 professors of the Computer Science Institute of domains [7]. In the present study, SOAP uses an HTTP Universidade Federal do Rio Grande do Sul are using the transfer protocol to send messages of remote functions software. Professors use the environment to make request. HTTP facilitates the transportation of SOAP instructional material, exercises, and tasks schedules messages among systems because firewalls usually do not available, as a complement to presential classes. block the access to the HTTP port. The fact that XML messages are text-based justifies the possibility of Claroline was chosen for special reasons. First, communication among different platforms. because the environment adopts the policy of GPL open code software, a very important requirement in our work. The Claroline system underwent small changes in Second, Claroline was developed in PHP language and order to call the monitoring web service. We highlight MySQL database, the same used in the implementation of that the performance of the SQL command by Claroline the alarm system, what made the integration between remains the same. The monitoring web service only systems easier. The environment’s source code is easy to determines the action to be taken in case there is an ECA understand its structure has environment variables and rule defined. functions libraries, what helps the addition of other software modules. 4.2 Implementation tests In order to validate the alarm system integration with 4.1 Monitoring the Claroline environment, some alarms were defined and activated in the environment. Two types of actions were There is a monitor of events that occur in the implemented: sending e-mails and calling of remote teaching environment’s database (Claroline). The monitor functions through a web service. performs actions in the occurrence of a critical event. Figure 2 represents the Claroline structure integrated with The first action consists basically of sending e-mail to the event’s monitoring system. all students of the same class about the scheduling of a new task. In Claroline, scheduling works as follows: the teacher accesses the system and schedules a test or Eca rule homework. Scheduling data are stored in the Claroline DB interface database and can be seen when the student accesses the server course’s page. To make the teacher’s work easier and help the student, the monitor of events identifies the claroline database addition of a new task in the scheduling table and sends e- Learner mail to all students with the new item. This happens in a interface transparent mode to the teacher, who does not need to Teacher professor file interfere in the process. The administrator registers the message that will be sent. Besides, an action that calls a remote procedure, a web service, was also implemented. In order to test this Figure 2 - Claroline integrated to the module functionality we used the model described in [8], which of events monitoring defines a central data repository that contains information about students from different distance teaching The monitor consists basically of an interpreter of SQL environments. It was necessary to develop an action that commands. It receives as parameters: an SQL command enabled Claroline to send its student’s data to the from Claroline, the user’s ID and the course ID. With repository, so a web service was created and named these parameters it is possible to identify the event Notify_Data. The function implemented to perform this (INSERT, DELETE, UPDATE) and the table where it is action is specific for events in the Claroline’s table that taking place. The monitor of events was implemented as a stores the student’s registers. Its main goal is to call the web service, offering a practical and efficient way for remote procedure named Notify_PersonalData from the applications communication and data exchange over the Web-service defined by Musa. This procedure warns the Internet [7]. repository that new data have been inserted in the Claroline database and requests authorization to insert teatched at II-UFRGS to gather a big amount of real them in the repository. experimental data. We hope this experience can give a step further on the contributions to make Distance During informal conversation with some students and Education a feasible alternative in the educational teachers who used the system and received alarms, we process. noticed they found some alarms interesting and some inconvenient. Alarms that suggest content to be studied or exercises were considered positive. Alarms that send the 6. References students an e-mail reminding them to access the course after an idle period were considered inopportune. [1] Viccari, Rosa. (1998) Artificial Intelligence and The teachers suggested an alarm should be sent after a Educacional Systems. Journal of School n.2, Olivais, certain period of time, i.e., the alarms generated should be vol I, 1998. sent to the user gathered in a batch. This suggestion can be applied to some kinds of alerts. [2] Claroline System. Available at: http://www.claroline.net 5 Conclusions and Future work [3] Joice Lee Otsuka, Heloisa Viera da Rocha: An Agent- Based Approach to Support Formative Assessment. The alarm system presented in this article was ICCE 2002: 1486-1487 implemented as a generic module, so that it can be attached to other web-based teaching environments. [4] Roda, C. A multi-agent system for advising and Aiming at validating the use of this system in a e-learning monitoring students navigating instructional Web system, it was integrated into the Claroline environment, sites." In 6th International Conference on Information which is being tested by a great number of users, students Systems Analysis and Synthesis (ISAS 2000), Special and professors, of the Computer Science Institute of session on Cooperative and Distance Learning. UFRGS. An advantage was the choice for an environment Orlando, Florida. July 2000. 505-509 developed within the policy of open code software. The [5] Niegemann, H. (2002) EDASEQ – A log file analysis entire source-code and the database could be fully program for assessing navigation processes – accessed and changed whenever required. One of the Proceedings of the 8th International Conference on main difficulties found during the integration was the fact Computers in Education / International Conference on that the alarm system needed the e-learning system to Computer-Assisted Instruction 2000. Taipei, Taiwan. inform data about the teaching environment database. Besides, the alarm conditions are expressed as SQL [6] Peled, A. (1999) Logging for Sucess - Advancing the queries, what constrains the use of the environment. A Use to Improve Computer Mediated Distance different way of solving these drawbacks is under Learning - Journal of Educational Computing investigation. The information of data regardless of the Research. v. 21, n. 3, 1999. administrator’s presence is under study too, as well as a [7] Tsalgatidou, A. and Pilioura, T., An Overview of language or editor that has conditions already defined to Standards and Related Technology in Web Service. be used at moment of the alarms edition. In Distributed and Parallel Databases, vol. 12, p. 135 As the alarms are being generated in the Claroline – 162, ISSN:0926-8782, 2002. environment, it is possible to capture data that are [8] Musa, D.; Palazzo, J. M.O.; Sharing Learner essential for the validation of this model both for Information through a Web services based Learning student’s activities follow-up and as a way of keeping Architecture. IN WEB INFORMATION SYSTEMS them motivated in the course they are taking. Some MODELING, WISM, 2004, Riga, Latvia. CAiSE results have already been obtained and were shown to be Workshops , Riga, 2004. p.122–131. quite promising, being important indicators of the system’s success. Now we are offering the possibility of alarms management for the full set of courses being