“Teaching Software Testing and DevOps: A Comparison of Peer Instruction and POGIL”

Bhuvana Gopal

Event Details
Thursday, February 16, 2023
Talk:
3:30 PM, 115 Avery Hall

Reception:
4:30 PM, 115 Avery Hall

Bhuvana Gopal, Ph.D.

Lecturer, University of Nebraska–Lincoln

Abstract

In this dissertation, we study the effect of using two active learning pedagogical approaches, Peer Instruction (PI) and Process Oriented Guided Inquiry-based Learning (POGIL) in software engineering education. We have applied these pedagogies in software engineering, specifically focused on the subtopics of software testing and DevOps. PI is an active learning pedagogy based on a flipped classroom approach with small in class groups that has been studied more widely in CS0 and CS1, than in software engineering courses. POGIL is centered around students co-constructing knowledge through “learning cycles” that contain activities and questions that are crafted based on an Explore-Invent-Apply cycle utilizing with Directed/Convergent/Divergent question types, all aimed at encouraging students to leverage the collective knowledge of the group. We implemented both PI and POGIL in multiple iterations over four years of the same course. Each time we implemented a pedagogy, we had one cohort of students taught purely by conventional lectures, and another cohort using the pedagogy of choice. We also collected data on how the chosen intervention might impact honors vs regular students, as well as in-person vs online learning. We discuss our results from multiple studies we conducted over a period of four years, both in-person and online, using both PI and POGIL in undergraduate software engineering classrooms, with a particular focus on the topics of unit testing, integration testing and continuous integration. We compare learning outcomes and shifts in student affect compared to pure lecture-based instruction. We have a unique advantage of being able to analyze the similarities and differences between both pedagogical approaches, and rate their suitability in teaching software testing and DevOps. We classify the relative strengths and weaknesses of each pedagogy within the context of teaching unit testing, integration testing and continuous integration. We discuss the similarities in these approaches as well as implementation differences along with the impediments we faced while implementing them. We offer ideas to encourage increase more widespread adoption of these evidence based pedagogies to help improve the teaching of software testing and DevOps.

Speaker Bio

Dr. Bhuvana Gopal is a Lecturer at the School of Computing at the University of Nebraska-Lincoln (UNL) where she teaches Software Engineering, Software Security in Practice, the UNL SoC Internship course, and the Senior Design Capstone course. Bhuvana received her Ph.D. in Computer Science from UNL in 2022. Bhuvana has extensive experience in the software industry, where she spent 14 years in various roles, including Senior and Lead software engineer positions. Bhuvana came to UNL as the Assistant Director of the capstone program at the Jeffrey S. Raikes School of Computer Science and Management. She later accepted a faculty position as Lecturer at the School of Computing to pursue her goals of teaching software engineering. Her research work is focused on evidence-based pedagogies to improve software engineering education. She has published papers specifically on Peer Instruction and Process Oriented Guided Inquiry-based Learning-like pedagogical approaches in the undergraduate software engineering classroom, both in person and virtual. She also holds Masters degrees in Computer Science from UNL, and Medical Physics from Anna University, Chennai, India, as well as the MCSD professional certification from Microsoft. Her undergraduate degree in Physics is from the University of Madras, Chennai, India.