Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2884781.2884875acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

The sky is not the limit: multitasking across GitHub projects

Published: 14 May 2016 Publication History

Abstract

Software development has always inherently required multitasking: developers switch between coding, reviewing, testing, designing, and meeting with colleagues. The advent of software ecosystems like GitHub has enabled something new: the ability to easily switch between projects. Developers also have social incentives to contribute to many projects; prolific contributors gain social recognition and (eventually) economic rewards. Multitasking, however, comes at a cognitive cost: frequent context-switches can lead to distraction, sub-standard work, and even greater stress. In this paper, we gather ecosystem-level data on a group of programmers working on a large collection of projects. We develop models and methods for measuring the rate and breadth of a developers' context-switching behavior, and we study how context-switching affects their productivity. We also survey developers to understand the reasons for and perceptions of multitasking. We find that the most common reason for multitasking is interrelationships and dependencies between projects. Notably, we find that the rate of switching and breadth (number of projects) of a developer's work matter. Developers who work on many projects have higher productivity if they focus on few projects per day. Developers that switch projects too much during the course of a day have lower productivity as they work on more projects overall. Despite these findings, developers perceptions of the benefits of multitasking are varied.

References

[1]
R. F. Adler and R. Benbunan-Fich. Juggling on a high wire: Multitasking effects on performance. International Journal of Human-Computer Studies, 70(2):156--168, 2012.
[2]
E. M. Altmann and J. G. Trafton. Memory for goals: An activation-based model. Cognitive Science, 26(1):39--83, 2002.
[3]
J. R. Anderson. Human symbol manipulation within an integrated cognitive architecture. Cognitive science, 29(3):313--341, 2005.
[4]
S. Aral, E. Brynjolfsson, and M. V. Alstyne. Information, technology, and information worker productivity. Information Systems Research, 23(3-part-2):849--867, 2012.
[5]
E. T. Barr, C. Bird, P. C. Rigby, A. Hindle, D. M. German, and P. Devanbu. Cohesive and isolated development with branches. In FASE, pages 316--331. Springer, 2012.
[6]
R. Benbunan-Fich. An entropy index for multitasking behavior. In ICIS. AIS, 2011.
[7]
K. Blincoe, F. Harrison, and D. Damian. Ecosystems in GitHub and a method for ecosystem identification using reference coupling. In MSR, pages 202--211. IEEE, 2015.
[8]
J. P. Borst, N. A. Taatgen, and H. van Rijn. The problem state: a cognitive bottleneck in multitasking. Journal of Experimental Psychology: Learning, memory, and cognition, 36(2):363, 2010.
[9]
J. P. Borst, N. A. Taatgen, and H. van Rijn. What makes interruptions disruptive? a process-model account of the effects of the problem state bottleneck on task interruption and resumption. In CHI, pages 2971--2980. ACM, 2015.
[10]
C. Casalnuovo, B. Vasilescu, P. Devanbu, and V. Filkov. Developer onboarding in GitHub: The role of prior social links and language experience. In FSE, pages 817--828. IEEE, 2015.
[11]
M. Cataldo and J. D. Herbsleb. Coordination breakdowns and their impact on development productivity and software failures. IEEE TSE, 39(3):343--360, 2013.
[12]
J. Corbin and A. Strauss. Basics of qualitative research: Techniques and procedures for developing grounded theory. Sage Publications, 2014.
[13]
L. Dabbish, G. Mark, and V. M. González. Why do i keep interrupting myself? environment, habit and self-interruption. In CHI, pages 3127--3130. ACM, 2011.
[14]
L. Dabbish, C. Stuart, J. Tsay, and J. Herbsleb. Social coding in GitHub: transparency and collaboration in an open software repository. In CSCW, pages 1277--1286. ACM, 2012.
[15]
S. Easterbrook, J. Singer, M.-A. Storey, and D. Damian. Selecting empirical methods for software engineering research. In Guide to Advanced Empirical Software Engineering, pages 285--311. Springer, 2008.
[16]
S. J. Gilbert and T. Shallice. Task switching: A PDP model. Cognitive Psychology, 44(3):297--337, 2002.
[17]
V. M. González and G. Mark. Managing currents of work: Multi-tasking among multiple collaborations. In ECSCW, pages 143--162. Springer, 2005.
[18]
A. J. Gould. What makes an interruption disruptive? Understanding the effects of interruption relevance and timing on performance. PhD thesis, UCL, 2014.
[19]
G. Gousios and D. Spinellis. GHTorrent: Github's data from a firehose. In MSR, pages 12--21. IEEE, 2012.
[20]
A. Hars and S. Ou. Working for free? Motivations of participating in open source projects. In HICSS, pages 9--pp. IEEE, 2001.
[21]
J. D. Herbsleb and A. Mockus. An empirical study of speed and communication in globally distributed software development. IEEE TSE, 29(6):481--494, 2003.
[22]
S. Jenkins. Concerning interruptions. Computer, (11):116--114, 2006.
[23]
P. C. Johnson. Extension of nakagawa & schielzeth's r<sup>2</sup><sub>GLMM</sub> to random slopes models. Methods in Ecology and Evolution, 5(9):944--946, 2014.
[24]
D. Kahneman. Attention and effort. Prentice-Hall, 1973.
[25]
E. Kalliamvakou, G. Gousios, K. Blincoe, L. Singer, D. M. German, and D. Damian. The promises and perils of mining GitHub. In MSR, pages 92--101. ACM, 2014.
[26]
M. Kersten and G. C. Murphy. Using task context to improve programmer productivity. In FSE, pages 1--11. ACM, 2006.
[27]
A. J. Ko, R. DeLine, and G. Venolia. Information needs in collocated software development teams. In ICSE, pages 344--353. IEEE, 2007.
[28]
F. Konietschke, L. A. Hothorn, E. Brunner, et al. Rank-based multiple test procedures and simultaneous confidence intervals. Electronic Journal of Statistics, 6:738--759, 2012.
[29]
A. Lindbeck and D. J. Snower. Multitask learning and the reorganization of work: from Tayloristic to holistic organization. Journal of Labor Economics, 18(3):353--376, 2000.
[30]
G. Madey, V. Freeh, and R. Tynan. The open source software development phenomenon: An analysis based on social network theory. In AMCIS, page 247, 2002.
[31]
G. Mark, V. M. Gonzalez, and J. Harris. No task left behind? examining the nature of fragmented work. In CHI, pages 321--330. ACM, 2005.
[32]
J. Marlow and L. Dabbish. Activity traces and signals in software developer recruitment and hiring. In CSCW, pages 145--156. ACM, 2013.
[33]
J. Marlow, L. Dabbish, and J. Herbsleb. Impression formation in online peer production: Activity traces and personal profiles in GitHub. In CSCW, pages 117--128. ACM, 2013.
[34]
N. McDonald and S. Goggins. Performance and participation in open source software on GitHub. In CHI, pages 139--144. ACM, 2013.
[35]
A. N. Meyer, T. Fritz, G. C. Murphy, and T. Zimmermann. Software developers' perceptions of productivity. In FSE, pages 19--29. ACM, 2014.
[36]
S. Nakagawa and H. Schielzeth. A general and simple method for obtaining r<sup>2</sup> from generalized linear mixed-effects models. Methods in Ecology and Evolution, 4(2):133--142, 2013.
[37]
M. B. O'Leary, M. Mortensen, and A. W. Woolley. Multiple team membership: A theoretical model of its effects on productivity and learning for individuals and teams. Academy of Management Review, 36(3):461--478, 2011.
[38]
C. Parnin. A cognitive neuroscience perspective on memory for programming tasks. Programming Interest Group, page 27, 2010.
[39]
C. Parnin and R. DeLine. Evaluating cues for resuming interrupted programming tasks. In CHI, pages 93--102. ACM, 2010.
[40]
C. Parnin and S. Rugaber. Resumption strategies for interrupted programming tasks. Software Quality Journal, 19(1):5--34, 2011.
[41]
C. Parnin and S. Rugaber. Programmer information needs after memory failure. In ICPC, pages 123--132. IEEE, 2012.
[42]
C. J. Parnin. Supporting Interrupted Programming Tasks with Memory-Based Aids. PhD thesis, Georgia Institute of Technology, 2014.
[43]
J. K. Patel, C. Kapadia, and D. B. Owen. Handbook of statistical distributions. M. Dekker, 1976.
[44]
D. E. Perry, N. A. Staudenmayer, and L. G. Votta. Understanding and improving time usage in software development. Software Process, 5:111--135, 1995.
[45]
D. Posnett, R. D'Souza, P. Devanbu, and V. Filkov. Dual ecological measures of focus in software development. In ICSE, pages 452--461. IEEE, 2013.
[46]
C. Rosen. The myth of multitasking. The New Atlantis, 20(Spring):105--110, 2008.
[47]
P. J. Rousseeuw and C. Croux. Alternatives to the median absolute deviation. Journal of the American Statistical Association, 88(424):1273--1283, 1993.
[48]
J. S. Rubinstein, D. E. Meyer, and J. E. Evans. Executive control of cognitive processes in task switching. Journal of Experimental Psychology: Human Perception and Performance, 27(4):763, 2001.
[49]
D. D. Salvucci, N. A. Taatgen, and J. P. Borst. Toward a unified theory of the multitasking continuum: From concurrent performance to task switching, interruption, and resumption. In CHI, pages 1819--1828. ACM, 2009.
[50]
H. Sanchez, R. Robbes, and V. M. Gonzalez. An empirical study of work fragmentation in software evolution tasks. In SANER, pages 251--260. IEEE, 2015.
[51]
K. H. Teigen. Yerkes-Dodson: A law for all seasons. Theory & Psychology, 4(4):525--547, 1994.
[52]
B. Vasilescu, V. Filkov, and A. Serebrenik. Perceptions of diversity on GitHub: A user survey. In CHASE, pages 50--56. IEEE, 2015.
[53]
B. Vasilescu, D. Posnett, B. Ray, M. G. J. van den Brand, A. Serebrenik, P. Devanbu, and V. Filkov. Gender and tenure diversity in GitHub teams. In CHI, pages 3789--3798. ACM, 2015.
[54]
B. Vasilescu, A. Serebrenik, and V. Filkov. A data set for social diversity studies of GitHub teams. In MSR, pages 514--517. IEEE, 2015.
[55]
G. M. Weinberg. Quality Software Management, 1: Systems Thinking. Dorset House Publishing, 1992.
[56]
Q. Xuan, P. T. Devanbu, and V. Filkov. Converging work-talk patterns in online task-oriented communities. arXiv preprint arXiv:1404.5708, 2014.
[57]
Q. Xuan, A. Okano, P. Devanbu, and V. Filkov. Focus-shifting patterns of OSS developers and their congruence with call graphs. In FSE, pages 401--412. ACM, 2014.
[58]
F. Zhang, F. Khomh, Y. Zou, and A. E. Hassan. An empirical study of the effect of file editing patterns on software quality. Journal of Software: Evolution and Process, 26(11):996--1029, 2014.
[59]
A. Zika-Viktorsson, P. Sundström, and M. Engwall. Project overload: An exploratory study of work and management in multi-project settings. International Journal of Project Management, 24(5):385--394, 2006.
[60]
L. Zou and M. W. Godfrey. An industrial case study of program artifacts viewed during maintenance tasks. In WCRE, pages 71--82. IEEE, 2006.

Cited By

View all
  • (2024)Modeling interconnected social and technical risks in open source software ecosystemsCollective Intelligence10.1177/263391372412319123:1Online publication date: 15-Feb-2024
  • (2024)Verbal and Nonverbal Culture-Fair ChallengesPsychological Test Adaptation and Development10.1027/2698-1866/a0000715:1(106-116)Online publication date: 1-Mar-2024
  • (2023)Mental health problems of entrepreneurs during the COVID-19 health crisis: Fear, anxiety, and stress. A systematic reviewF1000Research10.12688/f1000research.139581.112(1062)Online publication date: 31-Aug-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '16: Proceedings of the 38th International Conference on Software Engineering
May 2016
1235 pages
ISBN:9781450339001
DOI:10.1145/2884781
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 May 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. GitHub
  2. multitasking
  3. productivity

Qualifiers

  • Research-article

Conference

ICSE '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)61
  • Downloads (Last 6 weeks)3
Reflects downloads up to 10 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Modeling interconnected social and technical risks in open source software ecosystemsCollective Intelligence10.1177/263391372412319123:1Online publication date: 15-Feb-2024
  • (2024)Verbal and Nonverbal Culture-Fair ChallengesPsychological Test Adaptation and Development10.1027/2698-1866/a0000715:1(106-116)Online publication date: 1-Mar-2024
  • (2023)Mental health problems of entrepreneurs during the COVID-19 health crisis: Fear, anxiety, and stress. A systematic reviewF1000Research10.12688/f1000research.139581.112(1062)Online publication date: 31-Aug-2023
  • (2023)Matching Skills, Past Collaboration, and Limited Competition: Modeling When Open-Source Projects Attract ContributorsProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616282(42-54)Online publication date: 30-Nov-2023
  • (2023) To Follow or Not to Follow: Understanding Issue/Pull-Request Templates on GitHub IEEE Transactions on Software Engineering10.1109/TSE.2022.322405349:4(2530-2544)Online publication date: 1-Apr-2023
  • (2023)It’s like flossing your teeth: On the Importance and Challenges of Reproducible Builds for Software Supply Chain Security2023 IEEE Symposium on Security and Privacy (SP)10.1109/SP46215.2023.10179320(1527-1544)Online publication date: May-2023
  • (2023)On Code Example-Aided Just-In-Time Learning for Programming Education2023 30th Asia-Pacific Software Engineering Conference (APSEC)10.1109/APSEC60848.2023.00083(622-626)Online publication date: 4-Dec-2023
  • (2022)Opportunities and Challenges in Repeated Revisions to Pull-Requests: An Empirical StudyProceedings of the ACM on Human-Computer Interaction10.1145/35552086:CSCW2(1-35)Online publication date: 11-Nov-2022
  • (2022)Workgraph: personal focus vs. interruption for engineers at MetaProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3558961(1390-1397)Online publication date: 7-Nov-2022
  • (2022)Code, quality, and process metrics in graduated and retired ASFI projectsProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3549132(495-506)Online publication date: 7-Nov-2022
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media