<b>Predicting the Next Generation of Key Developers: A Dual-Methodology Approach</b>
This repository contains the replication package for the paper titled <b>"Predicting the Next Generation of Key Developers: A Dual-Methodology Approach"</b>, authored by <b>Fereshteh Vedadi, Ali Emir Güzey, Giray Akyol, and Eray Tüzün</b>.OverviewThis research introduces a dual-methodology approach for predicting future key developers in software projects. By analyzing historical data of developers' early contributions and using predictive models such as k-Nearest Neighbors (kNN), Logistic Regression (LR), Naïve Bayes (NB), and Random Forest (RF), as well as a neural embedding algorithm with diachronic alignment techniques, we aim to forecast which developers will become key contributors. Our study demonstrates that combining both methodologies yields better prediction accuracy than using them individually, with Random Forest and AlignOP alignment technique being particularly effective.Research QuestionsThe study addresses the following research questions:<b>RQ1</b>: Which predictive model—kNN, LR, RF, or NB—is the most effective for predicting future key developers in software projects?<b>RQ2</b>: Which diachronic alignment technique performs better for predicting future key developers, measured by F1 score?<b>RQ3</b>: Does combining the best performers of the first and second methodologies improve the prediction of future key developers in a software project?Project StructureThe project contains three main folders:<b>method1</b>: This folder contains the implementation of the first methodology, which answers <b>RQ1</b> and <b>RQ3</b>. It contains the code used to generate the dataset and the models used for predicting future key developers using various machine learning algorithms (kNN, LR, NB, RF).<b>method2</b>: This folder contains the implementation of the second methodology, which answers <b>RQ2</b> and provides additional features for enhancing predictions in <b>RQ3</b> using aligned embeddings.<b>additional_feature</b>: This folder computes the code survival feature used in <b>method1</b> to measure the quality and longevity of code contributions.Each folder contains a detailed README with further instructions specific to that section.Instructions for ReplicationClone this repository to your local environment.Navigate to the specific methodology folder (either <code>method1/</code> or <code>method2/</code>) and follow the instructions in the corresponding README file to run the experiments.To compute the additional feature for method1 (code survival), run the script in the <code>additional_feature/</code> folder.<br>
Publication Details
- Journal
- OPAL (Open@LaTrobe) (La Trobe University)
- Published
- 2025-01-01
- DOI
- https://doi.org/10.6084/m9.figshare.28506062.v1
- Primary Topic
- Software Engineering Research
- Type
- article
- Field-Weighted Citation Impact
- 0.00