CSCL environments for distributed peer collaboration

Vive S. Kumar

Department of Computer Science,

University of Saskatchewan


The focus of this research is to design, develop, implement and test distributed computer-supported collaborative learning (CSCL) environments. Intelligent tutoring systems (ITS) augment education and training methods towards personalised learning. This research explores CSCL as a conceptual advancement over ITS that supports collaborative learning among multiple learners. In addition, CSCL is approached as a technical extension to computer-supported cooperative work (CSCW) that provides "passive" collaborative interactions among the learners. CSCL extends CSCW by providing AI-based support for collaboration, that leads to computer systems exercising "active" mediation over the collaborative interactions [2].

CSCL systems can be profitably employed to augment real-life collaborative learning situations. "Training" is one area where collaboration among participants is often a necessity. Training the staff to perform complex workplace tasks (PHelpS Project), training the technicians to operate/troubleshoot complex electronic machinery (Sherlock project), and training the software personnel to collaborate in complex software development projects are some of the promising applications of CSCL. This research attempts to develop CSCL environments in two areas:

PHelpS: a CSCL environment for just-in-time workplace training

PHelpS is a situated, peer-supported, AI-based system that trains informally networked peers in procedural, and task-oriented domains at run-time [1]. PHelpS supports users as they perform their tasks, offers assistance in finding peer helpers when required and in a limited sense mediates communication on task-related topics.

PHelpS encourages collaboration among peers by providing ways to solve impasses. These impasses arise because of some misunderstanding of the procedure or the application of a procedure. In a network of peers, most likely, there is someone with expertise for a given procedural impasse. PHelpS tracks such expertise and advises a peer who is in need of help with a list of peers who might help solve the impasse.

Presently, PHelpS supports passive collaborative communication through structured interfaces and multimedia communication tools like NetMeeting. This research aims to enhance PHelpS to support active collaboration. The enhancement includes understanding the needs of individual workers based on their models, providing appropriate feedback and structured communication media and finally, driving peer support towards a preferred model of collaboration.

PAD: a CSCL environment for Program Analysis and Debugging

PAD is a collection of tools that is being developed to explore the applicability of CSCL techniques in a software development environment. PAD is being developed as a specialised support system under the umbrella of a generic Help Desk system. The Help Desk provides the means using which informally networked university students can help each other on various domain-oriented tasks, in addition to receiving relevant help from other human resources and context specific electronic resources.

PAD provides an environment where university students can analyse/debug "programming tasks", in collaboration with a network of peers. The system not only attempts to provide communication channels for peer support but also attempts to "mediate" the modes and contents of communication based on the "collaboration models" of the interacting peers. Peers can be given the tasks of analysis and debugging of well-defined programs using a number of generic tools that support collaboration.

The set of proposed tools includes a tool to help understand the task, using a task-model representation, a tool to analyse/debug and advocate programming styles and conventions, a tool to analyse and assess internal documentation of a program, a tool to support non-manual helpdesk (FAQ, online manuals, and case libraries), a tool to analyse/debug the algorithmic task of a program, a tool to walk-through the versions of a developed program, and a tool to perform time-based analysis of the programming process.

Technical highlights of the approach



[1] J.E. Greer, G.I. McCalla, V.S. Kumar, J.A. Collins, P. Meagher. Facilitating Collaborative Learning in Distributed Organizations. International conference on Computer Support for Collaborative Learning ‘97 (CSCL 97), December 10-14, Toronto, Canada, 1997.

[2] V.S. Kumar. Computer-Supported Collaborative Learning - Issues for Research. Eighth Annual Graduate Symposium on Computer Science, University of Saskatchewan, 1996.