Working Paper on Collaborative Learning

Introduction Goals Class Formats and Approaches Technological Support Assessment A Caution

This draft position paper was written in preparation for the working group on "Computer Supported Collaborative Learning" at ITiCSE, Conference on Integrating Technology into Computer Science Education, at Uppsala Sweden, June 1-5, 1997.

Please address comments on this page and ideas concerning collaborative learning to the author at

Collaborative learning offers an extremely valuable approach for encouraging active, student-centered learning within the classroom. This paper describes some major goals for collaborative learning and some variations in how collaborative learning might be applied. This framework provides insight into ways in which technology can support collaborative learning.
At a general level, collaborative learning involves students working together as part of a cooperative effort to understand material or complete a task. While such group activity might be imagined in a wide variety of settings, this paper focuses upon collaborative learning within a classroom environment.

In the author's experience [1], collaborative learning is one element of a multi-phase effort to revise the pedagogy of introductory computer science and to rethink its content. In such a context, thoughts about collaborative learning naturally combine with observations and ideas concerning course content and other pedagogical techniques. This paper represents an attempt to reorganize and combine the author's perspectives following his experiments over the past eight years.

Since details easily can overwhelm primary motivations and principles, this paper begins with an annotated list of some of the major goals behind the author's use of collaborative learning.

  1. Focus On Active Learning:
    Work from the Calculus Reform Movement and elsewhere indicate that classes are most effective when students are actively engaged in the material. A lecture format may allow an instructor to cover a large amount of material efficiently, but this does not automatically translate into the students learning that material effectively.

  2. Development Of Written And Oral Communication Skills:
    Both educators and practitioners widely proclaim the importance of strong communication skills for computer professionals. Collaborative learning forces students to talk to each other, to draft common responses to questions, to work through differences of opinion, and to write conclusions clearly. Thus, collaborative learning provides a practical mechanism to highlight communication skills within the curriculum.

  3. Accommodation Of Various Learning Styles:
    Classes can be most effective if they include a variety of approaches and formats to accommodate various learning styles. As discussed later in this paper, collaborative learning may be organized in several ways, so this general approach can be helpful with a rather wide range of students. For the most variety, several forms of collaborative learning might be considered as a means to complements more traditional formats, such as lectures and individual activities.

  4. Explicitly Place The Responsibility For Learning With The Students:
    If the class format involves rather little lecture, but rather focuses upon group work, students cannot rely upon the instructor to spoon feed material. Rather, students come to realize that their group(s) will be unable to proceed with a daily lesson if they come to class unprepared. This places more emphasis on reading the text and requires students to finish work from one day in order to be able to contribute to their group(s) the next day.

  5. Clarify The Role Of The Teacher As Facilitator And Mentor:
    An instructor gives up much control of a class when the class format emphasizes group activity rather than lecturing. Questions from class members dictate the class format, content, and schedule. A teacher's role then is to respond quickly to questions, to coach individual groups, to identify common difficulties, and to suggest new approaches.

  6. Desire To Cover More Material Or To Cover The Same Material Better:
    As students become more active in the classroom and more responsive for their own learning, this author has found [1] that the pace of the class can increase -- by as much as 20%. This allows more time in the semester to increase content.

  7. Develop A Sense Of Self Confidence And Independence In Students:
    In a class setting which emphasizes student involvement and group participation, students are less dependent upon the teacher and they learn how to learn. When the teacher serves as coach and mentor, independent thought is encouraged, and students come to understand they can succeed. They become more proficient at reading and experimenting, and they develop effective strategies in mastering new ideas.

  8. Inclusion Of A Team-Work Experience:
    When group work involves the design and implementation of a program of some complexity, group members must determine how their solution will be structured, what tasks will be done by specific modules, and how those modules will interface. Further, as pieces of code are written, group members become interested in what works and what does not. Such activity emphasizes several vital principles of software engineering, such as the need for careful specification and consistent attention to interfaces.

  9. Encourage Peer Review:
    When working on programming projects as part of a group effort, students naturally want to look over each other's code to clarify approaches, analyze efficiency, and locate potential errors. Such work encourages peer review of work. As a practical matter, students often have a particularly high motivation to look good in front of their peers. Thus, such group activity often adds an additional incentive for students to master relevant concepts and to code with particular care.

Class Formats and Approaches
Classes may utilize collaborative learning with a variety of formats and approaches. The following outline identifies some variations that the author has used, observed, or heard described over the past several years:
  1. Structure of Material and/or Exercises
    • Highly structured: work broken down into a relatively large number of specific and detailed steps
    • Moderately structured: statements or descriptions of problem or major part of problem; relatively little direction for solutions
    • Little structure: high level, but precise statement of problem; guidance for milestones, but little direction for how to proceed
    • Open ended: gives statement of problem, with only final deadline
    • Unstructured: identifies options available, and leaves groups to determine their own way
  2. Group Size
    • Small: 2 or 3 people per group
    • Moderate: 4 or 5 people per group
    • Large: 6 to 10 people per group
  3. Selection of Groups
    • At Random: by student choice
    • At Random: by instructor selection
    • By ability: by instructor selection
      • equal abilities together
      • stronger students help weaker ones
    • By other factors: by instructor selection
      • maintenance of gender balance
      • combination of specific backgrounds
    • Groups may or may not change during the semester
While such alternatives have been tried in various settings, there is a need for more careful discussion and research concerning which approaches might be most effective in specific environments.

Technological Support
With the identification of appropriate goals, class formats, and approaches for collaborative learning, a natural next step focuses upon how technology might effectively support such pedagogical efforts. Relevant categories of technology include support for instruction, support for communication, and support for software development. Instructional support includes technology for the presentation of new material and for the referencing of previous material. Instructional support for communication includes facilities for the writing, reviewing, editing, and distributing of ideas. At a more ambitious level, communication support might expand beyond writing to oral presentations and multimedia materials. Support for team-based software development includes mechanisms to enhance the writing, integration, testing, maintenance, and documentation of specifications, designs, program segments, and software packages. The following (non-exhaustive) list identifies some ways that technology can assist efforts in each of these areas:

Within the context of courses involving collaborative learning, assessment may have either of two rather different foci.

  1. Since collaborative learning represents a relatively new pedagogical approach, assessment is needed to determine the relative effectiveness of various techniques. For example, within a structured, CS1 environment, are small groups (2-3 students per group) better than large groups (6-10 students per group)? Within multi-window environments, are integrated development environments more effective than multiple, independent tools running in separate windows?

    Controlled experiments are needed to determine if some techniques and computer-support environments produce better results for specific stated goals.

  2. Within a specific class, assessment of student knowledge and skill is essential for the grading process. In traditional courses, where goals focused upon competencies of individuals working in isolation, tests of individual mastery often were considered to provide an adequate basis for grades.

    In collaborative learning contexts, where individual mastery, interpersonal communication, and team-participation are all considered important, grading may be based upon many factors. In this broader context, new assessment vehicles may be necessary. Further, grading standards may need to be changed as new goals replace old ones and as new pedagogical approaches are found to be more effective than traditional ones.

A Final Caution
The author's experience and the experience reported by many other mathematicians and computer scientists suggests that collaborative learning has great potential. The goals described at the start of this paper seem laudable, and collaborative learning techniques seem to advance education in the achieving of these goals.

However, the author's experience and the experience reported by others also indicate that the initial preparation of collaborative learning based materials and courses requires a great deal of time -- much more than is needed for more traditional class formats. Collaborative learning also may require more continued effort on an instructor's part to provide feedback and to interact with groups in and out of the classroom.

Through the present time, technology does not seem to have had a significant impact in increasing instructor productivity. For example, in the late 1960's, a rule of thumb indicated that about 200 hours were required to produce a high-quality, comprehensive, computer-assisted-instruction module for a 1-hour student session. Such numbers seem not to have changed considerably to the present day. Even the development of a simple 1-hour CS1 lab exercise for a group-based course requires 3 to 6 hours of instructor time. Thus, the preparation of materials for a lab-based, collaborative-learning course easily requires a commitment by the instructor of at least 150 to 300 hours. If the materials are to present material as well as to state exercises and directions, then this time commitment must be increased by over an order of magnitude. In any case, grading and other tasks are additional.

While this commitment of time does decrease the effectiveness of collaborative learning techniques, the time commitment also stands as a very large initial hurtle that instructors must get over. In the future, it will be interesting to see if technology or other factors can help instructors become more effective in this area.


Henry M. Walker, "Collaborative Learning: A Case Study for CS1 at Grinnell College and UT-Austin", Proceedings of the Twenty-eighth SIGCSE Technical Symposium on Computer Science Education February 27-March 1, 1997, pp. 209-213.

This document is available on the World Wide Web as

created March 13, 1997
last revised March 19, 1997