Write a Blog >>
ICSE 2023
Sun 14 - Sat 20 May 2023 Melbourne, Australia

Accidents tend to be traumatic events that one would rather forget than remember. Software testing novices at the Vrije Universiteit in Amsterdam, on the contrary, rewind the past and learn how to safeguard the future.

In this paper we will present FAIL, a rather unconventional assignment that methodically investigates 13 historical software related accidents, varying from the Ariane-5 rocket explosion to the Knight Capital trading glitch. Innovative is that software testing students use STAMP, a modern systems-theory-based accident causality model and have the possibility to interview a witness of the famous Therac-25 radiation overexposures. A recent deployment to 96 CS graduates received positive evaluations. We learned that even a lightweight, yet systematic investigation of failures (1) motivates students, by sensitizing them to the consequences of suboptimal testing, and (2) reveals key soft-skills testers need to prevent disasters, such as defensive pessimism and a strong backbone. Other, more subtle benefits of the proposed approach include (3) really-happened, instead of artificial case-studies that increase a teacher’s credibility, and (4) extraordinary test scenarios students will always remember.

These results invite software engineering educators to include safety assessment elements in their curricula, and call on witnesses of software-related accidents to break the silence and share memories. Future work includes crafting a repository of heritage artifacts (narratives, videos, witness testimonies and physical replicas) to reproduce historical software-related accidents, and make it available to interested educators. Our hope is that motivated professionals will emerge, better prepared to engineer the safe software-intensive systems we all can rely on.

Wed 17 May

Displayed time zone: Hobart change

15:45 - 17:15
Introductory and undergraduate educationSEET - Software Engineering Education and Training at Meeting Room 106
Chair(s): Rafael Prikladnicki School of Technology at PUCRS University
15:45
15m
Talk
Are you cloud-certified? An Experience Report to Prepare Computing Undergraduates for Cloud Certification with Experiential Learning
SEET - Software Engineering Education and Training
Eng Lieh Ouh Singapore Management University, Benjamin Kok Siew Gan Singapore Management University
16:00
15m
Talk
Understanding Students' Knowledge of Programming Patterns Through Code Editing and Revising Tasks
SEET - Software Engineering Education and Training
Sara Nurollahian University of Utah, Anna Rafferty Carleton College, Eliane Wiese University of Utah
16:15
15m
Talk
Speak, Memory! Analyzing Historical Accidents to Sensitize Software Testing Novices
SEET - Software Engineering Education and Training
Natalia Silvis-Cividjian Vrije Universiteit (VU) Amsterdam, Fritz Hager NA
16:30
15m
Talk
Software startup within a university - producing industry-ready graduates
SEET - Software Engineering Education and Training
Saara Tenhunen University of Helsinki, Tomi Männistö University of Helsinki, Petri Ihantola University of Helsinki, Jami Kousa University of Helsinki, Matti Luukkainen University of Helsinki
16:45
7m
Talk
Teaching MLOps in Higher Education through Project-Based Learning
SEET - Software Engineering Education and Training
Filippo Lanubile University of Bari, Silverio Martínez-Fernández UPC-BarcelonaTech, Luigi Quaranta University of Bari, Italy
16:52
7m
Talk
Software Resurrection: Discovering Programming Pearls by Showing Modernity to Historical Software
SEET - Software Engineering Education and Training
Abhishek Dutta University of Oxford
Pre-print Media Attached File Attached
17:00
7m
Talk
Teaching Computer Science Students to Communicate Scientific Findings More Effectively
SEET - Software Engineering Education and Training
Marvin Wyrich Saarland University, Stefan Wagner University of Stuttgart
Pre-print