Experimenting with the Peanut Butter and Jelly Sandwich Challenge to Introduce Algorithmic Thinking and Test Case Writing

  • Kiev Gama
  • Andrew Diniz da Costa
  • Hendi Lemos Coelho
  • Ricardo Almeida Venieris
  • Carlos José Pereira de Lucena


New approaches that offer good learning experiences driven to computer science education have been applied in different places. One of the ways adopted is the application of dynamics in classrooms that challenge students to work in groups and make relations to situations of their lives. Besides, to improve content retention and students engagement, humor is one good element that should be applied in these dynamics. The "Peanut butter and jelly sandwich challenge" is an example that allows including the idea of challenging students using humor as a support to instructional content. This paper explains how that dynamic was applied to two students' groups. The first experience was offered in a mobile programming course that follows a boot camp style and involved a multidisciplinary group with students from three universities. The dynamic applied was used to present the relevance of algorithmic thinking. The second experience used the first case as motivation, adapting it to cover contents focused on test case writing applied to students of computer science. In both cases we present results gathered, such as learning impact for the students.



Karen Anewalt. 2008. Making CS0 fun: an active learning approach using toys, games and Alice. Journal of Computing Sciences in Colleges 23, 3 (2008), 98--105.

Ali Basiri, Niosha Behnam, Ruud de Rooij, Lorin Hochstein, Luke Kosewski, Justin Reynolds, and Casey Rosenthal. 2016. Chaos Engineering. IEEE Software 33, 3 (2016), 35--41.

Dennis J Bouvier. 2003. Pilot study: living flowcharts in an introduction to programming course. ACM SIGCSE Bulletin 35, 1 (2003), 293--295.

Code.Org. 2019. Code.Org. https://code.org Last accessed 15 May 2019.

Software & Systems Engineering Committee et al. 2008. IEEE standard for software and system test documentation. Fredericksburg, VA, USA: IEEE Computer Society (2008).

Lee Copeland. 2004. A practitioner's guide to software test design. Artech House.

Cheryl L Coyle and Heather Vaughn. 2008. Making Peanut Butter and Jelly Sandwiches: Do Students from Different Disciplines Approach This Exercise Differently?. In Proceedings of the Human Factors and Ergonomics Society Annual Meeting, Vol. 52. SAGE Publications Sage CA: Los Angeles, CA, 624--628.

Janet Davis and Samuel A Rebelsky. 2007. Food-first computer science: starting the first course right with PB&J. ACM SIGCSE Bulletin 39, 1 (2007), 372--376.

Stephen H Edwards and Zalia Shams. 2014. Do student programmers all tend to write the same software tests?. In Proceedings of the 2014 conference on Innovation & technology in computer science education. ACM, 171--176.

Sigrid Eldh, Hans Hansson, and Sasikumar Punnekkat. 2011. Analysis of mistakes as a method to improve test case design. In 2011 Fourth IEEE International Conference on Software Testing, Verification and Validation. IEEE, 70--79.

Vahid Garousi and Mika V Mäntylä. 2016. When and what to automate in software testing? A multi-vocal literature review. Information and Software Technology 76 (2016), 92--117.

Juan Pablo Hourcade, Olga I Garcia, and Keith B Perry. 2007. Learning observation skills by making peanut butter and jelly sandwiches. In CHI'07 Extended Abstracts on Human Factors in Computing Systems. ACM, 1753--1758.

Apple Inc. 2019. Swift Playgrounds. https://www.apple.com/swift/playgrounds/ Last accessed 15 May 2019.

Cem Kaner. 2003. What is a good test case. In Software Testing Analysis & Review Conference (STAR) East.

Tarun Khanna, Ranjay Gulati, and Nitin Nohria. 1998. The dynamics of learning alliances: Competition, cooperation, and relative scope. Strategic management journal 19, 3 (1998), 193--210.

Neelam Kher, Susan Molstad, and Roberta Donahue. 1999. Using humor in the college classroom to enhance teaching effectiveness in'dread courses'. College Student Journal 33, 3 (1999).

Debra Korobkin. 1988. Humor in the classroom: Considerations and strategies. College teaching 36, 4 (1988), 154--158.

Gary Lewandowski and Amy Morehead. 1998. Computer science through the eyes of dead monkeys: learning styles and interaction in CS I. In ACM SIGCSE Bulletin, Vol. 30. ACM, 312--316.

Glenford J Myers, Corey Sandler, and Tom Badgett. 2011. The art of software testing. John Wiley & Sons.

Rudolf Ramler and Klaus Wolfmaier. 2006. Economic perspectives in test automation: balancing automated and manual testing with opportunity cost. In Proceedings of the 2006 international workshop on Automation of software test. ACM, 85--91.

Yolanda A Rankin and Jakita O Thomas. 2016. Leveraging food to achieve 100% student retention in an intro CS course. Journal of Computing Sciences in Colleges 32, 2 (2016), 127--134.

Samuel A Rebelsky. 2005. The new science students in too much, too soon an abbreviated, accelerated, constructivist, collaborative, introductory experience in CS. In ACM SIGCSE Bulletin, Vol. 37. ACM, 312--316.

Susan H Rodger. 2002. Introducing computer science through animation and virtual worlds. In ACM SIGCSE Bulletin, Vol. 34. ACM, 186--190.

Melissa B Wanzer, Ann B Frymier, and Jeffrey Irwin. 2010. An explanation of the relationship between instructor humor and student learning: Instructional humor processing theory. Communication Education 59, 1 (2010), 1--18.
Como Citar

Selecione um Formato
GAMA, Kiev; DA COSTA, Andrew Diniz; COELHO, Hendi Lemos; VENIERIS, Ricardo Almeida; DE LUCENA, Carlos José Pereira. Experimenting with the Peanut Butter and Jelly Sandwich Challenge to Introduce Algorithmic Thinking and Test Case Writing. In: EDUCATION - SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 33. , 2019, Salvador. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2020 .