Understanding and Evaluating Developer Behaviour in Programming Tasks
- URL: http://arxiv.org/abs/2403.08480v1
- Date: Wed, 13 Mar 2024 12:46:42 GMT
- Title: Understanding and Evaluating Developer Behaviour in Programming Tasks
- Authors: Martin Schr\"oer, Rainer Koschke
- Abstract summary: 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.
- Score: 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- 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.
Related papers
- Multi-agent cooperation through learning-aware policy gradients [53.63948041506278]
Self-interested individuals often fail to cooperate, posing a fundamental challenge for multi-agent learning.
We present the first unbiased, higher-derivative-free policy gradient algorithm for learning-aware reinforcement learning.
We derive from the iterated prisoner's dilemma a novel explanation for how and when cooperation arises among self-interested learning-aware agents.
arXiv Detail & Related papers (2024-10-24T10:48:42Z) - A Study on Developer Behaviors for Validating and Repairing LLM-Generated Code Using Eye Tracking and IDE Actions [13.58143103712]
GitHub Copilot is a large language model (LLM)-powered code generation tool.
This paper investigates how developers validate and repair code generated by Copilot.
Being aware of the code's provenance led to improved performance, increased search efforts, more frequent Copilot usage, and higher cognitive workload.
arXiv Detail & Related papers (2024-05-25T06:20:01Z) - How far are AI-powered programming assistants from meeting developers' needs? [17.77734978425295]
In-IDE AI coding assistant tools (ACATs) like GitHub Copilot have significantly impacted developers' coding habits.
We simulate real development scenarios and recruit 27 computer science students to investigate their behavior with three popular ACATs.
We find that ACATs generally enhance task completion rates, reduce time, improve code quality, and increase self-perceived productivity.
arXiv Detail & Related papers (2024-04-18T08:51:14Z) - Improving the Learning of Code Review Successive Tasks with Cross-Task
Knowledge Distillation [1.0878040851638]
We introduce a novel deep-learning architecture, named DISCOREV, which employs cross-task knowledge distillation to address these tasks simultaneously.
We show that our approach generates better review comments, as measured by the BLEU score, as well as more accurate code refinement according to the CodeBLEU score.
arXiv Detail & Related papers (2024-02-03T07:02:22Z) - Experiential Co-Learning of Software-Developing Agents [83.34027623428096]
Large language models (LLMs) have brought significant changes to various domains, especially in software development.
We introduce Experiential Co-Learning, a novel LLM-agent learning framework.
Experiments demonstrate that the framework enables agents to tackle unseen software-developing tasks more effectively.
arXiv Detail & Related papers (2023-12-28T13:50:42Z) - Improving Testing Behavior by Gamifying IntelliJ [13.086283144520513]
We introduce IntelliGame, a gamified plugin for the popular IntelliJ Java Integrated Development Environment.
IntelliGame rewards developers for positive testing behavior using a multi-level achievement system.
A controlled experiment with 49 participants reveals substantial differences in the testing behavior triggered by IntelliGame.
arXiv Detail & Related papers (2023-10-17T11:40:55Z) - Collaborative, Code-Proximal Dynamic Software Visualization within Code
Editors [55.57032418885258]
This paper introduces the design and proof-of-concept implementation for a software visualization approach that can be embedded into code editors.
Our contribution differs from related work in that we use dynamic analysis of a software system's runtime behavior.
Our visualization approach enhances common remote pair programming tools and is collaboratively usable by employing shared code cities.
arXiv Detail & Related papers (2023-08-30T06:35:40Z) - InterCode: Standardizing and Benchmarking Interactive Coding with
Execution Feedback [50.725076393314964]
We introduce InterCode, a lightweight, flexible, and easy-to-use framework of interactive coding as a standard reinforcement learning environment.
Our framework is language and platform agnostic, uses self-contained Docker environments to provide safe and reproducible execution.
We demonstrate InterCode's viability as a testbed by evaluating multiple state-of-the-art LLMs configured with different prompting strategies.
arXiv Detail & Related papers (2023-06-26T17:59:50Z) - CONCORD: Clone-aware Contrastive Learning for Source Code [64.51161487524436]
Self-supervised pre-training has gained traction for learning generic code representations valuable for many downstream SE tasks.
We argue that it is also essential to factor in how developers code day-to-day for general-purpose representation learning.
In particular, we propose CONCORD, a self-supervised, contrastive learning strategy to place benign clones closer in the representation space while moving deviants further apart.
arXiv Detail & Related papers (2023-06-05T20:39:08Z) - Breaks and Code Quality: Investigating the Impact of Forgetting on
Software Development. A Registered Report [15.438443553618896]
It is crucial to ensure that developers have a clear understanding of the and can work efficiently and effectively even after long interruptions.
This registered report proposes an empirical study aimed at investigating the impact of the developer's activity breaks duration and different code quality properties.
arXiv Detail & Related papers (2023-05-01T10:33:17Z) - Generation Probabilities Are Not Enough: Uncertainty Highlighting in AI Code Completions [54.55334589363247]
We study whether conveying information about uncertainty enables programmers to more quickly and accurately produce code.
We find that highlighting tokens with the highest predicted likelihood of being edited leads to faster task completion and more targeted edits.
arXiv Detail & Related papers (2023-02-14T18:43:34Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.