• DocumentCode
    351400
  • Title

    A project-based approach to teaching introductory computer science

  • Author

    Yang, David ; Wei, Susanna

  • Author_Institution
    St. Joseph, Philadelphia, PA, USA
  • Volume
    1
  • fYear
    1999
  • fDate
    10-13 Nov. 1999
  • Abstract
    There is a tradition in introductory computer science courses of assigning homework problems on a variety of topics. The authors suggest that this is not the best way to reach the oft-stated goal of teaching students to become good problem solvers. Indeed, the experience of the average student will probably convince the student that important lessons on topics like encapsulation code reuse, and organization of a solution (through pseudo code, flowcharts, etc.), are irrelevant at best, and quite possibly wasteful. Each assignment is self-contained and, at least in the eye of the student, instantly forgettable. The authors propose that even at an introductory level, connecting assignments into semester-long project has many benefits. This approach makes it easier to introduce concepts one wants students to learn, especially, but not exclusively, with the movement towards teaching object-oriented programming in the first programming course. Students are forced by the assignments to write modular code and encouraged to reuse code (from earlier assignments as well as from standard libraries). The relatively large size and modular nature of the overall program naturally leads to thinking about the problem in a more abstract way. At the same time, this approach should increase interest on the part of the students so that they should be paying attention when presented with important concepts. For their part, instructors are more or less constrained by the format to write assignments that support their own goals. The authors present the case for a project-based approach and report their experience using this approach in the fall semester of 1998, especially as compared with their experiences with the traditional approach. They include comments from students, both those who took the course with the project-based approach and those who took the course with the traditional approach. They note potential problems and explain how they have tried to handle them.
  • Keywords
    computer science education; educational courses; programming; teaching; encapsulation code reuse; introductory computer science course; modular code; object-oriented programming; problem solvers; programming course; project-based teaching approach; solution organization; students; Code standards; Computer science; Education; Encapsulation; Flowcharts; Joining processes; Laboratories; Libraries; Mathematics; Programming;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Frontiers in Education Conference, 1999. FIE '99. 29th Annual
  • Conference_Location
    San Juan, Puerto Rico
  • ISSN
    0190-5848
  • Print_ISBN
    0-7803-5643-8
  • Type

    conf

  • DOI
    10.1109/FIE.1999.839222
  • Filename
    839222