AN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS



Similar documents
An Engagement Model for Learning: Providing a Framework to Identify Technology Services

Scenario-based Requirements Engineering and User-Interface Design

StreamServe Persuasion SP4 StreamServe Connect for SAP - Business Processes

A QTI editor integrated into the netuniversité web portal using IMS LD

Microsoft Dynamics GP. Collections Management

Modeling the User Interface of Web Applications with UML

Producing Standards Based Content with ToolBook

Semantic Web Services for e-learning: Engineering and Technology Domain

SYSTEM DEVELOPMENT AND IMPLEMENTATION

CONCEPTUAL MODELING OF LARGE WEB SITES

A QTI editor integrated into the netuniversité web portal using IMS LD

Task-Model Driven Design of Adaptable Educational Hypermedia

Chapter 5. Regression Testing of Web-Components

INFSCI 2480 Adaptive Web Systems User Models for Adaptive Hypermedia and Adaptive Educational Systems

Requirements. Approaches to user support. Command assistance. Chapter 11 User support

Going Interactive: Combining Ad-Hoc and Regression Testing

Selbo 2 an Environment for Creating Electronic Content in Software Engineering

PLATO Web Learning Network Learner's Guide

Microsoft Dynamics GP Release

Program Visualization for Programming Education Case of Jeliot 3

A Brief Analysis of Web Design Patterns

Instructional Design Models. UBC/KFUPM Workshop 2009

One Approach of e-learning Platform Customization for Primary Education

Lesson 4 Web Service Interface Definition (Part I)

Efficient Agent Based Testing Framework for Web Applications

Web services to allow access for all in dotlrn

elearning Instructional Design Guidelines Ministry of Labour

PLATO Orientation Guide #1 PLATO Website and Account Information

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach

Smartphone as a Remote Control Proxy in Automotive Navigation System

AN ADAPTIVE WEB-BASED INTELLIGENT TUTORING USING MASTERY LEARNING AND LOGISTIC REGRESSION TECHNIQUES

Helpful Links 8 Helpful Documents 8 Writing History 9 Pending Peer Reviews 9 Navigation Tabs 10 Changing Courses 10

MultiSite Manager. Setup Guide

User experience storyboards: Building better UIs with RUP, UML, and use cases

CS 565 Business Process & Workflow Management Systems

Web-based Multimedia Content Management System for Effective News Personalization on Interactive Broadcasting

Microsoft Dynamics GP. Field Service Preventive Maintenance

ProGUM-Web: Tool Support for Model-Based Development of Web Applications

VCCC Appliance VMware Server Installation Guide

Collaboration Technology Support Center Microsoft Collaboration Brief

Customer Bank Account Management System Technical Specification Document

Windchill Service Information Manager Curriculum Guide

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

2. HUMAN-COMPUTER INTERACTION AND THE WWW

Information Model for Multimedia Medical Record in Telemedicine

CONTENT-DRIVEN DESIGN AND ARCHITECTURE OF E-LEARNING APPLICATIONS

Optimization in a Secure Windows Environment

Perform this procedure when you need to add a recurring payment option, or when you need to change or withdraw it.

Extending Desktop Applications to the Web

An Online Automated Scoring System for Java Programming Assignments

Title Page. Hosted Payment Page Guide ACI Commerce Gateway

SemWeB Semantic Web Browser Improving Browsing Experience with Semantic and Personalized Information and Hyperlinks

Christine E. Lynn College of Nursing Florida Atlantic University

Concept-Mapping Software: How effective is the learning tool in an online learning environment?

Medworxx Learning Management System Manager Guide. Supplement. Importing SCORM Compliant Learning Items

Eclectic Computing. Time Tracking Tool Software Architecture Document. Version <1.3>

Pre-Requisites EDAM-5001 Early Literacy Guiding Principles and Language

XFlash A Web Application Design Framework with Model-Driven Methodology

GenericServ, a Generic Server for Web Application Development

An Architecture for Web-based DSS

PHP Code Design. The data structure of a relational database can be represented with a Data Model diagram, also called an Entity-Relation diagram.

Manual English KOI Desktop App 2.0.x

An Integrated Approach to Learning Object Sequencing

Semantic Knowledge Management System. Paripati Lohith Kumar. School of Information Technology

A DIAGRAM APPROACH TO AUTOMATIC GENERATION OF JSP/SERVLET WEB APPLICATIONS

WIMP: Windows, Icons, Menus (or mice), Pointers (or pull-down menus) Kathy Lynch and Julie Fisher Topic Overview. Suggested Readings.

Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object

Web services with WebSphere Studio: Deploy and publish

IBM Operational Decision Manager Version 8 Release 5. Getting Started with Business Rules

Angel Learning Management System Introductory Tutorial for Students

Personalized e-learning a Goal Oriented Approach

Business Process Management IBM Business Process Manager V7.5

Accessing Data with ADOBE FLEX 4.6

Disciple-LTA: Learning, Tutoring and Analytic Assistance 1

Software Development Kit

Automatic Timeline Construction For Computer Forensics Purposes

Virtual Archival Exhibition System: An Authoring Tool for Developing Web-based Virtual Exhibitions

Transcription:

AN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS ZORAN JEREMIĆ, VLADAN DEVEDŽIĆ, DRAGAN GAŠEVIĆ FON School of Business Administration, University of Belgrade Jove Ilića 154, POB 52, 11000 Belgrade, Serbia and Montenegro jeremycod@yahoo.com, devedzic@galeb.etf.bg.ac.yu, gasevic@yahoo.com The paper describes design of the Design Pattern ITS system, an intelligent tutoring system for learning Design Patterns. The basic idea of this system is a systematic introduction into the concept of most frequently used classes of patterns. An individual course is generated automatically for a given teaching goal and is dynamically adapted at run time to the student s individual progress and preferences according to the teaching expertise. The system provides explicit support for adaptive presentation constructs, and admits external navigation mechanisms and user model update strategies. At this point the system has been implemented and experimented in the domain of integration of elementary 1. Introduction Design Pattern is an intelligent tutoring system (ITS) for learning design patterns. The Tutor gradually introduces student with the concept of design patterns and describes most frequently used classes of patterns. The issue imposed in course realization of this problem, the Design Patterns book [1] should support this course. The course for learning Design Patterns is divided into three main sections, creational patterns, structural patterns and behavioral patterns. The ITS system for learning the Design Patterns, described in this paper, makes tutorial model of learning the Design Patterns possible, as well as independent study of patterns for more advanced students. The system provides an intelligent representation of educational material adjusted to student performance, such as degree of backward knowledge, desirable detail level, assessments of the system on the level of student s acquaintance with the matter being currently taught, as well as with the entire material. During interaction of a user with the system, the Tutor monitors the performance of the student, same resulting in change of student characteristics in the Student model. These assessments are provided through interaction of a user with the system by way of tests and solving problems. Assessments obtained through such interactions are compared with the other parameters and assessments in order to get the final judgment of a student. Figure 1 depicts the system's architecture, composed of the Pedagogical module, Expert module, Student model, Domain model, Coordinator and GUI [2].

Figure 1. Design Pattern system architecture main components of the system and relations among them Pedagogical module provides the knowledge infrastructure necessary to tailor the presentation of the teaching material according to the student model. Expert module uses Jess (Java Expert System Shell) as a rule-based inference engine. Pedagogical module uses the Expert module for making decisions in curriculum sequencing and evaluating the student model. Domain model contains the knowledge about design patterns and the actual teaching material. Coordinator controls the functionality of the whole system. We use an HTML-based GUI on the client side and Tomcat 4.0 Web Server as JSP container on the server side. 2. Student modeling Student model stores details about the student's current problem-solving state and long-term knowledge progress, essential for adapting the material to the student's characteristics (attributes). In this paper, three categories of student's characteristics are considered [3]: 1/ Personal data - the student's personal characteristics (name, ID, e-mail...). 2/ Performance data - the student's cognitive and individual characteristics, as well as other general long-term characteristics. 3/ Overlay data - the current level of mastery of design patterns and attributes related to the corresponding elements in the domain model.

There is a number of techniques for modeling student; the most frequently used ones are overlay model, stereotype model, and combination model [4]. We used the combination model in the Design Pattern system. When the student registers to the system for the first time, the newly created student model is initialized with default values from a stereotype. It is the system that selects the stereotype, based on the student's initial interaction with the system. Design Pattern gradually introduces other characteristics into the student model based on the estimated student's knowledge, such as degree of mastery, experience level, learning style, detail level, etc. Attribute values in the student model are calculated by applying a dedicated group of rules and simple functions from Pedagogical module. The values are updated throughout the session. At the end of each session, the system stores the student model as an XML document. The next time the student logs onto the system, the data from the stored XML document are used to initialize the student model. 3. Components of the Student model Several components in the Pedagogical module make decisions about the student model. The decisions are related to the selection of an appropriate topic for the student, selection of an appropriate learning method, curriculum sequencing, and so on. During such processes, the Pedagogical module communicates with the student model in order to get relevant information. Figure 2. Student model component's: 1-Student model, 2-Student model creation and management components, 3-Student models database

The student model has two components (see figure 2): 1/ Performance model stores data related to the assessment of the student's overall skills, as well as data related to the student's previous knowledge, learning style, etc. 2/ Teaching history model keeps track of the material presented to the student during the session and the student's mastery of teaching units [5]. Other three components take part in creating the student model as well (see figure 2): 3/ Data Reader enables reading-in the student model data from the XML document; it is based on SAX Parser, and is invoked at the beginning of the session. 4/ Data Writer stores the student model to the XML document at the end of each learning session. 5/ Session Manager coordinates all other components. 4. Curriculum sequencing Curriculum sequencing is one of the key functions in an intelligent tutoring system. In our approach, curriculum sequencing is realized by Pedagogical module component. Domain model organize instructional units into a hierarchy of topics, lessons, fragments and tests, which are related by prerequisite, part-of and other relationships. Pedagogical module of Design Pattern system is composed of three functional modules: Instructional Planner Feedback Mechanism Assessment Component. The main purpose of the Instructional Planner is to provide system with instructional plan based on student knowledge of domain matter. Instructional plan is composed of variable sequence of instructional plan items, e.g. a list of topics, a list of lesson, etc. The Instructional Planner is composed of the following components: Instructional Plan Generator Discourse Planner. Instructional Plan Generator is responsible for building the instructional plan that will be executed to produce the teaching session; in fact, this component is the real instructional planner. Discourse Planner is responsible for execution of instructional plan. It also monitors the performance of the student in order to check if the plan is still appropriate. If Discourse Planner decides that the current plan is not valid for the

rest of the session then Instructional Plan Generator should consider the current situation and modify the plan in order to take into account the new condition. If a student is having a session with Tutor for the first time, system gives him a set of exercises and tests before the tutoring process starts. In this way, the student model estimates the new student s background knowledge and determines initial values. After the initial assessment of the student, knowledge system runs in teaching mode. At the beginning of this mode, system develops an initial plan of teaching actions. The plan is based on the contents of the lesson being presented, the relevant pedagogical rules and the student model. The plan represents a detailed outline of the lesson presentation. At the end of presented topic, the Tutor runs at examination mode. It generates exercises and tests for the student and assesses his knowledge. During the session, system observes and adapts the student progress with the generated course. If the student answers the test items correctly, he progresses along the course and no changes to the course are necessary. However, if the student fails to answer the test items correctly, the system must modify student performances. If the student s performance does not meet expectations, the course is dynamically re-planned. Through dynamic regeneration, each student is able to get a highly personalized course for his needs [6]. The system must memorize each activity of a user and the system, as well as all assessments of a student, updating the student model. Theses data may be used to prepare instructional plan, as well as to give advice and recommendations for further work [7]. 5. Course material organization and delivery Design Pattern Tutor dynamically generates course material by taking into account a specific learning goal and the initial level of the student s knowledge. During the session, system observes and adapts the student progress with the generated course. If the student s performance does not meet expectations, the course is dynamically re-planned. Through dynamic regeneration each student is able to get a highly personalized course for his needs. Design Pattern Tutor provides control over presentation design, by using an explicit presentation separate from contents. Course unit presentation is defined by creating a common template for each class of the ontology (topic, lesson, and test). Templates are defined using a textual language based on Java Server Pages, which allows insertion of the part of the chosen course unit into HTML code. Student interaction with the system is implemented by using HTTP protocol. System uses HTML compatible Web browser on the client side, and Tomcat 4.0 Web Server as JSP container on the server side [8]. During the session, system observes and adapts the student progress with the generated course. Domain model of Design Pattern Tutor is made up of concepts, which correspond to one pattern. Each concept is divided in units the elementary

pieces of domain knowledge. There are a fixed number of units in particular concept, but the size of unit is not fixed. The system uses unit variants technique, which consists of keeping two or more alternative pages with adapted content, e.g. one for each knowledge level: beginner, intermediate and expert. Each unit has an arbitrary number of fragments a chunk of information that should be presented to the user. The user model and the concept relationships of the domain model provide the information that allows the system to determine which chunk of information should be presented to the user. The chunk of information may also consists of fragment variants, i.e. fragments related by an or relationship. Figure 3. A Web page shows a screenshot of Design Pattern Tutor The system provides students with two kinds of navigation through the course material (figure 3):

Direct guidance The student sees only one options to continue with the browsing activity i.e. just one button to navigate to the next page is displayed. The destination of the best link is determined by the system. Link removing advanced students could choose which topics to learn by selecting appropriate link from content menu, but links that the system considers inappropriate are removed, i.e. they are not longer available. Anchors of these links are replaced by text. The student has the option of letting the Tutor choose the next topic or choosing it himself. In both cases, the student must achieve sufficiently ready score for the topic. The topics are represented in a dependency graph, with links representing the relationship between topics, which include prerequisite and related topic. A student is ready to learn a topic only if he has performed sufficiently well on its prerequisites. At the end of each topic student has to complete test. If the student fails to give correct answers, the Tutor must provide an alternative learning path to the student, such as a hint. If the learner tries to move on to a new topic before the Tutor feels that the student has explored the current topic sufficiently, the Tutor will generate a warning, suggesting better exploration of the current topic. These warnings also remind the student of the availability of hints. The student can choose either to follow the advice or to move on. 6. Conclusion A prototype of Design Pattern system is implemented using Java so that the system can run on heterogeneous platforms. It consists of Pedagogical model, Expert model, Domain model, Coordinator, GUI. The student model of the Design Pattern ITS is functionally fully decoupled from the other components of the system. This approach to student modeling uses a combination of stereotype and overlay techniques. Its main advantage compared to other similar models is a universal approach to model creation. The approach is not strictly related to design patterns as the domain of teaching/learning. It can be applied to ITS in any domain without changes or with a few changes, depending on the requirements of the pedagogical module. Curriculum sequencing is based on execution of instructional plan generated based on student knowledge of domain matter. Course units are generated dynamically from domain model by using adaptive presentation templates. There are several directions in future research and future development of the Design Pattern system: development of a case-based generator of new problems for student, development of a graphical authoring tool for domain model maintenance.

7. References 1. E. Gamma, et al, Design Patterns Elements of Reusable Object-Oriented Software, Addison-Wesley Publishing Company, (USA, 1995). 2. V. Devedzić, Knowledge Modeling State of the Art, Integ. CAE, Vol.8, No 3, pp. 257-281, (2001). 3. Zoran Jeremić, Vladan Devedžić, Design Pattern ITS: Student Model Implementation, The 4th IEEE Int. Conf. on Advanced Learning Technologies, Finland, forthcoming, (2004). 4. O. Conlan, Novel Components for supporting Adaptivity in Education Systems Model-based Integration Approach, In Proc. of the 8th ACM Int. Conf. on mult., pp 519-520, (CA, USA, 2000). 5. Z. Yuijian, M.W.Evens, A Practical Student Model in an Intelligent Tutoring System, In Proc. of the 11th IEEE Int. Conf. on Tools with AI, pp. 13-18, (USA, 1999). 6. P. Brusilovsky, J. Vassileva, Course sequencing techniques for large-scale webbased education, Int. J. Cont Engineering Education and Lifelong Learning, Vol. 13, Nos. 1/2, pp. 75-94, (2003). 7. J. Prentzas, I. Hatzilygeroudis, J. Garofalakis, A Web-Based Intelligent Tutoring System Using Hybrid Rules as Its Representational Basis, In Proceedings of the 6th Intern. Conference, ITS, pp. 119-128, (France and Spain, 2002). 8. J.A. Macias, P. Castels, Adaptive Hypermedia Presentation Modeling for Domain Ontologies, In Proc. of 10th Int. Conf. on HCI, pp. 710-714, (USA, 2001).