Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
158 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
45 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Understanding and Evaluating Developer Behaviour in Programming Tasks (2403.08480v1)

Published 13 Mar 2024 in cs.SE

Abstract: To evaluate how developers perform differently in solving programming tasks, i.e., which actions and behaviours are more beneficial to them than others and if there are any specific strategies and behaviours that may indicate good versus poor understanding of the task and program given to them, we used the MIMESIS plug-in to record developers' interactions with the IDE. In a series of three studies we investigated the specific behaviour of developers solving a specific programming task. We focused on which source code files they visited, how they related pieces of code and knowledge to others and when and how successful they performed code edits. To cope with the variety of behaviours due to interpersonal differences such as different level of knowledge, development style or problem solving stratiegies, we used an abstraction of the observed behaviour, which enables for a better comparison between different individual attributes such as skill, speed and used stratiegies and also facilitates later automatic evaluation of behaviours, i.e. by using a software to react to.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (27)
  1. Effect of clone information on the performance of developers fixing cloned bugs. In SCAM, pages 1–10. IEEEPress, 2014.
  2. Ruven Brooks. Towards a theory of the comprehension of computer programs. International journal of man-machine studies, 18(6):543–554, 1983.
  3. An empirical study on the effectiveness of security code review. In International Symposium on Engineering Secure Software and Systems, pages 197–212. Springer, 2013.
  4. Protocol analysis. MIT press Cambridge, MA, 1993.
  5. End-user debugging strategies: A sensemaking perspective. ACM Trans. Comput.-Hum. Interact., 19(1):5:1–5:28, May 2012. ISSN 1073-0516. doi: 10.1145/2147783.2147788. URL http://doi.acm.org/10.1145/2147783.2147788.
  6. Collective code bookmarks for program comprehension. In Proceedings of the 2011 IEEE 19th International Conference on Program Comprehension, ICPC ’11, pages 101–110, Washington, DC, USA, 2011. IEEE Computer Society. ISBN 978-0-7695-4398-7. doi: 10.1109/ICPC.2011.19. URL http://dx.doi.org/10.1109/ICPC.2011.19.
  7. An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks. IEEE Transactions on software engineering, 32(12), 2006.
  8. Information needs in collocated software development teams. In Software Engineering, 2007. ICSE 2007. 29th International Conference on, pages 344–353. IEEE, 2007.
  9. Individual differences in program comprehension strategies in unfamiliar programming systems. In Program Comprehension, 2003. 11th IEEE International Workshop on, pages 175–184. IEEE, 2003.
  10. Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, pages 1323–1332. ACM, 2008.
  11. How programmers debug, revisited: An information foraging theory perspective. IEEE Transactions on Software Engineering, 39(2):197–215, 2013.
  12. On the comprehension of program comprehension. ACM Transactions on Software Engineering and Methodology (TOSEM), 23(4):31, 2014.
  13. Visualizing developer interactions. In 2014 Second IEEE Working Conference on Software Visualization, pages 147–156. IEEE, 2014.
  14. I know what you did last summer-an investigation of how developers spend their time. In 2015 IEEE 23rd International Conference on Program Comprehension, pages 25–35. IEEE, 2015.
  15. It’s the psychology stupid: how heuristics explain software vulnerabilities and how priming can illuminate developer’s blind spots. In Proceedings of the 30th Annual Computer Security Applications Conference, pages 296–305. ACM, 2014.
  16. Nancy Pennington. Comprehension strategies in programming. In Empirical studies of programmers: second workshop, pages 100–113. Ablex Publishing Corp., 1987.
  17. Foraging and navigations, fundamentally: developers’ predictions of value and cost. In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pages 97–108. ACM, 2016.
  18. The whats and hows of programmers’ foraging diets. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, pages 3063–3072. ACM, 2013.
  19. Information foraging. Psychological review, 106(4):643, 1999.
  20. How do professional developers comprehend software. In International Conference on Software Engineering., pages 81–90. ACM, 2012.
  21. How developers search for code: a case study. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, pages 191–201. ACM, 2015.
  22. Recording, visualising and understanding developer programming behaviour. In 2021 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), pages 561–566. IEEE, 2021.
  23. Syntactic/semantic interactions in programmer behavior: A model and experimental results. International Journal of Parallel Programming, 8(3):219–238, 1979.
  24. Asking and answering questions during a programming change task. IEEE Transactions on Software Engineering, 34(4):434–451, 2008.
  25. Knowledge and processes in the comprehension of computer programs. The nature of expertise, pages 129–152, 1988.
  26. Anneliese von Mayrhauser and A Marie Vans. Industrial experience with an integrated code comprehension model. Software Engineering Journal, 10(5):171–182, 1995a.
  27. Anneliese von Mayrhauser and A Marie Vans. Program comprehension during software maintenance and evolution. Computer, 28(8):44–55, 1995b.
Citations (1)

Summary

We haven't generated a summary for this paper yet.

X Twitter Logo Streamline Icon: https://streamlinehq.com