Who Introduces and Who Fixes? Analyzing Code Quality in Collaborative Student's Projects

📅 2025-05-20
📈 Citations: 0
Influential: 0
📄 PDF

career value

183K/year
🤖 AI Summary
This study investigates the patterns of bug introduction and resolution in student team projects within embedded systems courses, focusing on how team composition, collaboration modes, and repair timeliness affect code quality. Methodologically, it integrates automated code quality analysis (C/embedded-specific rules), Git log mining, temporal sequence analysis, and qualitative identification of collaborative behaviors. Key findings include the first empirical validation of the “high-output developers introduce more bugs” phenomenon; 83% of defects are fixed by their original authors, with critical issues resolved within an average of 2.1 days, whereas 42% of non-critical issues remain unfixed; cross-developer fixes incur significant delays. Notably, team diversity is shown to enhance early defect detection, while a structural misalignment between quality awareness and collaboration mechanisms is empirically confirmed. These results provide evidence-based insights and actionable intervention pathways for cultivating code quality competencies in embedded systems education.

Technology Category

Application Category

📝 Abstract
This paper investigates code quality education by analyzing how errors are introduced and corrected in group projects within an embedded systems course. We identify who introduces errors, who fixes them, and when these actions occur. Students learn code quality rules for C and embedded systems. We address three questions: RQ1: What is the impact of group formation on code quality? RQ2: How do students interact to fix code issues? RQ3: When are issues introduced and resolved? We analyzed data from eight individual labs and two group projects involving 34 students. The course provides continuous, automated feedback on code quality. Findings show that the most active contributors often introduce the most issues. Many issues are fixed late in the project. Individual labs tend to have fewer issues due to their structured nature. Most problems are fixed by the original author, while cross-student fixes take longer, especially in shared code. Critical issues are fixed quickly, but non-critical ones may be ignored, showing a focus on functionality over quality.
Problem

Research questions and friction points this paper is trying to address.

Analyzes how errors are introduced and fixed in student group projects
Investigates impact of group formation and interaction on code quality
Examines timing and ownership of code issue introduction and resolution
Innovation

Methods, ideas, or system contributions that make the work stand out.

Analyzes error introduction and correction patterns
Uses automated feedback for code quality
Studies group dynamics in code fixes