Back to overview

Detecting Developers' Task Switches and Types

Type of publication Peer-reviewed
Publikationsform Original article (peer-reviewed)
Author Meyer André N., Züger Manuela, Satterfield Chris, Kevic Katja, Murphy Gail C., Zimmermann Thomas, Fritz Thomas,
Project Developers' Perception and Retrospection of Productivity
Show all

Original article (peer-reviewed)

Journal IEEE Transactions on Software Engineering
Page(s) 1
Title of proceedings IEEE Transactions on Software Engineering
DOI 10.1109/tse.2020.2984086

Open Access

Type of Open Access Publisher (Gold Open Access)


Developers work on a broad variety of tasks during their workdays and constantly switch between them. While these task switches can be beneficial, they can also incur a high cognitive burden on developers, since they have to continuously remember and rebuild the task context–the artifacts and applications relevant to the task. Researchers have therefore proposed to capture task context more explicitly and use it to provide better task support, such as task switch reduction or task resumption support. Yet, these approaches generally require the developer to manually identify task switches. Automatic approaches for predicting task switches have so far been limited in their accuracy, scope, evaluation, and the time discrepancy between predicted and actual task switches. In our work, we examine the use of automatically collected computer interaction data for detecting developers’ task switches as well as task types. In two field studies–a 4h observational study and a multi-day study with experience sampling–we collected data from a total of 25 professional developers. Our study results show that we are able to use temporal and semantic features from developers’ computer interaction data to detect task switches and types in the field with high accuracy of 84% and 61% respectively, and within a short time window of less than 1.6 minutes on average from the actual task switch. We discuss our findings and their practical value for a wide range of applications in real work settings.