Wed 26 May 2021 08:35 - 08:55 at Blended Sessions Room 2 - 1.5.2. Developers: Observational Studies
Software developers solve a diverse and wide range of problems. While software engineering research often focuses on tools to support this problem solving, the strategies that developers use to solve problems are at least as important. In this paper, we offer a novel approach for enabling developers to follow explicit programming strategies that describe how an expert tackles a common programming problem. We define explicit programming strategies, grounding our definition in prior work both within software engineering and in other professions which have adopted more explicit procedures for problem solving. We then present a novel notation called Roboto and a novel strategy tracker tool that explicitly represent programming strategies and frame executing strategies as a collaborative effort between human abilities to make decisions and computer abilities to structure process and persist information. In a formative evaluation, 28 software developers of varying expertise completed a design task and a debugging task. We found that, compared to developers who are free to choose their own strategies, developers given explicit strategies experienced their work as more organized, systematic, and predictable, but also more constrained. Developers using explicit strategies were objectively more successful at the design and debugging tasks. We discuss the implications of Roboto and these findings, envisioning a thriving ecosystem of explicit strategies that accelerate and improve developers’ programming problem solving.
Tue 25 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
19:35 - 20:55 | 1.5.2. Developers: Observational StudiesSEIP - Software Engineering in Practice / Journal-First Papers / Technical Track at Blended Sessions Room 2 +12h Chair(s): Carolyn Seaman University of Maryland Baltimore County | ||
19:35 20mPaper | What Leads to a Confirmatory or Disconfirmatory Behaviour of Software Testers?Journal-First Journal-First Papers Iflaah Salman University of Oulu, Pilar Rodriguez Universidad Politécnica de Madrid, Burak Turhan Monash University, Ayse Tosun Istanbul Technical University, Arda Gureller Ericsson Pre-print Media Attached | ||
19:55 20mPaper | An interview study of how developers use execution logs in embedded software engineeringSEIP SEIP - Software Engineering in Practice Nan Yang Eindhoven University of Technology, The Netherlands, Pieter Cuijpers Eindhoven University of Technology, Ramon Schiffelers Eindhoven University of Technology and ASML, the Netherlands, Johan Lukkien Eindhoven University of Technology, Alexander Serebrenik Eindhoven University of Technology Pre-print Media Attached | ||
20:15 20mPaper | Relating Reading, Visualization, and Coding for New Programmers: A Neuroimaging StudyTechnical Track Technical Track Madeline Endres University of Michigan, Zachary Karas University of Michigan, Xiaosu Hu University of Michigan, Ioulia Kovelman University of Michigan, Westley Weimer University of Michigan Pre-print Media Attached | ||
20:35 20mPaper | Explicit Programming StrategiesJournal-First Journal-First Papers Thomas LaToza George Mason University, Maryam Arab George Mason University, Dastyni Loksa Towson University, Amy Ko University of Washington Link to publication Pre-print Media Attached |
Wed 26 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
07:35 - 08:55 | 1.5.2. Developers: Observational StudiesSEIP - Software Engineering in Practice / Technical Track / Journal-First Papers at Blended Sessions Room 2 | ||
07:35 20mPaper | What Leads to a Confirmatory or Disconfirmatory Behaviour of Software Testers?Journal-First Journal-First Papers Iflaah Salman University of Oulu, Pilar Rodriguez Universidad Politécnica de Madrid, Burak Turhan Monash University, Ayse Tosun Istanbul Technical University, Arda Gureller Ericsson Pre-print Media Attached | ||
07:55 20mPaper | An interview study of how developers use execution logs in embedded software engineeringSEIP SEIP - Software Engineering in Practice Nan Yang Eindhoven University of Technology, The Netherlands, Pieter Cuijpers Eindhoven University of Technology, Ramon Schiffelers Eindhoven University of Technology and ASML, the Netherlands, Johan Lukkien Eindhoven University of Technology, Alexander Serebrenik Eindhoven University of Technology Pre-print Media Attached | ||
08:15 20mPaper | Relating Reading, Visualization, and Coding for New Programmers: A Neuroimaging StudyTechnical Track Technical Track Madeline Endres University of Michigan, Zachary Karas University of Michigan, Xiaosu Hu University of Michigan, Ioulia Kovelman University of Michigan, Westley Weimer University of Michigan Pre-print Media Attached | ||
08:35 20mPaper | Explicit Programming StrategiesJournal-First Journal-First Papers Thomas LaToza George Mason University, Maryam Arab George Mason University, Dastyni Loksa Towson University, Amy Ko University of Washington Link to publication Pre-print Media Attached |