ABSTRACT
One challenge for maintaining a large-scale software system, especially an online service system, is to quickly respond to customer issues. The issue reports typically have many categorical attributes that reflect the characteristics of the issues. For a commercial system, most of the time the volume of reported issues is relatively constant. Sometimes, there are emerging issues that lead to significant volume increase. It is important for support engineers to efficiently and effectively identify and resolve such emerging issues, since they have impacted a large number of customers. Currently, problem identification for an emerging issue is a tedious and error-prone process, because it requires support engineers to manually identify a particular attribute combination that characterizes the emerging issue among a large number of attribute combinations. We call such an attribute combination effective combination, which is important for issue isolation and diagnosis. In this paper, we propose iDice, an approach that can identify the effective combination for an emerging issue with high quality and performance. We evaluate the effectiveness and efficiency of iDice through experiments. We have also successfully applied iDice to several Microsoft online service systems in production. The results confirm that iDice can help identify emerging issues and reduce maintenance effort.
- C. Arndt. Information Measures: Information and its Description in Science and Engineering. Springer, 2004.Google Scholar
- J. Bailey, T. Manoukian, and K. Ramamohanarao. Fast algorithms for mining emerging patterns. In Principles of Data Mining and Knowledge Discovery, pages 39--50. Springer, 2002. Google ScholarDigital Library
- M. Basseville, I. V. Nikiforov, et al. Detection of abrupt changes: theory and application, volume 104. Prentice Hall Englewood Cliffs, 1993. Google ScholarDigital Library
- C. Bird, V.-P. Ranganath, T. Zimmermann, N. Nagappan, and A. Zeller. Extrinsic influence factors in software reliability: A study of 200,000 windows machines. In Companion Proceedings of the 36th International Conference on Software Engineering, ICSE'14, pages 205--214, 2014. Google ScholarDigital Library
- A. Chou, J. Yang, B. Chelf, S. Hallem, and D. Engler. An empirical study of operating systems errors. In Proceedings of the 8th ACM Symposium on Operating Systems Principles, SOSP '01, pages 73--88, 2001. Google ScholarDigital Library
- M. D'Ambros, M. Lanza, and R. Robbes. Evaluating defect prediction approaches: A benchmark and an extensive comparison. Empirical Softw. Engg., 17(4-5):531--577, Aug. 2012. Google ScholarDigital Library
- R. Ding, Q. Fu, J. G. Lou, Q. Lin, D. Zhang, and T. Xie. Mining historical issue repositories to heal large-scale online service systems. In Proc. the 44th IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), pages 311--322, 2014. Google ScholarDigital Library
- G. Dong and J. Li. Efficient mining of emerging patterns: Discovering trends and differences. In Proceedings of the fifth ACM SIGKDD international conference on Knowledge discovery and data mining, pages 43--52. ACM, 1999. Google ScholarDigital Library
- I. Epifani, C. Ghezzi, and G. Tamburrelli. Change-point detection for black-box services. In Proceedings of the Eighteenth ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE '10, pages 227--236. ACM, 2010. Google ScholarDigital Library
- J. Han and M. Kamber. Data Mining: Concepts and Techniques. Morgan kaufmann, 2006. Google ScholarDigital Library
- J. Han, J. Pei, and Y. Yin. Mining frequent patterns without candidate generation. In ACM SIGMOD Record, volume 29, pages 1--12. ACM, 2000. Google ScholarDigital Library
- C. Kastner, P. G. Giarrusso, T. Rendel, S. Erdweg, K. Ostermann, and T. Berger. Variability-aware parsing in the presence of lexical macros and conditional compilation. In Proc. International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA'11), pages 805--824. ACM Press, 2011. Google ScholarDigital Library
- C. Kastner, K. Ostermann, and S. Erdweg. A variability-aware module system. In Proc. International Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA'12), pages 773--792. ACM, 2012. Google ScholarDigital Library
- B. Kenmei, G. Antoniol, and M. Di Penta. Trend analysis and issue prediction in large-scale open source systems. In Proc. the 12th European Conference on Software Maintenance and Reengineering (CSMR 2008), pages 73--82, April 2008. Google ScholarDigital Library
- D. Kim, X. Wang, S. Kim, A. Zeller, S. Cheung, and S. Park. Which crashes should i fix first?: Predicting top crashes at an early stage to prioritize debugging efforts. IEEE Transactions on Software Engineering, 37(3):430--447, 2011. Google ScholarDigital Library
- J. Li, G. Liu, and L. Wong. Mining statistically important equivalence classes and delta-discriminative emerging patterns. In Proceedings of the 13th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 430--439, 2007. Google ScholarDigital Library
- P. L. Li, R. Kivett, Z. Zhan, S.-e. Jeon, N. Nagappan, B. Murphy, and A. J. Ko. Characterizing the differences between pre- and post-release versions of software. In Proceedings of the 33rd International Conference on Software Engineering, ICSE '11, pages 716--725, 2011. Google ScholarDigital Library
- Z. Li, L. Tan, X. Wang, S. Lu, Y. Zhou, and C. Zhai. Have things changed now?: an empirical study of bug characteristics in modern open source software. In Proceedings of the 1st workshop on Architectural and system support for improving software dependability, pages 25--33. ACM, 2006. Google ScholarDigital Library
- B. Livshits and T. Zimmermann. Dynamine: Finding common error patterns by mining software revision histories. In Proceedings ESEC/FSE-13, pages 296--305, New York, NY, USA, 2005. ACM. Google ScholarDigital Library
- J.-G. Lou, Q. Lin, R. Ding, Q. Fu, D. Zhang, and T. Xie. Software analytics for incident management of online services: An experience report. In Proc. the IEEE/ACM 28th International Conference on Automated Software Engineering (ASE'13), pages 475--485, 2013.Google ScholarDigital Library
- T. Menzies, A. Butcher, D. Cok, A. Marcus, L. Layman, F. Shull, B. Turhan, and T. Zimmermann. Local versus global lessons for defect prediction and effort estimation. Software Engineering, IEEE Transactions on, 39(6):822--834, June 2013. Google ScholarDigital Library
- T. Menzies, Z. Milton, B. Turhan, B. Cukic, Y. Jiang, and A. Bener. Defect prediction from static code features: Current results, limitations, new approaches. Automated Software Engg., 17(4):375--407, Dec. 2010. Google ScholarDigital Library
- T. H. Nguyen, B. Adams, Z. M. Jiang, A. E. Hassan, M. Nasser, and P. Flora. Automated detection of performance regressions using statistical process control techniques. In Proceedings of the 3rd ACM/SPEC International Conference on Performance Engineering, ICPE '12, pages 299--310, 2012. Google ScholarDigital Library
- S. Shivaji, E. Whitehead, R. Akella, and S. Kim. Reducing features to improve code change-based bug prediction. Software Engineering, IEEE Transactions on, 39(4):552--569, April 2013. Google ScholarDigital Library
- J. Wang, Y. Dang, H. Zhang, K. Chen, T. Xie, and D. Zhang. Mining succinct and high-coverage API usage patterns from source code. In Proceedings of the 10th Working Conference on Mining Software Repositories, MSR '13, pages 319--328, 2013. Google ScholarDigital Library
- A. Wasylkowski, A. Zeller, and C. Lindig. Detecting object usage anomalies. In Proceedings ESEC-FSE '07, pages 35--44, New York, NY, USA, 2007. ACM. Google ScholarDigital Library
- H. Zhang. An investigation of the relationships between lines of code and defects. In Proc. IEEE International Conference on Software Maintenance (ICSM'09), pages 274--283, Sept 2009.Google ScholarCross Ref
- H. Zhang and S. Kim. Monitoring software quality evolution for defects. IEEE Software, 27(4):58--64, 2010. Google ScholarDigital Library
- X. Zhang, G. Dong, and R. Kotagiri. Exploring constraints to efficiently mine emerging patterns from large high-dimensional datasets. In Proc. of the 6th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 310--314, 2000. Google ScholarDigital Library
- H. Zhong, T. Xie, L. Zhang, J. Pei, and H. Mei. MAPO: Mining and recommending API usage patterns. In Proc. the 23rd European Conference on Object-Oriented Programming (ECOOP 2009), Genoa, pages 318--343. Springer-Verlag, 2009. Google ScholarDigital Library
Index Terms
- iDice: problem identification for emerging issues
Recommendations
Efficient incident identification from multi-dimensional issue reports via meta-heuristic search
ESEC/FSE 2020: Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software EngineeringIn large-scale cloud systems, unplanned service interruptions and outages may cause severe degradation of service availability. Such incidents can occur in a bursty manner, which will deteriorate user satisfaction. Identifying incidents rapidly and ...
An empirical study on the issue reports with questions raised during the issue resolving process
An issue report describes a bug or a feature request for a software system. When resolving an issue report, developers may discuss with other developers and/or the reporter to clarify and resolve the reported issue. During this process, questions can be ...
Classifying issue reports according to feature descriptions in a user manual based on a deep learning model
Abstract ContextIssue reports are documents with which users report problems and state their opinions on a software system. Issue reports are useful for software maintenance, but managing them requires developers’ considerable ...
Comments