Strategic Directions in Computing Research
Education Working Group
Draft Report -- 8/26/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 traditional relationships among research, education, and
government
support are being scrutinized and criticized anew. The importance of education
as a strategic future direction in computer science and engineering (CS&E)
research is reaffirmed both in the 1992 report Computing the Future
(2), and by its appearance as a distinct subject area in this 1996 SDCR
Workshop.
The distance between the foundations of computing and its research and
application frontiers is considerably shorter than in many other fields. As a
result, our curricula are constantly evolving to integrate what has become
critical among these new developments. At the same time, technology is
changing the ways in which education can be delivered. Moreover, computation
is becoming a critical piece of general education, especially within the science
and engineering communities.
CS&E educators are positioned to play a key role by helping to direct the changes
that are implied by all of these events. To remain 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. Five key strategic areas of
fundamental change in CS&E education are identified and discussed below.
1. 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 the more general goals of liberal arts and science 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, which includes both pedagogical and
curricular innovation. Standards for promotion and tenure at these institutions
should change, so as to make teaching an exciting and higher-priority activity
for faculty, alongside research and consulting. That is, these institutions must
find ways to recognize and value faculty efforts toward pedagogical and
curriculum innovation, especially when it has broad impact at other
institutions.
- 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. As a possible starting point, a new SIGCSE Web page
contains links to information on a variety of course materials that are available
at different institutions. Some recent textbooks also advise instructors about
how to download supporting software and laboratory materials for use in their
courses.
- 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
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. While this is already an important
mission of community colleges, many undergraduate programs should also
provide practical courses for part-time and evening students, as appropriate to
their individual missions and the needs of their local communities.
2. Curriculum Our core subjects have been stabilizing over the last 10-
20 years (3), and they should continue a slow evolution in the future. Yet,
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 new subjects have recently evolved, and yet they 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 some of the
knowledge units in Curricula 91 (1) so that they incorporate such contemporary
core topics and themes, and remove concepts that have become outdated. Since
curiculum models change no more frequently than every decade, a more frequent
process is needed by which new principles and artifacts can be effectively
integrated into the model soon after they emerge. A similar process for
continually identifying and eliminating obsolescent ideas from the curriculum is
also needed.
- Undergraduate course design should be driven by both sound pedagogical
practice and consideration for industry's needs. First course design should
emphasize fundamental principles in the discipline, while advanced courses
should have applications as a strong theme. The breadth of the discipline should
be taught early in the curriculum, but not at the expense of a solid problem-
solving, programming, and design experience. Hands-on design is an empowering
and essential experience for all undergraduates. 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.
Graduates should be prepared to address people's concerns about computing.
- The first courses in computing should be designed to reach a wide audience,
including majors and nonmajors. The audience for a first 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 alternative models for such a first course, in addition to the
traditional one that emphasizes problem solving and programming. One such
model emphasizes object-oriented design (REF), another emphasizes computers
as "interaction machines," (REF), another emphasizes theory (REF), and another
introduces the breadth of the discipline alongside programming (REF).
Interested readers should consult the Web pages listed in these references for
more detailed information about these alternative models for the first
course.
- Faculties should look for opportunities to repackage traditional subjects in
the discipline, including theoretical concepts, and present them in new and
engaging ways. Lab exercises and textbook examples should reflect the broadest
range of student concerns and contemporary life experiences.
Topics in the
theory of computing need to be integrated with practical topics in the
curriculum at all levels, beginning with the first course. Examples include the
discussion of semantics in programming languages, verification issues in
software engineering, theory issues in databases, and unsolvability in
algorithms.
- New curricula should be developed that stress the interactions between
computer science and other disciplines. For instance, interdisciplinary major
programs involving the natural sciences, economics, and psychology can be
developed within the setting of a concentration in computer science. Some
early progress of this sort is being made in the area of computational science
(REF).
3. 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 designed and implemented
for the general population. That curriculum should mirror what is taught in the
natural sciences and mathematics, identifying the "great ideas" in computing
and how these ideas affect the world we live in. It should follow the ideas
presented in the ACM Model High School Curriculum (REF), which introduces the
discipline broadly. The current AP curriculum (REF) serves a more narrow
purpose, and does not satisfy the need in this area.
- Mechanisms need to be developed to ensure that teachers can be kept up to
date with the field, and new teachers are appropriately prepared at the
beginning of their careers. At present, 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
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. Major efforts are needed to bring faculty and staff 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 for mathematics? What about starting new in-service and pre-
service summer courses in computer science for secondary school teachers?
4. 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)
- We need to develop 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.
- Significant numbers of new PhDs are finding positions in institutions with a
strong emphasis on teaching, and yet few seem to be well-prepared for these
positions. Graduate programs need to ensure that these persons have experience
not only as graders and consultants but also as discussion leaders, lecturers,
and designers of laboratory activities. Mastery of these skills is essential for
success in the undergraduate classroom.
- Professional education should be widely accepted as a regular part of the
academy. Some graduate programs should provide courses for part-time and
evening students, in accordance with the needs of their local communities. The
audience for such courses would include industry professionals and educators
whose technical knowledge needs to be updated or broadened in new directions.
5. Leadership issues in education There are many computer science
education communities, and their interests are represented by different
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-CS Educational Activities Board
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
members of the ACM Education Board are appointed entirely by the discretion
of its chair. Thus, few of these different educational interests are not
directly represented at the highest levels within ACM.
- A more visible and proactive ACM Education Board should modify its charter
to ensure representation from all constituencies and promote a higher level of
interaction among them.
- New communication channels should be created by the Education Board, so
that shared curricular concerns among different levels are better understood
and more effectively discussed. Moreover, 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. For example,
the recent AP decision to switch from Pascal to C++ as the programming
language of the first course might have been better informed and rationalized if
such interconstituency communication channels had been in place.
A New Grand Challenge 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 comlementary to those of any
existing (undergraduate or graduate) computer science department. Ideally,
such a virtual university would augment and expand the reach of existing
departments rather than replace them. 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. Some of its courses would be
developed for on-line consumption, as well as at specific geographical sites.
This grand challenge would contain the following elements, whose development
would simultaneously 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, for courses and institutions that face continuously 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.
- Distance education. Develop both the technology and the
infrastructure to conduct courses remotely, including their lectures, their
discussions, and their laboratory components. A fully developed distance
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 and
pre-service courses for secondary school and college teachers at remotely-
located institutions, and so on. The audience for such courses would also
include people in the workplace who require continuing education; e.g., a course
in Java and interactive Web software design, or a course in object oriented
programming. It would also include those handfuls of students, geographically
dispersed, who need a course in a less-mainstream subject in the curriculum,
such compiler code generation and optimization. At the moment, it is difficult
to mount such a course in any particular institution, due to its limited local
demand.
- 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.
A great deal of exploratory research is needed before this grand challenge can
be effectively met. A difficult goal will be the assurance that a Virtual
University can provide adequate and meaningful human interaction to support its
educational functions. For instance, experts will need to answer student
questions in a timely manner, as well as evaluate student work.
The need for support will be great, both from public sources and from the
industries that will benefit from these initiatives. Some new programs at the
National Science Foundation (especially in the EHR Directorate) seem to be
supporting explorations like the ones discussed above. The accomplishment of a
Virtual Computing University may emerge as an exciting, complex, and
fundamentally important idea that can help ensure the future vitality and
meaningful extension of computing education into the next millenium.
Education Working Group Members:
Allen Tucker, Bowdoin College (Chair)
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
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).
- ACM Model High School Computer Science Curriculum, Communications
of the ACM 36,5 (May 1993), 87-90.
- AP Curriculum...
- Astrachan, O. L., http://
- 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.
- Stein, L. A., "Rethinking CS101: Innovations in Introductory Computer
Programming,"
http://www.ai.mit.edu/projects/cs101
- Tucker, A., J. Bradley, R. Cupper, R. Epstein, C. Kelemen, G. Scragg,
Fundamentals of Computing I and II, McGraw-Hill Computer Science
Series, 1995.
- 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.
- Van Loan, C., http://