An industrial case study of Coman's automated task detection algorithm: What Worked, What Didn't, and Why
Abstract
Programmers need explicit tool support for software maintenance tasks, and a prerequisite for this is an understanding of where the boundaries between distinct tasks lie. Asking developers to indicate manually when they switch tasks is disruptive to their normal work flow, so researchers have sought ways to infer task boundaries automatically based on the content of the interaction histories with the IDE. Coman previously reported a fully automated algorithm that achieved 80% accuracy in a lab validation study. In this paper, we evaluate the use of this algorithm within an industrial setting. We found two problems: first, a large number of the tasks identified are in fact only sessions or subparts of a larger task; second, the demonstrable effects of interruptions are not considered. We argue that the problem of task boundary detection consists of two sub-problems: first, detecting task sessions; and second, linking task sessions. Coman's algorithm only partially addresses the first, and ignores the second.
Integrity signals
Registry
Cites
Statistics
Claims the paper makes
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
Zou and Godfrey found that the algorithm detects many more task switches than the ones self-reported by the participants with an error of more than 70 percent.
“found that the algorithm detects many more task switches than the ones self-reported by the participants with an error of more than 70 percent.”
From Detecting Developers' Task Switches and Types (2022) · cites this paper as [30]
Only little research has been performed on task switch detection in the software development domain and all of this research has focused solely on software development tasks within the IDE.
“Only little research has been performed on task switch detection in the software development domain and all of this research has focused solely on software development tasks within the IDE.”
From Detecting Developers' Task Switches and Types (2022) · cites this paper as [30]
Cites
"Constant, constant, multi-tasking craziness": managing multiple working spheres
González, V. M., & Mark, G. (2004) · Proceedings of the SIGCHI Conference on Human Factors in Computing Systems · doi:10.1145/985692.985707 · Cited by 715 · see citing works
Ko, A. J., Myers, B. A., Coblenz, M. J., & Aung, H. H. (2006) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2006.116 · Cited by 685 · see citing works
Maintaining mental models: a study of developer work habits
LaToza, T. D., Venolia, G., & DeLine, R. (2006) · Proceedings of the 28th international conference on Software engineering · doi:10.1145/1134285.1134355 · Cited by 628 · see citing works
People, organizations, and process improvement
Perry, D. E., Staudenmayer, N. A., & Votta, L. G. (1994) · IEEE Software · doi:10.1109/52.300082 · Cited by 401 · see citing works
Kersten, M. A., & Murphy, G. C. (2005) · International Conference on Aspect-Oriented Software Development (AOSD) · doi:10.1145/1052898.1052912 · Cited by 299 · see citing works
Questions programmers ask during software evolution tasks
Sillito, J., Murphy, G. C., & De Volder, K. (2006) · Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering · doi:10.1145/1181775.1181779 · Cited by 270 · see citing works
Theories, tools and research methods in program comprehension: past, present and future
Storey, M. (2006) · Software Quality Journal · doi:10.1007/s11219-006-9216-4 · Cited by 132 · see citing works
Automatic generation of suggestions for program investigation
Robillard, M. P. (2005) · ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) · doi:10.1145/1081706.1081711 · Cited by 129 · see citing works
Building Usage Contexts During Program Comprehension
Parnin, C., & Görg, C. (2006) · IEEE International Conference on Program Comprehension (ICPC) · doi:10.1109/icpc.2006.14 · Cited by 77 · see citing works
The Emergent Structure of Development Tasks
Murphy, G. C., Kersten, M., Robillard, M. P., & Čubranić, D. (2005) · Lecture Notes in Computer Science · doi:10.1007/11531142_2 · Cited by 69 · see citing works
Mining a software developer's local interaction history
Schneider, K. A. (2004) · doi:10.1049/ic:20040486 · Cited by 47 · see citing works
Automatic generation of suggestions for program investigation
Robillard, M. P. (2005) · ACM SIGSOFT Software Engineering Notes · doi:10.1145/1095430.1081711 · Cited by 43 · see citing works
Automated Identification of Tasks in Development Sessions
Coman, I. D., & Sillitti, A. (2008) · 2008 16th IEEE International Conference on Program Comprehension · doi:10.1109/icpc.2008.16 · Cited by 38 · see citing works
Supporting task-oriented navigation in IDEs with configurable HeatMaps
Röthlisberger, D., Nierstrasz, O., Ducasse, S., Pollet, D., & Robbes, R. (2009) · IEEE International Conference on Program Comprehension (ICPC) · doi:10.1109/icpc.2009.5090052 · Cited by 21 · see citing works
Program navigation analysis to support task-aware software development environments
Robillard, M. P. (2004) · "Workshop on Directions in Software Engineering Environments (WoDiSEE2004)" W2S Workshop - 26th International Conference on Software Engineering · doi:10.1049/ic:20040215 · Cited by 11 · see citing works
An analysis of developers' tasks using low-level, automatically collected data
Coman, I. D. (2007) · ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) · doi:10.1145/1287624.1287715 · Cited by 6 · see citing works
Flagged first, then by citations
Cited by
Sorted by citations
Detecting Developers' Task Switches and Types
Meyer, A. N., Satterfield, C., Zuger, M., Kevic, K., Murphy, G. C., Zimmermann, T., & Fritz, T. (2022) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2020.2984086 · Cited by 14 · see citing works
“Zou and Godfrey [30] replicated Coman and Sillitti’s study”
BackgroundA Practical Guide to Analyzing IDE Usage Data
Snipes, W., Murphy-Hill, E., Fritz, T., Vakilian, M., Damevski, K., Nair, A. R., & Shepherd, D. (2015) · The Art and Science of Analyzing Software Data · doi:10.1016/b978-0-12-411519-4.00005-7 · Cited by 14 · see citing works
Towards Activity-Aware Tool Support for Change Tasks
Kevic, K., & Fritz, T. (2017) · 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME) · doi:10.1109/icsme.2017.48 · Cited by 5 · see citing works
- Authors
- Zou, L., & Godfrey, M. W.
- Affiliations
- University of Waterloo (CA)
- ORCID
- Godfrey, Michael W.
- Venue
- 2012 28th IEEE International Conference on Software Maintenance (ICSM)
- Publisher
- IEEE
- Published
- 2012-09
- Pages
- 6-14
- ISSN
- 1063-6773 (ISSN-L)
- OpenAlex
- W2095362727
- Cited by
- 10
- References
- 16
- Citations by year
- 2021: 1 · 2020: 2 · 2017: 2 · 2016: 1 · 2015: 2 · 2013: 2
- FWCI
- 1.01
- Type
- conference paper
- Language
- en
- Open access
- closed
- Locations
- IEEE International Conference on Software Maintenance (ICSM) (publishedVersion)
- Topics
- Physical Sciences › Computer Science › Information Systems › Software Engineering Research
- Physical Sciences › Computer Science › Information Systems › Software Engineering Techniques and Practices
- Social Sciences › Decision Sciences › Information Systems and Management › Personal Information Management and User Behavior
- Keywords
- software maintenance, integrated development environment, interruptions, industrial evaluation
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review