|
ABSTRACT
Students need to learn more software testing skills. This paper presents an approach to teaching software testing in a way that will encourage students to practice testing skills in many classes and give them concrete feedback on their testing performance, without requiring a new course, any new faculty resources, or a significant number of lecture hours in each course where testing will be practiced. The strategy is to give students basic exposure to test-driven development, and then provide an automated tool that will assess student submissions on-demand and provide feedback for improvement. This approach has been demonstrated in an undergraduate programming languages course using a prototype tool. The results have been positive, with students expressing appreciation for the practical benefits of test-driven development on programming assignments. Experimental analysis of student programs shows a 28% reduction in defects per thousand lines of code.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
| |
3
|
Bagert, D., Hilburn, T., Hislop, G., Lutz, M., Mccracken, M., and Mengel, S. 1999. Guidelines for Software Engineering Education Version 1.0, Technical Report CMU/SEI-99-TR-032, Software Engineering Institute, Pittsburg, PA.
|
| |
4
|
|
| |
5
|
|
| |
6
|
|
| |
7
|
Boehm, B. 1976. Software engineering. IEEE Transactions on Computers, C-25, 12, 1226-1241.
|
| |
8
|
Bourque, P., Dupuis, R., Abran, A., and Moore, J.W., eds. 2001. Guide to the Software Engineering Body of Knowledge--Stone Man Trial Version 1.00, IEEE Computer Society, Washington, available at: <http:/www.swebok.org>.
|
 |
9
|
|
| |
10
|
Checkstyle. 2003. Checkstyle home page. Web page last accessed Mar. 21, 2003. <http://checkstyle.sourceforge.net/>.
|
| |
11
|
Cortex, Inc. 2003. Clover: a code coverage tool for Java. Web page accessed Mar. 21, 2003. <http://www.thecortex.net/clover/>.
|
 |
12
|
Stephen H. Edwards, Rethinking computer science education from a test-first perspective, Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 26-30, 2003, Anaheim, CA, USA
[doi> 10.1145/949344.949390]
|
 |
13
|
|
 |
14
|
|
 |
15
|
|
| |
16
|
|
 |
17
|
|
 |
18
|
|
| |
19
|
Jones, E.L 2000b. SPRAE: A framework for teaching software testing in the undergraduate curriculum. In Proc. ADMI 2000, Hampton, VA, 1-4 June 2000.
|
 |
20
|
|
| |
21
|
Jones, E.L. 2001b. An experiential approach to incorporating software testing into the computer science curriculum. In Proc. 2001 Frontiers in Education Conf. (FiE 2001), F3D7-F3D11.
|
| |
22
|
|
| |
23
|
JUnit. 2003. JUnit home page. Web page last accessed Mar. 21, 2003. <http://www.junit.org/>.
|
| |
24
|
|
 |
25
|
Nachiappan Nagappan , Laurie Williams , Miriam Ferzli , Eric Wiebe , Kai Yang , Carol Miller , Suzanne Balik, Improving the CS1 experience with pair programming, Proceedings of the 34th SIGCSE technical symposium on Computer science education, February 19-23, 2003, Reno, Navada, USA
|
 |
26
|
Renée A. McCauley , Clark Archer , Nell Dale , Rym Mili , James Robergé , Harriet Taylor, The effective integration of software engineering principles throughout the undergraduate computer science curriculum (abstract), Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education, p.364-365, March 02-04, 1995, Nashville, Tennessee, United States
|
 |
27
|
Reneée McCauley , Nell Dale , Thomas Hilburn , Susan Mengel , Branson W. Murrill, The assimilation of software engineering into the undergraduate computer science curriculum (panel session), Proceedings of the thirty-first SIGCSE technical symposium on Computer science education, p.423-424, March 07-12, 2000, Austin, Texas, United States
|
| |
28
|
McQuain, W. 2003. Curator: An electronic submission management environment. Web page last accessed July 24, 2003. <http://www.cs.vt.edu/curator/>.
|
 |
29
|
|
| |
30
|
PMD. 2003. PMD home page. Web page last accessed Mar. 21, 2003. <http://pmd.sourceforge.net/>.
|
 |
31
|
|
| |
32
|
Ricadela, A. 2001. The state of software: Quality. InformationWeek, 838, 43, May 21, 2001.
|
 |
33
|
|
 |
34
|
|
| |
35
|
Rodney C. Wilson, UNIX test tools and benchmarks: methods and tools to design, develop, and execute functional, structural, reliability, and regression tests, Prentice-Hall, Inc., Upper Saddle River, NJ, 1995
|
CITED BY 10
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Arnold Pears , Stephen Seidman , Lauri Malmi , Linda Mannila , Elizabeth Adams , Jens Bennedsen , Marie Devlin , James Paterson, A survey of literature on the teaching of introductory programming, ACM SIGCSE Bulletin, v.39 n.4, December 2007
|
|