Genova, Italy Italy
Mar. 5, 2013 to Mar. 8, 2013
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/CSMR.2013.15
There are many software projects started daily, some are successful, while others are not. Successful projects get completed, are used by many people, and bring benefits to users. Failed projects do not bring similar benefits. In this work, we are interested in developing an effective machine learning solution that predicts project outcome (i.e., success or failures) from developer socio-technical network. To do so, we investigate successful and failed projects to find factors that differentiate the two. We analyze the socio-technical aspect of the software development process by focusing at the people that contribute to these projects and the interactions among them. We first form a collaboration graph for each software project. We then create a training set consisting of two graph databases corresponding to successful and failed projects respectively. A new data mining approach is then employed to extract discriminative rich patterns that appear frequently on the successful projects but rarely on the failed projects. We find that these automatically mined patterns are effective features to predict project outcomes. We experiment our solution on projects in Source Forge. Net, the largest open source software development portal, and show that under 10 fold cross validation, our approach could achieve an accuracy of more than 90% and an AUC score of 0.86. We also present and analyze some mined socio-technical patterns.
graph mining, software project, collaboration graph, discriminative pattern
Didi Surian, Yuan Tian, David Lo, Hong Cheng, Ee-Peng Lim, "Predicting Project Outcome Leveraging Socio-Technical Network Patterns", CSMR, 2013, 2011 15th European Conference on Software Maintenance and Reengineering, 2011 15th European Conference on Software Maintenance and Reengineering 2013, pp. 47-56, doi:10.1109/CSMR.2013.15