Your browser does not support JavaScript!
http://iet.metastore.ingenta.com
1887

access icon openaccess Empirical study on developer factors affecting tossing path length of bug reports

Bug reassignment (also known bug tossing) is a common activity in the life cycle of bug reports, and it increases the cost of time and labour to fix bugs in software projects. In large-scale projects, about 6–10% of bug reports are tossed at least three times. However, the nature of repeatedly-tossed bug reports was usually overlooked in previous works. This study focuses on developer features from four aspects, namely network centrality, developer workspace, developer expertise, and transmissibility of developers, to investigate which factors affect the tossing path length (TPL). By using statistical methods, this study finds that working theme, product, component, and degree centrality are key impact factors affecting the change of TPL. The four key features are then simplified to three core features, namely working theme, product, and component, which contribute about 90% of the variance of TPL. Finally, the two feature groups mentioned above are applied in six machine learning algorithms to predict potential developers for bug reports from Eclipse and Mozilla, and the results validate the effectiveness of the feature groups for developer recommendation. Hence, this study provides an easy-to-use feature selection method to train quality developer recommenders for automatic bug triage in an efficient way.

References

    1. 1)
      • 14. Bhattacharya, P., Neamtiu, I.: ‘Fine-grained incremental learning and multi-feature tossing graphs to improve bug triaging’. Int. Conf. on Software Maintenance (ICSM)’10, IEEE Computer Society, Washington, USA, 2010, pp. 110.
    2. 2)
      • 18. Akila, V., Zayaraz, G., Govindasamy, V.: ‘Bug triage in open source systems: a review’, Int. J. Collaborat. Enterp., 2014, 4, (4), pp. 299319.
    3. 3)
      • 16. Borgatti, S.P.: ‘Centrality and network flow’, Social Netw., 2005, 27, (1), pp. 5571.
    4. 4)
      • 4. Jeong, G., Kim, S., Zimmermann, T.: ‘Improving bug triage with bug tossing graphs’. European Software Engineering Conf./Foundations of Software Engineering (ESEC/FSE)’09, ACM, New York, USA, 2009, pp. 111120.
    5. 5)
      • 40. Hooimeijer, P., Weimer, W.: ‘Modeling bug report quality’. Automated Software Engineering (ASE)’07, ACM, New York, USA, 2007, pp. 3443.
    6. 6)
      • 44. Motter, A.E., Lai, Y.C.: ‘Cascade-based attacks on complex networks’, Phys. Rev. E, Stat. Nonlinear Soft Matter Phys., 2002, 66, (2), p. 065102.
    7. 7)
      • 38. Pinzger, M., Nagappan, N., Murphy, B.: ‘Can developer-module networks predict failures?’. ACM SIGSOFT Int. Symp. on Foundations of Software Engineering (SIGSOFT FSE)'08, Atlanta, USA, 2008, pp. 212.
    8. 8)
      • 35. Zanetti, M.S., Scholtes, I., Tessone, C.J., et al: ‘Categorizing bugs with social networks: a case study on four open source software communities’. Int. Conf. on Software Engineering (ICSE)’13, San Francisco, USA, 2013, pp. 10321041.
    9. 9)
      • 43. Makhoul, J., Kubala, F., Schwartz, R., et al: ‘Performance measures for information extraction’. Proc. Darpa Broadcast News Workshop, Herndon, VA, USA, 1999, pp. 249252.
    10. 10)
      • 6. Ahsan, S.N., Ferzund, J., Wotawa, F.: ‘Automatic software bug triage system (bts) based on latent semantic indexing and support vector machine’. Int. Conf. on Software Engineering Advances (ICSEA)’09, IEEE Computer Society, Washington, USA, 2009, pp. 216221.
    11. 11)
      • 9. Helming, J., Arndt, H., Hodaie, Z., et al: ‘Semi-automatic assignment of work items’. International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE)’10, Setúbal, Portugal, 2010, pp. 149158.
    12. 12)
      • 33. Linaresvasquez, M., Hossen, K., Dang, H., et al: ‘Triaging incoming change requests: bug or commit history, or code authorship?’, IEEE International Conference on Software Maintenance (ICSM)’12, Trento, Italy, 2012, pp. 451460.
    13. 13)
      • 12. Shokripour, R., Anvik, J., Kasirun, Z.M., et al: ‘Why so complicated? Simple term filtering and weighting for location-based bug report assignment recommendation’. Mining Software Repositories (MSR)’13, Piscataway, NJ, USA, 2013, pp. 211.
    14. 14)
      • 5. Cubraknic, D., Murphy, G.C.: ‘Automatic bug triage using text categorization’. International Conference on Software Engineering & Knowledge Engineering (SEKE), KSI Press, Pittsburgh, USA, 2004, pp. 9297.
    15. 15)
      • 32. Xie, X., Zhang, W., Yang, Y., et al: ‘DRETOM: developer recommendation based on topic models for bug resolution’. International Conference on Predictive Models in Software Engineering (PROMISE)’12, New York, USA, 2012, pp. 1928.
    16. 16)
      • 21. Nagwani, N.K., Verma, S.: ‘Predicting expert developers for newly reported bugs using frequent terms similarities of bug attributes’. ICT and Knowledge Engineering. IEEE, Bangkok, Thailand, 2012, pp. 113117.
    17. 17)
      • 2. Anvik, J.: ‘Automating bug report assignment’. ACM Int. Conf. on Software engineering (ICSE)’06, New York, USA, 2006, pp. 937940.
    18. 18)
      • 34. Wu, W., Zhang, W., Yang, Y., et al: ‘DREX: developer recommendation with k-nearest-neighbor search and expertise ranking’. Asia-Pacific Software Engineering Conf. (APSEC)’11, IEEE Computer Society, Washington, USA, 2011, pp. 389396.
    19. 19)
      • 37. Chen, L., Wang, X., Liu, C.: ‘Improving bug assignment with bug tossing graphs and bug similarities’. Int. Conf. on Biomedical Engineering and Computer Science (ICBECS)'10, Wuhan, China, 2010, pp. 5660.
    20. 20)
      • 1. Anvik, J., Hiew, L., Murphy, G.C.: ‘Who should fix this bug?’. ACM Int. Conf. on Software Engineering (ICSE)’06, New York, USA, 2006, pp. 361370.
    21. 21)
      • 41. Opsahl, T., Agneessens, F., Skvoretz, J.: ‘Node centrality in weighted networks: generalizing degree and shortest paths’, Social Netw., 2010, 32, (3), pp. 245251.
    22. 22)
      • 22. Shokripour, R., Kasirun, Z.M., Zamani, S., et al: ‘Automatic bug assignment using information extraction methods’. Advanced Computer Science Applications and Technologies (ACSAT)’12, IEEE Computer Society, Washington, USA, 2012, pp. 144149.
    23. 23)
      • 8. Baysal, O., Godfrey, M.W., Cohen, R.: ‘A bug you like: a framework for automated assignment of bugs’. International Conference on Program Comprehension (ICPC), IEEE Computer Society, Washington, USA, 2009, pp. 297298.
    24. 24)
      • 24. Xia, X., Lo, D., Wang, X., et al: ‘Accurate developer recommendation for bug resolution’. IEEE Working Conf. on Reverse Engineering (WCRE)’13, Koblenz, Germany, 2013, pp. 7281.
    25. 25)
      • 11. Alenezi, M., Magel, K., Banitaan, S.: ‘Efficient bug triaging using text mining’, J. Softw., 2013, 8, (8), pp. 21852190.
    26. 26)
      • 42. Blei, D.M., Ng, A.Y., Jordan, M.I.: ‘Latent Dirichlet allocation’, J. Mach. Learn. Res., 2003, 3, (2003), pp. 9931022.
    27. 27)
      • 29. Zhang, W., Wang, S., Wang, Q.: ‘KSAP: an approach to bug report assignment using KNN search and heterogeneous proximity’, Inf. Softw. Technol., 2016, 70, pp. 6884.
    28. 28)
      • 25. Xia, X., Lo, D., Wang, X., et al: ‘Dual analysis for recommending developers to resolve bugs’, J. Softw.: Evol. Process, 2015, 27, (3), pp. 195220.
    29. 29)
      • 23. Kagdi, H., Gethers, M., Poshyvanyk, D., et al: ‘Assigning change requests to software developers’, J. Softw., Evol. Process, 2012, 24, (1), pp. 333.
    30. 30)
      • 19. Zhang, J., Wang, X., Hao, D., et al: ‘A survey on bug-report analysis’, Sci. China F, Inf. Sci., 2015, 58, (2), pp. 124.
    31. 31)
      • 31. Matter, D., Kuhn, A., Nierstrasz, O.: ‘Assigning bug reports using a vocabulary-based expertise model of developers’. Working Conference on Mining Software Repositories (MSR)’09, IEEE Computer Society, Washington, USA, 2009, pp. 131140.
    32. 32)
      • 39. Guo, P.J., Zimmermann, T., Nagappan, N., et al: ‘Characterizing and predicting which bugs get fixed: an empirical study of Microsoft Windows’. ACM/IEEE Int. Conf. on Software Engineering (ICSE)'10, Cape Town, South Africa, 2010, vol. 1, pp. 495504.
    33. 33)
      • 36. Xuan, J., Jiang, H., Ren, Z., et al: ‘Automatic bug triage using semi-supervised text classification’. Int. Conf. on Software Engineering & Knowledge Engineering (SEKE)'10, Pittsburgh, USA, 2010, pp. 209214.
    34. 34)
      • 15. Bhattacharya, P., Neamtiu, I., Shelton, C.R.: ‘Automated, highly-accurate, bug assignment using machine learning and tossing graphs’, J. Syst. Softw., 2012, 85, (10), pp. 22752292.
    35. 35)
      • 13. Jonsson, L.J., Borg, M., Broman, D., et al: ‘Automated bug assignment: ensemble-based machine learning in large scale industrial contexts’, Empir. Softw. Eng., 2015, 21, (4), pp. 15331578.
    36. 36)
      • 26. Zhang, T., Lee, B.: ‘In: ‘An automated bug triage approach: a concept profile and social network based developer recommendation’ in Huang, D.-S., Jiang, C., Bevilacqua, V., et al (Eds.): Proceedings of the Eighth International Conference Intelligent on Computing Technology, (Springer, Berlin, Heidelberg, 2012), pp. 505512.
    37. 37)
      • 28. Park, J., Lee, M., Kim, J., et al: ‘Cost-aware triage ranking algorithms for bug reporting systems’, Knowl. Inf. Syst., 2015, 48, (3), pp. 679705.
    38. 38)
      • 10. Anvik, J., Murphy, G.C.: ‘Reducing the effort of bug report triage: recommenders for development-oriented decisions’, ACM Trans. Softw. Eng. Methodol., 2011, 20, (3), pp. 10:110:35.
    39. 39)
      • 17. Perry, D.E., Stieg, C.S.: ‘Software faults in evolving a large, real-time system: a case study’, ‘In: Sommerville, I., Paul, M. (Eds): Proceedings of the Fourth European Software Engineering Conference (Springer, Berlin, Heidelberg, 1993), pp. 4867.
    40. 40)
      • 20. Canfora, G., Cerulo, L.: ‘Supporting change request assignment in open source development’. ACM Symp. on Applied Computing (SAC)’06, New York, USA, 2006, pp. 17671772.
    41. 41)
      • 3. Statistica Inc.: ‘Projected revenue of open source software 2008–2020’, Statista, 2017. Available at http://www.statista.com/statistics/270805/.
    42. 42)
      • 30. Naguib, H., Narayan, N., Brügge, B., et al: ‘Bug report assignee recommendation using activity profiles’. Working Conference on Mining Software Repositories (MSR)’13, IEEE Computer Society, Washington, USA, 2013, pp. 2230.
    43. 43)
      • 7. Lin, Z., Shu, F., Yang, Y., et al: ‘An empirical study on bug assignment automation using Chinese bug data’. Empirical Software Engineering and Measurement (ESEM)’09, IEEE Computer Society, Washington, USA, 2009, pp. 451455.
    44. 44)
      • 27. Wang, S., Zhang, W., Yang, Y., et al: ‘DevNet: exploring developer collaboration in heterogeneous networks of bug repositories’. IEEE Empirical Software Engineering and Measurement (ESEM)’13, Maryland, USA, 2013, pp. 193202.
http://iet.metastore.ingenta.com/content/journals/10.1049/iet-sen.2017.0159
Loading

Related content

content/journals/10.1049/iet-sen.2017.0159
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading
This is a required field
Please enter a valid email address