Chapter1
Computing Curricula 2001
Computer Science Volume
Chapter 1
Introduction
In the fall of 1998, the Computer Society of the Institute for Electrical and Electronic Engineers (IEEE-CS) and the Association for Computing Machinery (ACM) established the Joint Task Force on Computing Curricula 2001 (or CC2001 for short) to undertake a major review of curriculum guidelines for undergraduate programs in computing. The charter of the task force was expressed as follows:
To review the Joint ACM and IEEE/CS Computing Curricula 1991 and develop a revised and enhanced version for the year 2001 that will match the latest developments of computing technologies in the past decade and endure through the next decade.
As indicated in our charter, the goal of the CC2001 effort is to revise Computing Curricula 1991 so that it incorporates the developments of the past decade. That task has proved much more daunting than we had originally realized. Computing has changed dramatically over that time in ways that have a profound effect on curriculum design and pedagogy. Moreover, the scope of what we call computing has broadened to the point that it is difficult to define it as a single discipline. Past curriculum reports have attempted to merge such disciplines as computer science, computer engineering, and software engineering into a single report about computing education. While such an approach may have seemed reasonable ten years ago, there is no question that computing in the 21st century encompasses many vital disciplines with their own integrity and pedagogical traditions.
1.1 Overall structure of the CC2001 series
In light of the broadening scope of computing -- and because the feedback we received on our initial draft strongly encouraged us to move in this direction -- we have chosen to divide the CC2001 report into several volumes. This volume focuses specifically on computer science. To encompass the many other disciplines that are part of the overall scope of computing and information technology, however, IEEE-CS and ACM have created additional committees to undertake similar efforts in other areas, including computer engineering, software engineering, and information systems.
Once the individual reports have been completed, representatives from all the disciplines will come together to produce an overview volume that links the series together. That overview volume will contain definitions of the various computing disciplines along with an assessment of the commonalities that exist in the curricular approaches. The structure of the series as a whole is illustrated in Figure 1-1.
Figure 1-1. Overall structure of the CC2001 report
![]() |
1.2 Overview of the CC2001 process
Developing the recommendations in this volume is primarily the responsibility of the CC2001 Task Force, the members of which are listed at the beginning of this report. Given the scale of the CC2001 project and the scope over which it extends, it was necessary to secure the involvement of many other people, representing a wide range of constituencies and areas of expertise. To ensure the broad participation necessary for success in a project of this kind, the task force established a total of 20 focus groups, divided into two distinct categories: Knowledge Focus Groups (KFGs) and Pedagogy Focus Groups (PFGs).
1.2.1 Knowledge focus groups (KFGs)
Early in its history, the CC2001 Task Force identified a set of 14 areas that together represented the body of knowledge for computer science at the undergraduate level, as shown in Figure 1-2. For each of these areas, the task force appointed a knowledge focus group composed of people with expertise and teaching experience in that domain. The charge to each KFG was to prepare a report on the area from which the task force could assemble the complete CS body of knowledge. Additional details on this aspect of the process appear in Chapter 5 and Appendix A.
Figure 1-2. The 14 knowledge focus groups
|
1.2.2 Pedagogy focus groups
Although the knowledge area focus groups are essential in terms of defining the body of knowledge in each subdiscipline, they are not in themselves sufficient. Because each group looks at the field of computer science through a lens that reflects a particular specialty area, the KFG structure does not encourage the development of a broad vision of the curriculum that focuses on crosscutting themes common throughout the discipline. To develop that more holistic perspective and to address a variety of questions that transcend the boundaries of the individual subdisciplines, the CC2001 Task Force established six pedagogy focus groups to consider curricular issues across computer science as a whole. These groups are listed, along with their specific charges, in Figure 1-3.
Figure 1-3. The six pedagogy focus groups and their charges
|
The pedagogy focus groups were formed later in the process than the counterpart focus groups examining the knowledge areas. The work of the pedagogy focus groups, moreover, proved more difficult to carry out solely through electronic communication. With the support of a generous grant from the National Science Foundation, the CC2001 Task Force was able to convene a face-to-face meeting of the pedagogy focus groups in June 2000, which proved extremely valuable in developing the final reports.
1.2.3 Two-Year College Task Force
Following the release in early 2001 of a draft version of CC2001, the ACM Two-Year College Education Committee formed a joint ACM/IEEE-CS task force whose purpose was to formulate a parallel curriculum report for the two-year college setting. This task force undertook a very detailed examination of the draft CC2001 guidelines, focusing on the introductory computer science topics and associated learning objectives, the mathematics content, and electives at the introductory level. The CC2001 report was subsequently influenced by the work of the two-year college task force, and that work provided the basis for parallel introductory course sequences that foster greater compatibility between two-year and four-year curricula, thereby facilitating the transfer process.
1.3 Structure of the CC2001 computer science report
This volume of the CC2001 report looks specifically at computer science. The main body of the report consists of 13 chapters. Chapter 2 begins with a survey and analysis of past reports, focusing most closely on Computing Curricula 1991. Chapter 3 outlines the changes that have occurred in computer science since the publication of the CC1991 report and the implications that those changes have for curriculum design and pedagogy. In Chapter 4, we articulate a set of principles that have guided the development of CC2001 as we attempt to build on the strengths of our predecessors while avoiding some of the problems observed in the earlier reports. Chapters 5 and 6 present overviews of the computer science body of knowledge and the curriculum recommendations that are examined in detail in the appendices. Chapters 7 and 8 describe the courses and approaches we recommend at the introductory and intermediate levels of the curriculum, respectively. Because these courses alone do not constitute a complete undergraduate curriculum, Chapter 9 summarizes additional courses and topics that must be included as part of the academic program. One important aspect of the complete curriculum involves the study of professional practice, which is discussed in Chapter 10. In Chapter 11, we outline a set of characteristics that define the successful computer science graduate. Chapter 12 looks at the problem of teaching computer science and computing-related skills to students in other disciplines. Finally, Chapter 13 offers strategic and tactical suggestions for addressing the institutional challenges that affect the implementation of this report.The bulk of the material in the report appears in two appendices. Appendix A looks in detail at the body of knowledge for undergraduate computer science. Appendix B consists of full descriptions for the recommended courses that comprise the sample curricula. We hope that providing both the body of knowledge and course descriptions helps departments to create effective curricula more easily than using either of these sources alone.
![]() |
CC2001 Report
December 15, 2001 |
![]() |




