E-Learn: World Conference on E-Learning in Corporate, Government, Healthcare, and Higher Education, Oct 15, 2007
E-learning has advanced considerably in the last decades allowing the interoperability of differe... more E-learning has advanced considerably in the last decades allowing the interoperability of different systems and different kinds of adaptation to the student profile or learning objectives. But, some of its aspects, such as E-testing are still in their early age. As a consequence, most of the actual E-learning platforms only offer basic E-testing functionalities. In addition, in most those platforms, the tests are in the traditional format despite their known limitations and precision problems. However, by making efficient use of well known techniques in artificial intelligence, existing theories in psychometry and standards in E-learning, it could be possible to integrate adaptive and more informative E-testing functionalities in the actual E-learning platform. Some experiments have been done with the Moodle platform. In this paper, we will present the some of principles, the architectural elements and the algorithms used.
Uploads
Papers by Martin Lesage
This software application has been developed to replace traditional courses in presence. The application is designed to provide distance learning and assessment to persons who couldn’t attend classes. The application can easily be used by teachers and assessors to assess at distance courses, homework and performances. Its formative and summative assessment functionalities allows the application to present the course material contained in the curriculum and also to assess students while they perform complex assessment tasks included in the course schedule. The software application will allow schools and universities to do online course design and to qualify or graduate students that have used the application to follow distance courses.
This software application have three categories of users that are students, assessors and course administrators. The students, that are the first category of users, are learning the course material and perform the different assessment tasks of the curriculum as team members, team leaders and team managers. In the actual context of the software application, a team manager in training, equally defined as an administrator in training, is a student assigned to a management task allowing him to be the supervisor of team leaders. The team leader or the team administrator is not the course administrator or the system administrator. In the present application context, the course or the system administrator is a teacher or a computer system programmer in charge of the entry of course material in the system, the entry of student’s data and the grouping of the teams of students (aggregation function). The students are producing the course formative assessment of themselves (self assessment) and their teams while the course assessor is producing summative assessment of the students, the teams and the overall task. In the present application, the students does not provide marks or summative assessment. The formative assessment produced by the students consists of self-assessment, peers assessment, assessment by the team leader and the assessment of the team manager. The students can also give formative assessment on the level of realization of the task preformed by their team or the overall performance of the entire work done by all the course teams, this producing the entire formative assessment of all the work done by the course.
The second category of users are the assessors. The assessors are usually teachers, professors, course lecturers or instructors. The assessors have two main duties in the distance assessment process. They have to produce the summative assessment and to initiate the hierarchical aggregation process by grouping the students teams. The assessors are producing summative assessment by marking homework, exams, tasks and performances that students, teams and courses have produced during assessment tasks. The constitution of student’s teams is the hierarchical aggregation process of the software application. During this process, the assessor is gathering the teams of students and assign each student a position that could be team member, team leader or team manager. The team manager position is the highest assignment that a student could detain. The team manager or team administrator in training is the person who commands team leaders. Finally, the third category of users are the course administrators. As previously stated, the course administrators are the persons that are creating new distances courses in the application course database or modifying already existing courses. They can also manage students database by adding new students, modifying information on already registered students and removing students that have quitted courses.
Furthermore, the user interface allows the application to be suitable for mobile learning with wireless technologies portable computers as IPOD and Blackberry. Military personnel in combat missions will be able to learn new skills or courses and to qualify themselves even if they are away from the country and homeland military schools. Universities and schools will be able to extend their reach to students living far away from the campus or unable to assist courses in presence for any reasons. Traveling salesmen could learn information on new products, supervise sales teams and provide new products information or demonstrations directly at the client’s location.
To be able to use the software application as student, assessor or course administrator, the application provides this actual downloadable user’s guide. The guide introduces the design of a simple map using training course with only one task of navigation with map to be performed in teams. Despite the triviality of the described example, it will be easy for the reader to implement any type of courses with all kinds of complexity into the application after the study of the practical and theoretical concepts presented in the guide. The actual guide have over one hundred pages and this could be considered a large amount of reading for some users. However, the authors think that all the information contained in the guide is essential to use all the application functionalities and to implement the map using training course used as an example. All of the course material of the example is downloadable from the application for the users that wants to learn by doing their own implementation of the example.
process in the field of education. The current doctoral project therefore implements a solution to allow the assessment of teams with several levels of hierarchy in the field of education. Usually, when a teacher assesses the work of several students, the assessment is the same for
all of the students. This allows the teacher to make a judgment on the achievement of the learning objectives by the students as well as to rank them according to the results obtained. However, in some
cases, there may be complex courses, performances, assignments, productions, homework, exams, or assessment tasks that can be completed as a team and these teams may have multiple levels of
hierarchy. In this case, the assessment parameters are not necessarily the same for all the students and can thus vary according to their hierarchical position within the team. Some students will simply be members of a team, while others will be team leaders or even group administrators that supervise team leaders. Furthermore, for educational purposes, teams can be formed or reconfigured during the same semester so that their members can occupy different hierarchical positions during the same assessment task. This research project is particularly interested in such evaluation and assessment situations. This research focuses more specifically on the development and programming of an Internet
application for the implementation of a hierarchical aggregate assessment and evaluation process. The application includes assessment and evaluation grids whose criteria vary according to the hierarchical
position of the members of a team. To do this, the application developed must include an aggregation processes that allows the formation and dissolution of teams with several levels of hierarchy, implement formative and summative assessment processes that change according to the hierarchical level or position of the members of the team as well as features for presenting complex assessment tasks to teams with several levels of hierarchy. Following considerations related to the theoretical
framework, it appeared necessary to define two specific objectives of that doctoral research project that are (1) the development of a computer application meeting the list of criteria defining the hierarchical aggregate assessment process as well as (2) the testing of the application to verify its functionality and user satisfaction by experimental subjects that were experimenters, teachers, professors, high school students and Army Cadets.The Cluster Internet application was developed in PHP with a MySQL database by the Cdame research laboratory according to a research and development methodology. The first functional
testing was performed by researchers at the Cdame research center. During this stage, the researchers tested the proper functioning of the software, the aggregation process, the assessment grids as well as
the presentation application for teamwork complex assessment tasks with several levels of hierarchy. The operation of the application and the functionality of the user interface were tested in subsequent
iterations. The second functional test was performed by researchers from CDAME as well as by other professors and students from UQÀM. The second functional testing aimed to test the Internet application in computer laboratory by the presentation of a complex assessment task for teams with several levels of hierarchy in which the researchers were playing the part of team members that were assigned different hierarchical positions. The application was then subjected to two empirical tests. The first was performed as part of an educational internship and resulted in several modifications to the application. The second took
place within the organization of Army Cadets as part of training on cartography with land navigation using map reading and compass in teams by doing patrols of a determined area. Testing of the
application with experts, teachers and students has shown that the «Cluster» Internet software application effectively allows teamwork to be managed. That being said, the development related to the assessment according to the hierarchical position will unfortunately require re-testing with other students in the future to see if they are successful in participating in the hierarchical aggregate assessment of learning process and to take advantage of all its possibilities. It was also observed that
some users had difficulty using the application and understanding how it works. One of the testing phases observed that the teaching internship curriculum was not sufficiently adapted to include the use of the «Cluster» Internet software application. Furthermore, the time that users spent familiarizing themselves with the operation of the Internet application was considered too long in the case of experiments with high school students as well as with Army Cadets.Improvements will have to be made for future use of the «Cluster» Internet software application, mainly with regards to the XML, SCORM and IMS QTI standards. Considering further developments for the actual research, it would be relevant to think about developing a hierarchical aggregate assessment software activity module compatible with Moodle so that teamwork assessment could be easily implemented in the Moodle environment which has already been adopted by several academic institutions. Finally, constraints both with regards to training programs and current pedagogical practices make the implementation of a process for the assessment of the learning of
teams with several levels of hierarchy quite difficult. Eventually, the experimentation of hierarchical aggregate assessment process should be associated with an appropriate pedagogical scenario and also could be implemented in parallel programming. These two last considerations could also be the subject of other research projects.
Know the basic concepts, techniques and applications of artificial intelligence.
Heuristic methods of problem solving; search algorithms in trees and graphs; representation of knowledge; expert systems; processing of natural languages; pattern recognition; neural networks. History, results, challenges and limitations. Introduction to LISP or PROLOG language.
Prerequisite (s): INF11299 Programming II
INSERTING THE COURSE INTO THE PROGRAM
This course is an optional course for students of the bachelor's degree in mathematics-computer science. It has as a formal prerequisite the course INF11299 Programming II but also requires knowledge acquired in data structures and algorithms.
COURSE OBJECTIVES
- Acquire basic notions in the main fields of artificial intelligence and study the different concepts and techniques of this discipline; and
- Become familiar with a programming language characteristic of artificial intelligence.
COURSE CONTENT
The course is mainly based on the following compulsory reference book and course notes provided by the teacher:
Bratko, Ivan
Prolog programming for artificial intelligence, 3rd edition
Addison-Wesley, 2000
ISBN: 0-201-40375-7
Know the basic concepts, techniques and applications of artificial intelligence.
Heuristic methods of problem solving; search algorithms in trees and graphs; representation of knowledge; expert systems; processing of natural languages; pattern recognition; neural networks. History, results, challenges and limitations. Introduction to LISP or PROLOG language.
Prerequisite (s): INF11299 Programming II
INSERTING THE COURSE INTO THE PROGRAM
This course is an optional course for students of the bachelor's degree in mathematics-computer science. It has as a formal prerequisite the course INF11299 Programming II but also requires knowledge acquired in data structures and algorithms.
COURSE OBJECTIVES
- Acquire basic notions in the main fields of artificial intelligence and study the different concepts and techniques of this discipline; and
- Become familiar with a programming language characteristic of artificial intelligence.
COURSE CONTENT
The course is mainly based on the following compulsory reference book and course notes provided by the teacher:
Bratko, Ivan
Prolog programming for artificial intelligence, 3rd edition
Addison-Wesley, 2000
ISBN: 0-201-40375-7
Understand the concepts encountered in programming languages.
Grammar, syntax and semantics of a language. Concepts: simple types, objects, heredity, polymorphism, confinement, structured types. Instructions: expressions, switch loops. Functions and procedures: coroutines, parameter passing modes, visibility of identifiers. Comparative study of some languages.
INSERTING THE COURSE INTO THE PROGRAM
Elective courses in the Computer Science Bachelor Program
Prerequisite: INF-112-03 Programming II
COURSE OBJECTIVES
Become familiar with the different concepts used in programming languages
Learn new concepts absent from the languages seen in the other courses of the program
Learn to make up for the absence of a concept in a language
Learn some concepts essential to compiler theory
Develop self-learning skills in new programming languages
Familiarize yourself with two or three programming languages
COURSE CONTENT
The course is mainly based on reading course notes. The students will be able to find in the library reference books on the languages LISP, COBOL, SMALLTALK, PASCAL and the PASCAL object of BORLAND.
Know the databases and their use.
Database concept. Relational data model: relational algebra, SQL query language, access to a database from an application program, views. Integrity and security mechanisms. Indexing. Typical software. Applications.
INSERTING THE COURSE INTO THE PROGRAM
This course is compulsory for Bachelor of Computer Science students and is optional for Certificate in Computer Science students. The prerequisite is INF-112-99 Programming II and it is itself a prerequisite for the course INF-452-99 Complements on databases.
Understand the principles and issues of software design, implementation and maintenance.
Principles of architecture, design and production of software. Role of design in the software lifecycle. Architectural models: tiered, layered, distributed. Learning and evaluation of design methods. Design tools. Application frameworks and design patterns. Prototyping. Quality assurance: code proof methods, program inspection, unit, functional and system testing. Maintenance management. Software reuse and reverse engineering.
Understand the principles and issues of software design, implementation and maintenance.
Principles of architecture, design and production of software. Role of design in the software lifecycle. Architectural models: tiered, layered, distributed. Learning and evaluation of design methods. Design tools. Application frameworks and design patterns. Prototyping. Quality assurance: code proof methods, program inspection, unit, functional and system testing. Maintenance management. Software reuse and reverse engineering.
This course is compulsory for Bachelor of Computer Science students and is optional for Certificate in Computer Science students. It has INF-111-99 Programming I as a prerequisite and is itself a prerequisite for most of the second year courses.
The aim of the course is to bring the student to develop a mastery of programming and concepts of development of computer projects. The application of these concepts will be tested by the development of projects in the C ++ programming language supported by a graphical environment (C ++ Builder).
COURSE OBJECTIVES
Here is a slightly more exhaustive list of the objectives of this course:
master a programming language (C ++),
master a programming environment (C ++ Builder),
become familiar with object-oriented programming,
become familiar with the new concepts and tools provided in the Builder version of the C ++ language,
learn to use pointers and pointed structures,
develop the skills to algorithmically solve problems of moderate complexity,
set standards for program documentation and presentation; and
learn to refine and validate programs.
This course is not intended to teach you C ++ Builder. It should be understood that Builder is here only the platform used to teach you programming. So do not expect an exhaustive description of the tools available in this software. However, by programming intensively in this environment, you will, by necessity, become familiar with it.
Grammaire, syntaxe et sémantique d'un langage. Concepts : types simples, objets, hérédité, polymorphisme, confinement, types structurés. Instructions : expressions, boucles aiguillages. Fonctions et procédures : coroutines, modes de passage des paramètres, visibilité des identificateurs. Étude comparative de quelques langages qui seront : LISP, COBOL, SMALLTALK et PASCAL OBJET DELPHI.
Connaître les bases de données et leur utilisation.
Concept de base de données. Modèle de données relationnel : algèbre relationnelle, langage de requêtes SQL, accès à une base à partir d'un programme d'application, les vues. Mécanismes d'intégrité et de sécurité. Indexage. Logiciels typiques. Applications.
INSERTION DU COURS DANS LE PROGRAMME
Ce cours est obligatoire pour les étudiants au baccalauréat en informatique et il est au choix pour les étudiants du certificat en informatique. Il a comme pré-requis INF-112-99 Programmation II et il est lui-même préalable au cours INF-452-99 Compléments sur les bases de données.