ABSTRACT
bug report is typically assigned to a single developer who is then responsible for fixing the bug. In Mozilla and Eclipse, between 37%-44% of bug reports are "tossed" (reassigned) to other developers, for example because the bug has been assigned by accident or another developer with additional expertise is needed. In any case, tossing increases the time-to-correction for a bug.
In this paper, we introduce a graph model based on Markov chains, which captures bug tossing history. This model has several desirable qualities. First, it reveals developer networks which can be used to discover team structures and to find suitable experts for a new task. Second, it helps to better assign developers to bug reports. In our experiments with 445,000 bug reports, our model reduced tossing events, by up to 72%. In addition, the model increased the prediction accuracy by up to 23 percentage points compared to traditional bug triaging approaches.
- R. Agrawal, D. Gunopulos, and F. Leymann. Mining process models from workflow logs. In EDBT '98: Proceedings of the 6th International Conference on Extending Database Technology, pages 469--483, London, UK, 1998. Springer-Verlag. Google ScholarDigital Library
- E. Alpaydin. Introduction to Machine Learning (Adaptive Computation and Machine Learning). The MIT Press, 2004. Google ScholarDigital Library
- J. Anvik, L. Hiew, and G. C. Murphy. Who should fix this bug? In ICSE '06: Proceedings of the 28th international conference on Software engineering, pages 361--370, New York, NY, USA, 2006. ACM. Google ScholarDigital Library
- N. Bettenburg, S. Just, A. Schröter, C. Weiss, R. Premraj, and T. Zimmermann. What makes a good bug report? In Proceedings of the 16th International Symposium on Foundations of Software Engineering, November 2008. Google ScholarDigital Library
- N. Bettenburg, R. Premraj, T. Zimmermann, and S. Kim. Duplicate bug reports considered harmful... really? In Proceedings of the 24th IEEE International Conference on Software Maintenance, September 2008.Google ScholarCross Ref
- C. Bird, A. Gourley, and P. Devanbu. Detecting patch submission and acceptance in oss projects. In MSR '07:Proceedings of the Fourth International Workshop on Mining Software Repositories, page 26, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarDigital Library
- C. Bird, A. Gourley, P. Devanbu, M. Gertz, and A. Swaminathan. Mining email social networks. In MSR '06:Proceedings of the 2006 international workshop on Mining software repositories, pages 137--143, New York, NY, USA, 2006. ACM. Google ScholarDigital Library
- C. Bird, D. Pattison, R. D'Souza, V. Filkov, and P. Devanbu. Latent social structure in open source projects. In SIGSOFT '08/FSE-16: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering, pages 24--35, New York, NY, USA, 2008.ACM. Google ScholarDigital Library
- Bugzilla bug tracking system.http://www.bugzilla.org/. Last accessed 2009-03-10.Google Scholar
- G. Canfora and L. Cerulo. Supporting change request assignment in open source development. In SAC '06:Proceedings of the 2006 ACM Symposium on Applied Computing, pages 1767--1772, 2006. Google ScholarDigital Library
- O. Cappé, E. Moulines, and T. Ryden. Inference in Hidden Markov Models (Springer Series in Statistics). Springer, August 2005. Google ScholarDigital Library
- T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein.Introduction to Algorithms, Second Edition. The MIT Press, September 2001. Google ScholarDigital Library
- D. Cubranic and G. C. Murphy. Automatic bug triage using text categorization. In SEKE 2004: Proceedings of the Sixteenth International Conference on Software Engineering&Knowledge Engineering, pages 92--97, 2004.Google Scholar
- M. D'Ambros, M. Lanza, and M. Pinzger. "A Bug's Life" Visualizing a Bug Database. In Proceedings of IEEE International Workshop on Visualizing Software for Understanding and Analysis (VisSoft 2007), pages 113--120, Banff, Alberta, Canada, 2007. IEEE Computer Society.Google ScholarCross Ref
- R. Durrett. Probability : Theory and Examples, chapter 5. Markov Chains. Wadsworth, Pacific Grove, California, 1991.Google Scholar
- C. M. Grinstead and J. L. Snell. Introduction to Probability, chapter 11. Markov Chains. American Mathematical Society, Pacific Grove, California, 1997.Google Scholar
- C. A. Halverson, J. B. Ellis, C. Danis, and W. A. Kellogg.Designing task visualizations to support the coordination of work in software development. In CSCW '06: Proceedings of the 2006 20th Anniversary Conference on Computer Supported Cooperative Work, pages 39--48, 2006. Google ScholarDigital Library
- L. Hiew. Assisted detection of duplicate bug reports.Master's thesis, The University of British Columbia, Vancouver, Canada, May 2006.Google Scholar
- P. Hooimeijer and W. Weimer. Modeling bug report quality.In ASE '07: Proceedings of the twenty-second IEEE/ACM International Conference on Automated Software Engineering, pages 34--43, 2007. Google ScholarDigital Library
- S. Minto and G. C. Murphy. Recommending emergent teams. In MSR '07: Proceedings of the Fourth International Workshop on Mining Software Repositories, page 5, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarDigital Library
- L. D. Panjer. Predicting eclipse bug lifetimes. In MSR '07: Proceedings of the Fourth International Workshop on Mining Software Repositories, page 29, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarDigital Library
- M. Pinzger, N. Nagappan, and B. Murphy. Can developer-module networks predict failures? In SIGSOFT'08/FSE-16: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering, pages 2--12, New York, NY, USA, 2008. ACM. Google ScholarDigital Library
- P. Runeson, M. Alexandersson, and O. Nyholm. Detection of duplicate defect reports using natural language processing. In ICSE '07: Proceedings of the 29th International Conference on Software Engineering, pages 499--510. IEEE Computer Society, 2007. Google ScholarDigital Library
- Q. Shao, Y. Chen, S. Tao, X. Yan, and N. Anerousis. Efficient ticket routing by resolution sequence mining. In KDD '08: Proceeding of the 14th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 605--613, New York, NY, USA, 2008. ACM. Google ScholarDigital Library
- R. Silva, J. Zhang, and J. G. Shanahan. Probabilistic workflow mining. In KDD '05: Proceedings of the eleventh ACM SIGKDD international conference on Knowledge discovery in data mining, pages 275--284, New York, NY, USA, 2005. ACM. Google ScholarDigital Library
- W. van der Aalst, T. Weijters, and L. Maruster. Workflow mining: Discovering process models from event logs. IEEE Trans. on Knowl. and Data Eng., 16(9):1128--1142, 2004. Google ScholarDigital Library
- X. Wang, L. Zhang, T. Xie, J. Anvik, and J. Sun. An approach to detecting duplicate bug reports using natural language and execution information. In ICSE '08: Proceedings of the 30th International Conference on Software Engineering. ACM, 2008. Google ScholarDigital Library
- Y. Wang, L. Li, and D. Xu. Pervasive QoS routing in next generation networks. Comput. Commun., 31(14):3485--3491, 2008. Google ScholarDigital Library
- C. Weiss, R. Premraj, T. Zimmermann, and A. Zeller. How long will it take to fix this bug? In MSR '07: Proceedings of the Fourth International Workshop on Mining Software Repositories, page 1, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarDigital Library
- A. Zeller. Why Programs Fail: A Guide to Systematic Debugging. Morgan Kaufmann, October 2005. Google ScholarDigital Library
Index Terms
- Improving bug triage with bug tossing graphs
Recommendations
Who should fix this bug?
ICSE '06: Proceedings of the 28th international conference on Software engineeringOpen source development projects typically support an open bug repository to which both developers and users can report bugs. The reports that appear in this repository must be triaged to determine if the report is one which requires attention and if it ...
Effective Bug Triage Based on Historical Bug-Fix Information
ISSRE '14: Proceedings of the 2014 IEEE 25th International Symposium on Software Reliability EngineeringFor complex and popular software, project teams could receive a large number of bug reports. It is often tedious and costly to manually assign these bug reports to developers who have the expertise to fix the bugs. Many bug triage techniques have been ...
A hybrid bug triage algorithm for developer recommendation
SAC '13: Proceedings of the 28th Annual ACM Symposium on Applied ComputingWith a great number of software applications that have been developed, software maintenance has become an important and challenging task, particularly due to the increasing scale of software projects. Even if developers can create and update bug reports ...
Comments