Strategic Directions in Computing Research
Education Working Group
Draft Report -- 8/12/96
Academia and technology are both changing rapidly. The transition of modern
society to a near-complete dependency on technology is imminent. Within this
climate, the traditonal relationships among research, education, and government
support are being scrutinized and criticized anew. The importance of education
as a strategic future direction in computing research is affirmed in the report Computing the Future (2), and reaffirmed by its appearance as a distinct subject area in the SDCR Workshop.
Computer science and engineering (CS&E) educators are uniquely positioned to
play a key role by helping to direct these changes. To be effective, CS&E
education -- both in method and in content -- needs to evolve rapidly.
Educators need to champion methods that exploit new technologies so as to
ensure the safety, privacy, empowerment, and competencies of future citizens.
This will require fundamental changes in the way in which faculties represent
the principles and practice of CS&E, at all educational levels. Several key
strategic areas of fundamental change in CS&E education are discussed below.
- Undergraduate education. Different institutions have different educational priorities and constituencies, and thus must shape their programs accordingly. Some are driven more by industry's needs, while others are driven more by more general goals of liberal arts education. The relationship between education
and research must be reexamined by college and university faculties, as well
as the entire profession. New interactions between research, education, and
industry are needed, so that students, faculty, and computing practititioners
can maximize the utility of education throughout the broad range of
intellectual and practical interests that it serves.
- Too many institutions value research and fundraising by faculty at the
expense of sound and effective teaching. Institutional standards for promotion
and tenure should change, so as to make teaching an exciting and higher-priority
activity for faculty, alongside research and consulting.
- Duplication of effort in the development and delivery of curricula is
unusually widespread and often nonproductive. For example, the proliferation
of nearly-identical CS1 texts wastes time and creates too many low-quality
results. A new mechanism is needed by which successful course materials can
be more widely and economically shared. This would include both the Web and
an effective reviewing scheme, so that wide dissemination of high quality
material will be ensured.
- Teaching methods, lab materials, and technology are strongly biased toward
a narrow student population and set of values. These elements, along with the
faculties themselves, must change so that they accommodate a wide range of
learning styles and student backgrounds.
- The management of large classes is a serious problem in many large
programs. Lectures alone, without student interaction in small groups and
laboratories, are an inadequate learning mechanism for CS&E education.
- Education and training of computer professionals should be more widely accepted as a regular part of the academy. Undergraduate programs should provide practical courses for part-time and evening students.
- Curriculum. Changes in technology, education, and research priorities require continuing reevaluation of the curriculum. We must find a way to strategically add new subjects and remove obsolete ones, while maintaining a coherent core at each level.
- Specific core subject areas have evolved rapidly, and yet have not found a
niche in the core curricula in many programs. Examples include
object-orientedness as a way of thinking about problem solving, parallelism,
networks, human-computer interaction, software design, software safety and other social issues. One way to remedy this would be to update the knowledge units in Curricula 91 (1) so that they incorporate such contemporary core topics and themes, and remove concepts that have become outdated.
- Topics in the theory of computing need to be integrated with practical topics in the core curriculum in meaningful ways, beginning with the first course.
- An ongoing process is needed by which new principles and artifacts can be
effectively integrated into the core curriculum, soon after they emerge.
- Similarly, an effective means for continually identifying and eliminating obsolescent ideas from the core curriculum must also be implemented.
- Curricula should stress interactions between computer science and other disciplines. For instance, interdisciplinary majors involving the natural sciences, economics, and psychology can be developed within the setting of a liberal arts degree in computer science.
- Graduates should be prepared to address peoples needs and concerns about
computing; industry's needs may be addressed at the advance level of the
curriculum, but fundamental principles and sound pedagogical practice should drive the design of the first courses.
- The first courses in computing should be designed to reach a wide audience, including majors and nonmajors. The audience for such a course may have only majors, only nonmajors, or a mix of majors and nonmajors, depending on the type and size of the institution offering the course. There are also many effective models for such a first course; one such model emphasizes object-oriented design, another emphasizes computers as interaction machines, and still another emphasizes theory. Some of these models are described in the individual position statements of this Working Group.
- The breadth of the discipline should be taught early in the curriculum, but not at the expense of a solid problem-solving/programming/design experience.
- Traditional subjects in the discipline, including theoretical concepts, should be repackaged and presented in new and engaging ways. Lab exercises and textbook examples should reflect the broadest range of student concerns and contemporary life experiences.
- A senior level design course or capstone research experience should be
required for all undergraduate majors. Such a course should aim to give students hands-on experience with solving a significant real-world problem or confronting a contemporary research issue.
- K-12 education. Many issues apply specifically to the primary and secondary school levels of computing education, as well as the undergraduate level.
- A coherent secondary school curriculum should be implemented for the
general population that mirrors what is taught in the natural sciences and
mathematics. It should follow the ideas presented in the ACM Model High School
Curriculum, appropriately updated. The current AP curriculum serves a more
narrow purpose, and does not satisfy the need in this area.
- Massive amounts of teacher training at this level need to be developed, so
that computer science becomes understood by the general public as encompassing
a much broader range of subjects than just programming.
- The difference between the technological "haves" and "have-nots" is huge. The gaps, within a particular school system, between those educators and administrators who are comfortable with technology and those who are not are also wide. Massive efforts are needed to bring professionals at all levels up to speed technologically, so that they can integrate it effectively into the widest range of curricular subjects.
- New channels of communication and support are needed between college-level and pre-college educators. Activities like the ACM's undergraduate research award and high-school programming contests need to be revitalized. What about starting a high school-level computer science problems magazine, like the one mathematicians have? What about starting more in-service summer courses in computer science for secondary school teachers?
- Graduate education. Most PhD programs are exclusively targeted for full-time students who seek to develop credentials for university-level research and teaching. Evidence suggests that the market for these types of PhDs is at (or past) a steady state, but there is a stronger demand from industry for new MS and PhD degrees that have a more applied research orientation. (3)
- An alternative PhD program that would intentionally prepare graduates for
research in industry rather than academia. This alternative could be achieved by making a modest change in the current PhD; that is, the one-year residency requirement would be waived in favor of a thesis written under the joint supervision of the candidate's faculty advisor and manager at work. The current PhD model would, of course, remain available for students who prefer academic careers.
- Professional education should be widely accepted as a regular part of the
academy. Graduate programs should provide courses for part-time and
evening students.
- Leadership issues in education. There are many computer science
education communities, whose interests are represented in different ways by the following organizations:
- ACM Education Board
- ACM SIGCSE (Computer Science Education)
- ACM SIGGRAPH Education Committee
- ACM SIGCUE (Computer Uses in Education)
- ACM SIGACT Education Committee
- ACM Pre-College Committee
- IEEE Technical Committee on Education
- CRA (Graduate education, faculty issues)
- CSAB/CSAC (accreditation)
- ISTE Computer Science Society (technology in secondary school education)
- CEEB (AP Curriculum Committee)
- IFIP TC3 (European undergraduate curricula)
- AACE (advancement of computing in education)
- EDUCOM (computing and technology in higher education)
These communities have many
common interests. and yet they don't interact much at all. At the moment, the
membership of the ACM Education Board is appointed entirely by the discretion
of its chair. Thus, not all of these different educational interests are not
well-represented at the highest levels within ACM.
- A more visible and proactive ACM Education Board should try to represent
all constituencies and promote wider interactions among them.
- New communication channels should be created by the Education Board, so that curricula and other educational concerns at all levels are better understood and shared among these different communities. For example, the SIGCSE program committee should have representatives from the secondary school community (including AP), the graduate school community, and the professional education community, alongside the already-well-represented undergraduate community.
Altogether, these concerns suggest the identification of a new "grand challenge" for computing education (2). If met, this grand challenge would create an international "Virtual Computing University" whose resources and course materials would be comparable to those of any (undergraduate or graduate) computer science and engineering department in the world. Its course materials would be freely available to all who can connect to the Web. Other special resources, including advanced computing facilities, graphical environments, and faculty expertise in narrow subject areas, would be similarly pooled. Courses would be offered interactively, as well as at specific geographical sites. This grand challenge would contain the following elements, whose development would also help address many of the concerns identified above.
- Course and curriculum development. Implement a system of Web-based support for course and curriculum development, including publication of course and lab materials, a search/directory facility, and a certification process sponsored by an organization such as ACM. Include in this system archives and mechanisms to support ongoing electronic discussions about educational issues -- curriculum concerns, new ideas, interdisciplinary connections, etc. The technology for this already exists. It just needs to be adapted to the specific needs of a virtual computing university.
- Core curriculum repository. Develop a national repository of core curricular materials in computing, including textbook chunks (chapters), examples, laboratory exercises, test questions, and answers. Instructors can select, adapt, and administer test questions from the repository. A central service can score the tests and provide a detailed summary for the instructor.
- Student opportunities repository. Develop a national (international) repository of information for students to locate summer jobs, full-time jobs, fellowships, and graduate school options in computing. This information exists in different places now, but is generally not well organized or easily accessible.
- Course management technology. Develop technology to support course management, especially for courses with large enrollments. This would include a "question/feedback" capability for each participant in the course, a secure electronic testing, grading, and gradebook management facility, and online textbook chapters, examples, and demonstrations that would support traditional lecture, laboratory, and recitation sessions. Many of these already exist in specialized environments, but they need to be unified and adapted for more universal access on the Web.
- Remote education. Develop both the technology and the infrastructure to conduct courses remotely, including their lectures, their discussions, and their laboratory components. Also, a fully developed remote education process would include certifiable study-from-home, virtual faculty or student exchange programs, virtual guest lectures, cooperative coursework among remote student groups, student-initiated courses (like those at MIT) with a remote instructor, virtual visits to libraries, research facilities, and archives, remote internships with business/industry sponsors, in-service courses for secondary school teachers at remote colleges and universities, and so on.
- Computational models for other disciplines. The development of computer-based models for the sciences is an emerging central theme in the new field of computational science. A virtual computing university would include as a curricular component the principles, methods, and examples for designing and building such models across a wide range of disciplines. Courses and independent projects would be offered that unite faculties and students in computing with faculties in those disciplines, in the interest of developing effective computational models in support of those disciplines' own research and curricular interests. Some examples include the development of a virtual chemistry laboratory, a virtual archaeology dig, or a virtual stock market model.
This is the grand challenge for computing education in the future. In our view, the accomplishment of a virtual computing university is simultaneously exciting, complex, and of utmost importance to the future vitality of computing education in the modern world.
Education Working Group Members:
Owen Astrachan, Duke University
Kim Bruce, Williams College
Robert Cupper, Allegheny College
Peter Denning, George Mason University
Scot Drysdale, Dartmouth College
Tom Horton, Florida Atlantic University
Charles Kelemen, Swarthmore College
Cathy McGeoch, Amherst College
Yale Patt, University of Michigan
Viera Proulx, Northeastern University
Roy Rada, Washington State University
Richard Rasala, Northeastern University
Eric Roberts, Stanford University
Steven Rudich, Carnegie Mellon University
Lynn Stein, MIT
Allen Tucker, Bowdoin College (Chair)
Charles Van Loan, Cornell University
References:
- ACM/IEEE Joint Curriculum Task Force. Computing Curricula 1991.
ACM Press, New York, 1991. Abridged versions reprinted in Communications
of the ACM (June 1991) and IEEE Computer (November 1991).
- Computer Science and National Research Council Telecommuncations Board.
Computing the Future: A Broader Agenda for Computer Science and
Engineering. National Academy Press, Washington, DC, 1992.
- Tucker, A. and P. Wegner, "Computer Science and Engineering: The Discipline and
the Profession," to appear in CRC Handbook of Computer Science and Engineering, CRC Press, 2500 pages, December, 1996.