Write a Blog >>
Fri 6 Nov 2020 16:00 - 16:20 at Virtual room 1 - People

Background: Developers inevitably make human errors while coding. These errors can lead to faults in code, some of which may result in system failures. It is important to reduce the faults inserted by developers as well as fix any that slip through. Aim: To investigate the fault insertion and fault fixing activities of developers. We identify developers who insert and fix faults, ask whether code topic ‘experts’ insert fewer faults, and experts fix more faults and whether patterns of insertion and fixing change over time. Methods: We perform a time-based analysis of developer activity on six Apache projects using Latent Dirichlet Allocation (LDA), Network Analysis and Topic Modelling. Results: We show that: the majority of the projects we analysed have developers who dominate in the insertion and fixing of faults; Faults are less likely to be inserted by developers with code topic expertise; Different projects have different patterns of fault inserting and fixing over time. Conclusions: We recommend that projects identify the code topic expertise of developers and use expertise information to inform the assignment of project work. We propose a preliminary analytics dashboard of data to enable projects to track fault insertion and fixing over time. This dashboard should help projects to identify any anomalous insertion and fixing activity.

Fri 6 Nov
Times are displayed in time zone: (UTC) Coordinated Universal Time change

16:00 - 16:40: PeoplePROMISE 2020 at Virtual room 1
16:00 - 16:20
Fault-insertion and Fault-fixing: Analysing Developer Activity Over Time
David BowesLancaster University, Giuseppe DestefanisBrunel University, Tracy HallLancaster University, Jean PetricLancaster University, Marco OrtuUniversity of Cagliari
16:20 - 16:40
Identifying Key Developers using Artifact Traceability Graphs
H. Alperen ÇetinBilkent University, Eray TüzünBilkent University