DRAFT: Subject to major changes! The timetable is just a place-holder cut-and-pasted from a prior year, this will change a lot. The reading list is subject to change.
After the written material has been given an inital evaluation by the committee, each student will be given a half-hour oral examination. This examination will focus on the written responses given by the student. Contact Dr. Shaffer to schedule the oral.
Kalle Aaltonen, Petri Ihantola, and Otto Seppälä. Mutation analysis vs. code coverage in automated assessment of students’ testing skills, in Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion, OOPSLA ’10, pages 153–160, New York, NY, USA, 2010.
Maurício Aniche, Felienne Hermans, and Arie van Deursen. Pragmatic software testing education. In Proceedings of the 50th ACM Technical Symposium on Computer Science Education, SIGCSE ’19, pages 414–420, 2019.
Maurício Finavaro Aniche and Marco Aurélio Gerosa. Most common mistakes in testdriven development practice: Results from an online survey with developers. In Software Testing, Verification, and Validation Workshops (ICSTW), 2010 Third International Conference on Software Testing, Verification, and Validation Workshops, pages 469–478.
Gina R. Bai, Justin Smith, and Kathryn T. Stolee, How Students Unit Test: Perceptions, Practices, and Pitfalls, Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1 (ITiCSE 2021), June 26-July 1, 2021.
E.T. Barr, M. Harman, P. McMinn, M. Shahbaz, and S. Yoo, The Oracle Problem in Software Testing: A Survey, IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 41, NO. 5, MAY 2015.
Andrew Begel and Beth Simon. Struggles of new college graduates in their first software development job. In Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education, SIGCSE ’08, page 226–230.
Moritz Beller, Georgios Gousios, Annibale Panichella, and Andy Zaidman. When, how, and why developers (do not) test in their ides. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2015, pages 179–190.
Thirumalesh Bhat and Nachiappan Nagappan. Evaluating the efficacy of test-driven development: Industrial case studies. In Proceedings of the 2006 ACM/IEEE International Symposium on Empirical Software Engineering, ISESE ’06, pages 356–363, 2006.
David Bowes, Tracy Hall, Jean Petrić, Thomas Shippey, and Burak Turhan. How good are my tests? In Proceedings of the 8th Workshop on Emerging Trends in Software Metrics, pages 9–14, 2017.
Eric Brechner. Things they would not teach me of in college: What microsoft developers learn later. In Companion of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA ’03, page 134–136.
Timothy A. Budd, Richard A. DeMillo, Richard J. Lipton, and Frederick G. Sayward. Theoretical and empirical studies on using program mutation to test the functional correctness of programs. In Proceedings of the 7th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL ’80, page 220–233, 1980.
Kevin Buffardi, Pedro Valdivia, and Destiny Rogers. Measuring unit test accuracy. In Proceedings of the 50th ACM Technical Symposium on Computer Science Education, SIGCSE ’19, pages 578–584, 2019.
Henrik Bundefinedrbak Christensen. Systematic testing should not be a topic in the computer science curriculum! In Proceedings of the 8th Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE ’03, page 7–10, 2001.
J. C. Carver and N. A. Kraft. Evaluating the testing ability of senior-level computer science students. In 2011 24th IEEE-CS Conference on Software Engineering Education and Training (CSEE T), pages 169–178, May 2011.
Benjamine S. Clegg, Jose Miguel Rojas, and Gordon Fraser, Teaching Software Testing Concepts Using a Mutation Testing Game, 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering Education and Training Track.
Chetan Desai, David Janzen, and Kyle Savage. A survey of evidence for test-driven development in academia. SIGCSE Bull., 40(2):97–101, June 2008.
Stephen H. Edwards and Zalia Shams. Comparing test quality measures for assessing student-written tests. In Companion Proceedings of the 36th International Conference on Software Engineering, ICSE Companion 2014, pages 354–363, 2014.
S. Elbaum, G. Rothermel, and J. Penix, Techniques for improving regression testing in continuous integration development environments, in Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software EngineeringNovember 2014 Pages 235–245.
P. G. Frankl and E. J. Weyuker. An applicable family of data flow testing criteria. IEEE Transactions on Software Engineering, 14(10):1483–1498, October 1988.
J. Garcia, A. de Amescua, M. Velasco, and A. Sanz, Ten factors that impede improvement of verification and validation processes in software intensive organizations, Software Process: Improvement and Practice 13, 4(July/August 2008), 335-343.
Marko Ivanković, Goran Petrović, René Just, and Gordon Fraser. Code coverage at Google. In Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2019, pages 955–963.
Y. Jia and M. Harman. An analysis and survey of the development of mutation testing. IEEE Transactions on Software Engineering, 37(5):649–678, Sep. 2011.
A.M. Kazerouni, J.C. Davis, A. Basak, C.A. Shaffer, F. Servant, and S.H. Edwards, Fast and accurate incremental feedback for students’ software tests using selective mutation analysis, Journal of Systems and Software 175, (May 2021), 110905.
Leino, K. Rustan M. Developing verified programs with Dafny. 35th International Conference on Software Engineering (ICSE). IEEE, 2013.
Raphael Pham, Stephan Kiesling, Leif Singer, and Kurt Schneider. Onboarding inexperienced developers: struggles and perceptions regarding automated testing. Software Quality Journal, 25(4):1239–1268, December 2017.
Alex Radermacher and Gursimran Walia. Gaps between industry expectations and the abilities of graduates. In Proceeding of the 44th ACM Technical Symposium on Computer Science Education, SIGCSE ’13, page 525–530, 2013.
J.A. Whittaker, What is software testing? And why is it so hard?, IEEE Software 17, 1(Jan/Feb 2000).
L. Williams, G. Kudrjavets, and N. Nagappan, On the Effectiveness of Unit Test Automation at Microsoft, 2009 20th International Symposium on Software Reliability Engineering.