Teaching Abstraction First in CS1/CS2
Advisor(s): Bruce Weide
Participants: Emily Howe,
Matthew Thornton
Start Date: Winter Quarter 2003
Project Status: Active
Index:
Abstract:
The development of extensive libraries of components, such as
the STL or the RESOLVE component library, has
resulted in a broadening of what a person can do
with a language from the start. Two teaching
techniques: "Accelerated C++" by Andrew Koenig
and Barbara Moo and the teaching of RESOLVE were
developed separately and with different
motives. (Teaching C++ vs. Teaching
component-based software.) However, they share
a similar teaching technique: they begin by
teaching abstraction first and how to use the
libraries available. With this technique,
instructors are liberated to create unique
problems and investigate parts of computer science
that are normally not available in the first
course sequence while maintaining a flexible curriculum.
Calendar:
- March 2003--Began reading "Accelerated C++"
- April 2003--Identified similarities.
- May-September 2003--Writing paper.
Project Development:
At the beginning of this project, we were going to make the
paper strictly a compare and contrast paper
between the two teaching styles. However,
it was becoming increasingly difficult to
separate the paradigms from the teaching
styles. Therefore, we looked for a
different approach. The final solution was
to look at the teaching styles from a "high
level" and look at what they have in
common. That is, they teach abstractions
first. The paper in its new form shows that
Abstractions First works well as a teaching
style and uses "Accelerated C++" and RESOLVE
as case studies.
Findings and Contributions:
We will present our findings once the paper is complete.
Links and References:
- "Accelerated C++" By Andrew Koenig and Barbara Moo
- "Software Component Engineering" By Bruce Weide
- JOOP Articles on "Accelerated C++"
Return to Europa
Emily Howe <howe@cis.ohio-state.edu>
Last modified: Tue Jun 3 15:30:34 EDT 2003