skip to main content
10.1145/2884781.2884795acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

iDice: problem identification for emerging issues

Published:14 May 2016Publication History

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.

References

  1. C. Arndt. Information Measures: Information and its Description in Science and Engineering. Springer, 2004.Google ScholarGoogle Scholar
  2. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. Basseville, I. V. Nikiforov, et al. Detection of abrupt changes: theory and application, volume 104. Prentice Hall Englewood Cliffs, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  5. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  6. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  8. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  9. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. Han and M. Kamber. Data Mining: Concepts and Techniques. Morgan kaufmann, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  12. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  14. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  15. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  19. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  20. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  21. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  26. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  27. 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 ScholarGoogle ScholarCross RefCross Ref
  28. H. Zhang and S. Kim. Monitoring software quality evolution for defects. IEEE Software, 27(4):58--64, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  30. 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 ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. iDice: problem identification for emerging issues

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        ICSE '16: Proceedings of the 38th International Conference on Software Engineering
        May 2016
        1235 pages
        ISBN:9781450339001
        DOI:10.1145/2884781

        Copyright © 2016 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 14 May 2016

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate276of1,856submissions,15%

        Upcoming Conference

        ICSE 2025

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader