Identifying Key Developers using Artifact Traceability Graphs
Developers are the most important resource to build and maintain software projects. Due to various reasons, some developers take more responsibility, and this type of developers are more valuable and indispensable for the project. Without them, the success of the project would be at risk. We use the term key developers for these essential and valuable developers, and identifying them is a crucial task for managerial decisions such as risk assessment for potential developer resignations. We study key developers under three categories: jacks, mavens and connectors. A typical jack (of all trades) has a broad knowledge of the project, they are familiar with different parts of the source code, whereas mavens represent the developers who are the sole experts in specific parts of the projects. Connectors are the developers who involve different groups of developers or teams. They are like bridges between teams.
To identify key developers in a software project, we propose to use traceable links among software artifacts such as the links between change sets and files. First, we build an artifact traceability graph, then we define various metrics to find key developers. We conduct experiments on three open source projects: Pig, Hive and Hadoop. To validate our approach, we use developer comments in issue tracking systems and demonstrate that the identified key developers by our approach match the top commenters up to 90%.
Fri 6 NovDisplayed time zone: (UTC) Coordinated Universal Time change
16:00 - 16:40 | |||
16:00 20mTalk | Fault-insertion and Fault-fixing: Analysing Developer Activity Over Time PROMISE 2020 David Bowes Lancaster University, Giuseppe Destefanis Brunel University, Tracy Hall Lancaster University, Jean Petric Lancaster University, Marco Ortu University of Cagliari | ||
16:20 20mTalk | Identifying Key Developers using Artifact Traceability Graphs PROMISE 2020 |