skip to main content
10.1145/3592813.3592882acmotherconferencesArticle/Chapter ViewAbstractPublication PagessbsiConference Proceedingsconference-collections
research-article

4Experts: A Task Recommendation Approach Using Machine Learning and Biometric Data

Published:26 June 2023Publication History

ABSTRACT

Context: The identification of skills and technical competences that a developer has and assigning tasks according to their abilities can improve task execution and reduce negative emotional aspects such as frustration. Problem: The assignment of coding tasks that require skills and technical competences greater than the competences of a developer can contribute to the expansion of the effort to perform a task and the generation of negative emotions such as frustration. Soluction:This study presents 4Experts, an approach to recommend software tasks, using machine learning and biometric data collected by an electroencephalogram (EEG), related to the brain activities of developers. IS Theory: This study was conceived under the aegis of the Cognitive Load Theory, related to the treatment of working memory by structuring information so that the individual can develop schemes and rules that allow storing learning in long-term memory, improving knowledge acquisition and performance. Method: The research has a prescriptive character, and its evaluation was carried out through proof of concept and controlled experiment. The results were analyzed using a quantitative approach. Summary of Results: In the experiments carried out, the 4Experts presented an accuracy of 83% in the prediction of the developer’s expertise and an adherence to the use of the approach by 68% of the participants. Contributions and Impact in IS area: The main contribution of this approach is to recommend tasks through the use of biometric data that assess the developer’s cognitive load, contributing to the acquisition of knowledge and performance in the construction of IS.

References

  1. John Anvik, Lyndon Hiew, and Gail C. Murphy. 2006. Who should fix this bug?International Conference on Software Engineering (2006), 361–370.Google ScholarGoogle Scholar
  2. John Anvik and Gail C. Murphy. 2011. Reducing the effort of bug report triage: Recommenders for development-oriented decisions. ACM Transactions on Software Engineering and Methodology 20, 3 (2011). https://doi.org/10.1145/2000791.2000794Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Atlassian. 2004. Jira. https://www.atlassian.com/software/jiraGoogle ScholarGoogle Scholar
  4. Clodis Boscarioli, Renata Araujo, and Rita Suzana. 2017. I GranDSI-BR Grand Research Challenges in Information Systems in Brazil 2016-2026 Organized by.Google ScholarGoogle Scholar
  5. Igor Crk, Timothy Kluthe, and Andreas Stefik. 2015. Understanding Programming Expertise. ACM Transactions on Computer-Human Interaction 23, 1 (2015), 1–29. https://doi.org/10.1145/2829945Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Edgewall. 2004. Trac. https://trac.edgewall.org/Google ScholarGoogle Scholar
  7. Janet Feigenspan, Christian Kastner, Jorg Liebig, Sven Apel, and Stefan Hanenberg. 2012. Measuring programming experience. 2012 20th IEEE International Conference on Program Comprehension (ICPC) 2005 (2012), 73–82. https://doi.org/10.1109/ICPC.2012.6240511Google ScholarGoogle ScholarCross RefCross Ref
  8. MK Gonçalves, LRB de Souza, and VM González. 2011. Collaboration, Information Seeking and Communication: An Observational Study of Software Developers’ Work Practices.J. Ucs 17, 14 (2011), 1913–1930.Google ScholarGoogle Scholar
  9. Denys Poshyvanyk2 Huzefa Kagdi1, Malcom Gethers2 and Maen Hammad. 2011. Assigning change requests to software developers. Journal of Software: Evolution and Process 26, 12 (2011), 1172–1192. https://doi.org/10.1002/smrGoogle ScholarGoogle ScholarCross RefCross Ref
  10. Manoel Limeira de Lima Júnior, Daricélio Moreira Soares, Alexandre Plastino, and Leonardo Murta. 2018. Automatic assignment of integrators to pull requests: The importance of selecting appropriate attributes. Journal of Systems and Software 144, May 2017 (2018), 181–196. https://doi.org/10.1016/j.jss.2018.05.065Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Arthur E Kramer. 1990. Physiological Metrics of Mental Workload: A Review of Recent Progress.Google ScholarGoogle Scholar
  12. Jean-Philippe Lang. 2006. Redmine. https://www.redmine.org/Google ScholarGoogle Scholar
  13. Seolhwa Lee, Danial Hooshyar, Hyesung Ji, Kichun Nam, and Heuiseok Lim. 2017. Mining biometric data to predict programmer expertise and task difficulty. Cluster ComputingJanuary (2017), 1–11. https://doi.org/10.1007/s10586-017-0746-2Google ScholarGoogle ScholarCross RefCross Ref
  14. Walid Maalej and Hans-Jorg Happel. 2009. From work to word: How do software developers describe their work?. In 6th IEEE International Working Conference on Mining Software Repositories. 121–130.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Nikola Marangunić and Andrina Granić. 2015. Technology acceptance model: a literature review from 1986 to 2013. Universal Access in the Information Society 14, 1 (2015), 81–95.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Dominique Matter, Adrian Kuhn, and Oscar Nierstrasz. 2009. Assigning bug reports using a vocabulary-based expertise model of developers. Proceedings of the 2009 6th IEEE International Working Conference on Mining Software Repositories, MSR 2009 (2009), 131–140. https://doi.org/10.1109/MSR.2009.5069491Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Juliano Paulo Menzen, Kleinner Farias, and Vinicius Bischoff. 2021. Using biometric data in software engineering: a systematic mapping study. Behaviour & Information Technology 40, 9 (2021), 880–902. https://doi.org/10.1080/0144929X.2020.1734086Google ScholarGoogle ScholarCross RefCross Ref
  18. Andre N. Meyer, Laura E. Barton, Gail C. Murphy, Thomas Zimmermann, and Thomas Fritz. 2017. The Work Life of Developers: Activities, Switches and Perceived Productivity. IEEE Transactions on Software Engineering 43, 12 (dec 2017), 1178–1193. https://doi.org/10.1109/TSE.2017.2656886Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Sebastian Müller. 2016. Using Biometric Sensors to Increase Developers’ Productivity. Ph. D. Dissertation. University of Zurich.Google ScholarGoogle Scholar
  20. Sebastian C. Müller and Thomas Fritz. 2015. Stuck and frustrated or in flow and happy: Sensing developers’ emotions and progress. Proceedings - International Conference on Software Engineering 1, May (2015), 688–699. https://doi.org/10.1109/ICSE.2015.334Google ScholarGoogle ScholarCross RefCross Ref
  21. Sebastian C. Müller and Thomas Fritz. 2016. Using (bio)metrics to predict code quality online. In Proceedings of the 38th International Conference on Software Engineering - ICSE ’16. ACM Press, New York, New York, USA, 452–463. https://doi.org/10.1145/2884781.2884803Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Jan-Peter Ostberg, Daniel Graziotin, Stefan Wagner, and Birgit Derntl. 2017. Towards the Assessment of Stress and Emotional Responses of a Salutogenesis-Enhanced Software Tool Using Psychophysiological Measurements. 2nd International Workshop on Emotion Awareness in Software EngineeringSEmotion (2017), 2–5.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Apel Peitek, Siegmund. 2018. A Look into Programmers’ Heads. IEEE Transactions on Software Engineering (2018), 1–1. https://doi.org/10.1109/tse.2018.2863303Google ScholarGoogle ScholarCross RefCross Ref
  24. Norman Peitek, Janet Siegmund, Chris Parnin, Sven Apel, and André Brechmann. 2018. Toward conjoint analysis of simultaneous eye-tracking and fMRI data for program-comprehension studies. Proceedings of the Workshop on Eye Movements in Programming - EMIP ’18 (2018), 1–5. https://doi.org/10.1145/3216723.3216725Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. M P Robillard, R Walker, and T Zimmermann. 2010. Recommendation Systems for Software Engineering. IEEE Software 27, 4 (2010), 80–86.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Pierre N. Robillard. 1999. The role of knowledge in software development. Commun. ACM 42, 1 (1999), 87–92.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Janet Siegmund, Norman Peitek, Chris Parnin, Sven Apel, Johannes Hofmeister, Christian Kästner, Andrew Begel, Anja Bethmann, and André Brechmann. 2017. Measuring neural efficiency of program comprehension. Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering - ESEC/FSE 2017 11 (2017), 140–150. https://doi.org/10.1145/3106237.3106268Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Michal R. Wrobel. 2013. Emotions in the software development process. 6th International Conference on Human System Interactions (HSI)June 2013 (2013), 518–523.Google ScholarGoogle ScholarCross RefCross Ref
  29. Wenjin Wu, Wen Zhang, Ye Yang, and Qing Wang. 2011. DREX: Developer recommendation with K-nearest-neighbor search and EXpertise ranking. Asia-Pacific Software Engineering Conference, APSEC (2011), 389–396. https://doi.org/10.1109/APSEC.2011.15Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Tao Zhang and Byungjeong Lee. 2012. How to recommend appropriate developers for bug fixing?Proceedings - International Computer Software and Applications Conference (2012), 170–175. https://doi.org/10.1109/COMPSAC.2012.27Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. 4Experts: A Task Recommendation Approach Using Machine Learning and Biometric Data

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Article Metrics

        • Downloads (Last 12 months)69
        • Downloads (Last 6 weeks)2

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      HTML Format

      View this article in HTML Format .

      View HTML Format