Content area
Full text
This article discusses some issues that many educators in computing disciplines encounter: teaching testing and debugging skills to novice programmers. The first part of the article addresses the issue of presenting debugging as part of a larger context of educating future professionals committed to providing quality results. Discussed are the results of a survey designed to identify student programming and debugging practices, and suggestions to help infuse quality practices into courses and assignments. The second part of the article addresses the introduction of noncredit seminars into the curriculum. It describes a pilot program that will develop short seminars to help ease the time crunch felt in many computer disciplines. The seminars will be offered in a laboratory environment where students may experience a hands-on approach to learning, and the seminars will not be connected to course work or grades, providing a low stress environment for learning outside the classroom.
Key Words
computer science education, debugging, programming, quality
INTRODUCTION
A recent issue of SQP featured an article by Laporte, April, and Bencherif (2007) that described the challenges of teaching software quality assurance (SQA) topics in an undergraduate software engineering (SE) program. In the article, the authors cited various obstacles, including the cost of materials and tools. Perhaps most important, they wrote that SQA activities are given a low priority in a typical SE curriculum.
The authors of this article are educators in an undergraduate computer science program and have faced similar challenges in infusing software quality practices into their program. As Laporte, April, and Bencherif (2007) cited, the authors agree that tools and materials are often cost prohibitive. The most critical issues they have identified in the computer science curriculum, however, are a lack of time and a low perception of the importance of quality practices.
The issue of time is a constant struggle for several reasons. First, in the fall of 1998, the IEEE Computer Society and the Association of Computing Machinery (ACM) joined forces to update the Computing Curricula 1991 (Roberts and Engel 2001). This effort created 20 task forces, and each was charged with defining the body of knowledge for computer science undergraduates. The task forces studied both two- and four-year college programs.
The task forces addressed both the technological and...





