Write a Blog >>
ICSE 2020
Wed 24 June - Thu 16 July 2020

When computations consist of different processes or threads that may execute at the same time or in an interleaved manner, we say the computation is concurrent or that it exhibits concurrency. University students often struggle to reason about concurrency. Researchers have presented students with natural language descriptions of scenarios involving concurrency and have evaluated students’ natural language responses to explore their prior knowledge and to determine characteristics of student reasoning about concurrency. However, natural language responses are necessarily abstract and pertain to the design stage, while studies in which students are asked to implement solutions provide a more concrete view of student reasoning and reveal difficulties that arise when putting design into practice. What is the nature of university students’ conceptions of concurrency? In this work we build upon prior work and ask: What are common and problematic features in student approaches to solving concurrency-related problems? How are these features represented across the phases of the software development process (requirements - design/specification - implementation- quality assurance)? In this study we asked students enrolled in a jointly offered upper division undergraduate / MS level course on “Programming with Concurrency” to implement a solution to the same problem (a sidekick/superhero version of the party matching problem) using two different approaches: threads-based in Java, and actors-based in Scala. We performed qualitative feature analysis of their implementations and their journal reflections to better understand student reasoning when programming concurrent solutions. The feature of additional complexity found in our design study was also represented in student implementations and adversely impacted student success as their programs became cumbersome and hard to trace. Student reflections provided insight into their resistance to modeling prior to implementation, and they found formal modeling techniques difficult. These findings suggest that lighter weight interventions that address student difficulties earlier in the development process may be more palatable to students and thus have substantial impact.

Tue 7 Jul

Displayed time zone: (UTC) Coordinated Universal Time change

16:05 - 17:05
A6-SEET - Empirical Studies of SE Education and OthersSoftware Engineering Education and Training at Silla
Chair(s): Stephan Krusche Technische Universität München
16:05
12m
Talk
Presenting and Evaluating the Impact of Experiential Learning in Computing Accessibility EducationSEETSoftware Engineering Education and Training Distinguished Paper Award
Software Engineering Education and Training
Yasmine El-Glaly Rochester Institute of Technology, Weishi Shi Rochester Institute of Technology, Samuel Malachowsky Rochester Institute of Technology, Qi Yu Rochester Institute of Technology, Daniel Krutz Rochester Institute of Technology
16:17
12m
Talk
An Empirical Study of Teaching Qualities of Popular Computer Science and Software Engineering Instructors Using RateMyProfessor.com DataSEET
Software Engineering Education and Training
Aliaksei Kavalchuk Pennsylvania State University - Abington, Alec Goldenberg Pennsylvania State University - Abington, Ishtiaque Hussain Pennsylvania State University - Abington
16:29
12m
Talk
Sidekicks and Superheroes: A Look into Student Reasoning about Concurrency with Threads versus ActorsSEET
Software Engineering Education and Training
Aubrey Lawson Clemson University, Eileen Kraemer Clemson University
16:41
6m
Experience report
We should teach our Students what Industry doesn’t wantSEETSoftware Engineering Education and Training Distinguished Paper Award
Software Engineering Education and Training
Kevin Ryan Lero The Irish Software Research Centre Ireland
16:47
12m
Talk
Understanding DevOps Education with Grounded TheorySEET
Software Engineering Education and Training
Candy Pang MacEwan University, Abram Hindle University of Alberta, Denilson Barbosa University of Alberta