Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
Fit for Developing Software: Framework for Integrated Tests (Robert C. Martin)
Fit for Developing Software: Framework for Integrated Tests (Robert C. Martin)
Do students recognize ambiguity in software design? a multi-national, multi-institutional report
Proceedings of the 27th international conference on Software engineering
Test-driven learning: intrinsic integration of testing into the CS/SE curriculum
Proceedings of the 37th SIGCSE technical symposium on Computer science education
Student Experiences with Executable Acceptance Testing
ADC '05 Proceedings of the Agile Development Conference
On the Influence of Test-Driven Development on Software Design
CSEET '06 Proceedings of the 19th Conference on Software Engineering Education & Training
Tools and techniques for test-driven learning in CS1
Journal of Computing Sciences in Colleges
A Leveled Examination of Test-Driven Development Acceptance
ICSE '07 Proceedings of the 29th international conference on Software Engineering
SE and CS Collaboration: Training Students for Engineering Large, Complex Systems
CSEET '07 Proceedings of the 20th Conference on Software Engineering Education & Training
A survey of literature on the teaching of introductory programming
Working group reports on ITiCSE on Innovation and technology in computer science education
Test-driven learning in early programming courses
Proceedings of the 39th SIGCSE technical symposium on Computer science education
Introduction to Software Testing
Introduction to Software Testing
Proceedings of the 30th international conference on Software engineering
A survey of evidence for test-driven development in academia
ACM SIGCSE Bulletin
Implications of integrating test-driven development into CS1/CS2 curricula
Proceedings of the 40th ACM technical symposium on Computer science education
FIE'09 Proceedings of the 39th IEEE international conference on Frontiers in education conference
On teaching arrays with test-driven learning in WebIDE
Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education
Stages in teaching software testing
Proceedings of the 34th International Conference on Software Engineering
Hi-index | 0.00 |
There is a growing interest of the Computer Science education community for including testing concepts on introductory programming courses. Aiming at contributing to this issue, we introduce POPT, a Problem-Oriented Programming and Testing approach for Introductory Programming Courses. POPT main goal is to improve the traditional method of teaching introductory programming that concentrates mainly on implementation and neglects testing. According to POPT, students skills must be developed by dealing with ill-defined problems, from which students are stimulated to develop test cases in a table-like manner in order to enlighten the problems requirements and also to improve the quality of generated code. This paper presents POPT and a case study performed in an Introductory Programming course of a Computer Science program at the Federal University of Rio Grande do Norte, Brazil. The study results have shown that, when compared to a Blind Testing approach, POPT stimulates the implementation of programs of better external quality - the first program version submitted by POPT students passed in twice the number of test cases (professor-defined ones) when compared to non-POPT students. Moreover, POPT students submitted fewer program versions and spent more time to submit the first version to the automatic evaluation system, which lead us to think that POPT students are stimulated to think better about the solution they are implementing.