Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3510003.3510043acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article
Open access

On debugging the performance of configurable software systems: developer needs and tailored tool support

Published: 05 July 2022 Publication History

Abstract

Determining whether a configurable software system has a performance bug or it was misconfigured is often challenging. While there are numerous debugging techniques that can support developers in this task, there is limited empirical evidence of how useful the techniques are to address the actual needs that developers have when debugging the performance of configurable software systems; most techniques are often evaluated in terms of technical accuracy instead of their usability. In this paper, we take a human-centered approach to identify, design, implement, and evaluate a solution to support developers in the process of debugging the performance of configurable software systems. We first conduct an exploratory study with 19 developers to identify the information needs that developers have during this process. Subsequently, we design and implement a tailored tool, adapting techniques from prior work, to support those needs. Two user studies, with a total of 20 developers, validate and confirm that the information that we provide helps developers debug the performance of configurable software systems.

References

[1]
Iago Abal, Jean Melo, Ştefan Stănciulescu, Claus Brabrand, Márcio Ribeiro, and Andrzej Wąsowski. 2018. Variability Bugs in Highly Configurable Systems: A Qualitative Analysis. ACM Trans. Softw. Eng. Methodol. (TOSEM) 26, 3, Article 10 (Jan. 2018), 34 pages.
[2]
Andrea Adamoli and Matthias Hauswirth. 2010. Trevis: A Context Tree Visualization and Analysis Framework and Its Use for Classifying Performance Failure Reports. In Proc. Int'l Symposium Software Visualization (SOFTVIS) (Salt Lake City, UT, USA). ACM, New York, NY, USA, 73--82.
[3]
Hiralal Agrawal and Joseph R Horgan. 1990. Dynamic Program Slicing. ACM SIGPlan Notices 25, 6 (1990), 246--256.
[4]
Mohammad Mejbah ul Alam, Tongping Liu, Guangming Zeng, and Abdullah Muzahid. 2017. SyncPerf: Categorizing, Detecting, and Diagnosing Synchronization Performance Bugs. In Proc. European Conference on Computer Systems (EuroSys) (Belgrade, Serbia). ACM, New York, NY, USA, 298--313.
[5]
David Andrzejewski, Anne Mulhern, Ben Liblit, and Xiaojin Zhu. 2007. Statistical Debugging Using Latent Topic Models. In Proc. European Conf. Machine Learning (Warsaw, Poland). Springer-Verlag, Berlin, Heidelberg, 6--17.
[6]
Cor-Paul Bezemer, J.A. Pouwelse, and Brendan Gregg. 2015. Understanding Software Performance Regressions Using Differential Flame Graphs. In Int'l Conf. Software Analysis, Evolution, and Reengineering (SANER) (Montreal, Canada). IEEE, Los Alamitos, CA, USA, 535--539.
[7]
James Bornholt and Emina Torlak. 2018. Finding Code That Explodes Under Symbolic Evaluation. Proc. Int'l Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) 2, Article 149 (Oct. 2018), 26 pages.
[8]
Silvia Breu, Rahul Premraj, Jonathan Sillito, and Thomas Zimmermann. 2010. Information Needs in Bug Reports: Improving Cooperation between Developers and Users. In Proc. Conf. Computer Supported Cooperative Work (CSCW) (Savannah, GA, USA). ACM, New York, NY, USA, 301--310.
[9]
Brian Burg, Richard Bailey, Andrew J. Ko, and Michael D. Ernst. 2013. Interactive Record/Replay for Web Application Debugging. In Proc. Symposium User Interface Software and Technology (UIST) (St. Andrews, Scotland, United Kingdom). ACM, New York, NY, USA, 473--484.
[10]
Pablo De Oliveira Castro, Chadi Akel, Eric Petit, Mihail Popov, and William Jalby. 2015. CERE: LLVM-Based Codelet Extractor and REplayer for Piecewise Benchmarking and Optimization. ACM Trans. Archit. Code Optim. (TACO) 12, 1, Article 6 (April 2015), 24 pages.
[11]
Oscar Chaparro, Jing Lu, Fiorella Zampetti, Laura Moreno, Massimiliano Di Penta, Andrian Marcus, Gabriele Bavota, and Vincent Ng. 2017. Detecting Missing Information in Bug Descriptions. In Proc. Europ. Software Engineering Conf. Foundations of Software Engineering (ESEC/FSE) (Paderborn, Germany). ACM, New York, NY, USA, 396--407.
[12]
Jürgen Cito, Philipp Leitner, Christian Bosshard, Markus Knecht, Genc Mazlami, and Harald C. Gall. 2018. PerformanceHat: Augmenting Source Code with Runtime Performance Traces in the IDE. In Proc. Int'l Conf. Software Engineering: Companion Proceeedings (Gothenburg, Sweden). ACM, New York, NY, USA, 41--44.
[13]
Charlie Curtsinger and Emery D. Berger. 2016. COZ: Finding Code that Counts with Causal Profiling. In USENIX Annual Technical Conference (ATC). USENIX Association, Denver, CO, USA, 184--197.
[14]
Nils Dahlbäck, Arne Jönsson, and Lars Ahrenberg. 1993. Wizard of Oz Studies---Why and How. Knowledge-Based Systems 6, 4 (1993), 258--266.
[15]
EJ-technologies. 2019. JProfiler 10. EJ-technologies. Retrieved December 10, 2019 from https://www.ej-technologies.com/products/jprofiler/overview.html
[16]
Tayba Farooqui, Tauseef Rana, and Fakeeha Jafari. 2019. Impact of Human-Centered Design Process (HCDP) on Software Development Process. In Int'l Conf. Communication, Computing and Digital systems (C-CODE) (Islamabad, Pakistan). IEEE, Los Alamitos, CA, USA, 110--114.
[17]
Xiaoqin Fu, Haipeng Cai, and Li Li. 2020. Dads: Dynamic Slicing Continuously-Running Distributed Programs with Budget Constraints. In Proc. Int'l Symp. Foundations of Software Engineering (FSE) (Virtual Event, USA). ACM, New York, NY, USA, 1566--1570.
[18]
Dennis Giffhorn. 2011. Advanced Chopping of Sequential and Concurrent Programs. Software Quality Journal 19, 2 (2011), 239--294.
[19]
Jürgen Graf, Martin Hecker, and Martin Mohr. 2012. Using JOANA for Information Flow Control in Java Programs - A Practical Guide. Technical Report 24. Karlsruhe Institute of Technology.
[20]
Alexander Grebhahn, Norbert Siegmund, and Sven Apel. 2019. Predicting Performance of Software Configurations: There is no Silver Bullet. arXiv:1911.12643 [cs.SE]
[21]
Brendan Gregg. 2016. The Flame Graph. Commun. ACM 59, 6 (May 2016), 48--57.
[22]
Jianmei Guo, Krzysztof Czarnecki, Sven Apel, Norbert Siegmund, and Andrzej Wąsowski. 2013. Variability-Aware Performance Prediction: A Statistical Learning Approach. In Proc. Int'l Conf. Automated Software Engineering (ASE) (Silicon Valley, CA, USA). ACM, New York, NY, USA, 301--311.
[23]
Huong Ha and Hongyu Zhang. 2019. DeepPerf: Performance Prediction for Configurable Software with Deep Sparse Neural Network. In Proc. Int'l Conf. Software Engineering (ICSE) (Montreal, Quebec, Canada). IEEE, Los Alamitos, CA, USA, 1095--1106.
[24]
H. Ha and H. Zhang. 2019. Performance-Influence Model for Highly Configurable Software with Fourier Learning and Lasso Regression. In Proc. Int'l Conf. Software Maintance and Evolution (ICSME). IEEE, Los Alamitos, CA, USA, 470--480.
[25]
Shi Han, Yingnong Dang, Song Ge, Dongmei Zhang, and Tao Xie. 2012. Performance Debugging in the Large via Mining Millions of Stack Traces. In Proc. Int'l Conf. Software Engineering (ICSE) (Zurich, Switzerland). IEEE, Piscataway, NJ, USA, 145--155.
[26]
Xue Han and Tingting Yu. 2016. An Empirical Study on Performance Bugs for Highly Configurable Software Systems. In Proc. Int'l Symposium Empirical Software Engineering and Measurement (ESEM) (Ciudad Real, Spain). ACM, New York, NY, USA, Article 23, 10 pages.
[27]
Xue Han, Tingting Yu, and David Lo. 2018. PerfLearner: Learning from Bug Reports to Understand and Generate Performance Test Frames. In Proc. Int'l Conf. Automated Software Engineering (ASE) (Montpellier, France). ACM, New York, NY, USA, 17--28.
[28]
Xue Han, Tingting Yu, and Michael Pradel. 2021. ConfProf: White-Box Performance Profiling of Configuration Options. In Proc. Int'l Conf. Performance Engineering (ICPE). ACM, New York, NY, USA, 1--8.
[29]
Haochen He, Zhouyang Jia, Shanshan Li, Erci Xu, Tingting Yu, Yue Yu, Ji Wang, and Xiangke Liao. 2020. CP-Detector: Using Configuration-related Performance Properties to Expose Performance Bugs. In Proc. Int'l Conf. Automated Software Engineering (ASE). ACM, New York, NY, USA, 623--634.
[30]
Md Shahriar Iqbal, Rahul Krishna, Mohammad Ali Javidian, Baishakhi Ray, and Pooyan Jamshidi. 2022. Unicorn: Reasoning about Configurable System Performance through the lens of Causality. In Proc. Conf. Computer Systems (EuroSys) (Rennes, France). ACM, New York, NY, USA.
[31]
Riitta Jääskeläinen. 2010. Think-aloud protocol. John Benjamins Publishing Amsterdam/Philadelphia, Amsterdam. 371--374 pages.
[32]
Guoliang Jin, Linhai Song, Xiaoming Shi, Joel Scherpelz, and Shan Lu. 2012. Understanding and Detecting Real-world Performance Bugs. In Proc. Conf. Programming Language Design and Implementation (PLDI) (Beijing, China). ACM, New York, NY, USA, 77--88.
[33]
Milan Jovic, Andrea Adamoli, and Matthias Hauswirth. 2011. Catch Me If You Can: Performance Bug Detection in the Wild. In Proc. Int'l Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Portland, Oregon, USA). ACM, New York, NY, USA, 155--170.
[34]
Natalia Juristo and Omar S. Gómez. 2011. Replication of Software Engineering Experiments. Springer Berlin Heidelberg, Berlin, Heidelberg, 60--88.
[35]
C. Kaltenecker, A. Grebhahn, N. Siegmund, and S. Apel. 2020. The Interplay of Sampling and Machine Learning for Software Performance Prediction. IEEE Software 37, 4 (2020), 58--66.
[36]
Christian Kaltenecker, Alexander Grebhahn, Norbert Siegmund, Jianmei Guo, and Sven Apel. 2019. Distance-Based Sampling of Software Configuration Spaces. In Proc. Int'l Conf. Software Engineering (ICSE) (Montreal, Quebec, Canada). IEEE, Los Alamitos, CA, USA, 21--31.
[37]
Andrew J. Ko and Brad A. Myers. 2004. Designing the Whyline: A Debugging Interface for Asking Questions about Program Behavior. In Proc. Conf Human Factors in Computing Systems (CHI) (Vienna, Austria). ACM, New York, NY, USA, 151--158.
[38]
Sergiy Kolesnikov, Norbert Siegmund, Christian Kästner, Alexander Grebhahn, and Sven Apel. 2019. Tradeoffs in Modeling Performance of Highly Configurable Software Systems. Software and System Modeling (SoSyM) 18, 3 (2019), 2265--2283.
[39]
Bogdan Korel and Janusz Laski. 1988. Dynamic Program Slicing. Information processing letters 29, 3 (1988), 155--163.
[40]
Jens Krinke. 2003. Barrier Slicing and Chopping. In Int'l Workshop Source Code Analysis and Manipulation (SCAM). IEEE, Amsterdam, Netherlands, 81--87.
[41]
Rahul Krishna, Md Shahriar Iqbal, Mohammad Ali Javidian, Baishakhi Ray, and Pooyan Jamshidi. 2020. CADET: A Systematic Method For Debugging Misconfigurations using Counterfactual Reasoning. arXiv:2010.06061 [cs.SE]
[42]
T. D. LaToza and B. A. Myers. 2011. Visualizing Call Graphs. In Symposium Visual Languages and Human-Centric Computing (VL/HCC). IEEE, Los Alamitos, CA, USA, 117--124.
[43]
Chi Li, Shu Wang, Henry Hoffmann, and Shan Lu. 2020. Statically Inferring Performance Properties of Software Configurations. In Proc. European Conf. Computer Systems (EuroSys) (Heraklion, Greece). ACM, New York, NY, USA, Article 10, 10 pages.
[44]
Ding Li, Yingjun Lyu, Jiaping Gui, and William G.J. Halfond. 2016. Automated Energy Optimization of HTTP Requests for Mobile Applications. In Proc. Int'l Conf. Software Engineering (ICSE) (Austin, TX, USA). ACM, New York, NY, USA, 249--260.
[45]
Max Lillack, Christian Kästner, and Eric Bodden. 2018. Tracking Load-time Configuration Options. IEEE Transactions on Software Engineering 44, 12 (12 2018), 1269--1291.
[46]
Yepang Liu, Chang Xu, and Shing-Chi Cheung. 2014. Characterizing and Detecting Performance Bugs for Smartphone Applications. In Proc. Int'l Conf. Software Engineering (ICSE) (Hyderabad, India) (ICSE 2014). ACM, New York, NY, USA, 1013--1024.
[47]
Jens Meinicke, Chu-Pan Wong, Christian Kästner, and Gunter Saake. 2018. Understanding Differences Among Executions with Variational Traces. Technical Report 1807.03837. arXiv.
[48]
Jens Meinicke, Chu-Pan Wong, Christian Kästner, Thomas Thüm, and Gunter Saake. 2016. On Essential Configuration Complexity: Measuring Interactions in Highly-configurable Systems. In Proc. Int'l Conf. Automated Software Engineering (ASE) (Singapore, Singapore). ACM, New York, NY, USA, 483--494.
[49]
Jean Melo, Claus Brabrand, and Andrzej Wąsowski. 2016. How Does the Degree of Variability Affect Bug Finding?. In Proc. Int'l Conf. Software Engineering (ICSE) (Austin, TX, USA). ACM, New York, NY, USA, 679--690.
[50]
Jean Melo, Fabricio Batista Narcizo, Dan Witzner Hansen, Claus Brabrand, and Andrzej Wasowski. 2017. Variability through the Eyes of the Programmer. In Proc. Int'l Conference Program Comprehension (ICPC) (Buenos Aires, Argentina). IEEE, Los Alamitos, CA, USA, 34--44.
[51]
Brad A. Myers, Andrew J. Ko, Thomas D. LaToza, and YoungSeok Yoon. 2016. Programmers Are Users Too: Human-Centered Methods for Improving Programming Tools. Computer 49, 7 (July 2016), 44--52.
[52]
Vivek Nair, Tim Menzies, Norbert Siegmund, and Sven Apel. 2017. Using Bad Learners to Find Good Configurations. In Proc. Europ. Software Engineering Conf. Foundations of Software Engineering (ESEC/FSE) (Paderborn, Germany) (ESEC/FSE 2017). ACM, New York, NY, USA, 257--267.
[53]
Nicholas Nethercote and Julian Seward. 2007. Valgrind: A Framework for Heavyweight Dynamic Binary Instrumentation. In Proc. Conf. Programming Language Design and Implementation (PLDI) (San Diego, CA, USA). ACM, New York, NY, USA, 89--100.
[54]
Adrian Nistor, Po-Chun Chang, Cosmin Radoi, and Shan Lu. 2015. Caramel: Detecting and Fixing Performance Problems That Have Non-intrusive Fixes. In Proc. Int'l Conf. Software Engineering (ICSE) (Florence, Italy). IEEE, Piscataway, NJ, USA, 902--912.
[55]
Adrian Nistor, Tian Jiang, and Lin Tan. 2013. Discovering, Reporting, and Fixing Performance Bugs. In Proc. Int'l Conf. Mining Software Repositories (San Francisco, CA, USA). IEEE, Piscataway, NJ, USA, 237--246.
[56]
Adrian Nistor, Linhai Song, Darko Marinov, and Shan Lu. 2013. Toddler: Detecting Performance Problems via Similar Memory-access Patterns. In Proc. Int'l Conf. Software Engineering (ICSE) (San Francisco, CA, USA). IEEE, Piscataway, NJ, USA, 562--571.
[57]
Jeho Oh, Don Batory, Margaret Myers, and Norbert Siegmund. 2017. Finding Near-optimal Configurations in Product Lines by Random Sampling. In Proc. Europ. Software Engineering Conf. Foundations of Software Engineering (ESEC/FSE) (Paderborn, Germany). ACM, New York, NY, USA, 61--71.
[58]
J. Park, M. Kim, B. Ray, and D. Bae. 2012. An Empirical Study of Supplementary Bug Fixes. In Proc. Int'l Conf. Mining Software Repositories (Zurich, Switzerland). IEEE, Los Alamitos, CA, USA, 40--49.
[59]
Chris Parnin and Alessandro Orso. 2011. Are Automated Debugging Techniques Actually Helping Programmers?. In Proc. Int'l Symp. Software Testing and Analysis (ISSTA) (Toronto, Canada). ACM, New York, NY, USA, 199--209.
[60]
Guillaume Pothier, Éric Tanter, and José Piquer. 2007. Scalable Omniscient Debugging. In Proc. Int'l Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Montreal, Quebec, Canada). ACM, New York, NY, USA, 535--552.
[61]
Johnny Saldaña. 2015. The Coding Manual for Qualitative Researchers. Sage, London, England.
[62]
J. P. Sandoval Alcocer, F. Beck, and A. Bergel. 2019. Performance Evolution Matrix: Visualizing Performance Variations Along Software Versions. In Conf. Software Visualization (VISSOFT). IEEE, Los Alamitos, CA, USA, 1--11.
[63]
Stefan Schmidt. 2009. Shall we Really do it Again? The Powerful Concept of Replication is Neglected in the Social Sciences. Review of General Psychology 13, 2 (2009), 90--100.
[64]
Norbert Siegmund, Alexander Grebhahn, Sven Apel, and Christian Kästner. 2015. Performance-influence Models for Highly Configurable Systems. In Proc. Europ. Software Engineering Conf. Foundations of Software Engineering (ESEC/FSE) (Bergamo, Italy). ACM, New York, NY, USA, 284--294.
[65]
Norbert Siegmund, Sergiy S. Kolesnikov, Christian Kästner, Sven Apel, Don Batory, Marko Rosenmüller, and Gunter Saake. 2012. Predicting Performance via Automated Feature-interaction Detection. In Proc. Int'l Conf. Software Engineering (ICSE) (Zurich, Switzerland). IEEE, Piscataway, NJ, USA, 167--177.
[66]
Norbert Siegmund, Marko Rosenmüller, Martin Kuhlemann, Christian Kästner, Sven Apel, and Gunter Saake. 2012. SPLConqueror: Toward Optimization of Non-functional Properties in Software Product Lines. Software Quality Journal 20, 3--4 (Sept. 2012), 487--517.
[67]
Linhai Song and Shan Lu. 2014. Statistical Debugging for Real-World Performance Problems. In Proc. Int'l Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Portland, OR, USA). ACM, New York, NY, USA, 561--578.
[68]
Linhai Song and Shan Lu. 2017. Performance Diagnosis for Inefficient Loops. In Proc. Int'l Conf. Software Engineering (ICSE) (Buenos Aires, Argentina). IEEE, Piscataway, NJ, USA, 370--380.
[69]
John Toman and Dan Grossman. 2016. Staccato: A Bug Finder for Dynamic Configuration Updates. In Proc. European Conf. Object-Oriented Programming (ECOOP). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany, 1--23.
[70]
Jonas Trümper, Jürgen Döllner, and Alexandru Telea. 2013. Multiscale Visual Comparison of Execution Traces. In Proc. Intl Conf. Program Comprehension (ICPC) (San Francisco, CA, USA). IEEE, Los Alamitos, CA, USA, 53--62.
[71]
Miguel Velez, Pooyan Jamshidi, Florian Sattler, Norbert Siegmund, Sven Apel, and Christian Kästner. 2020. ConfigCrusher: Towards White-Box Performance Analysis for Configurable Systems. Autom Softw Eng 27, 3 (2020), 265--300.
[72]
Miguel Velez, Pooyan Jamshidi, Norbert Siegmund, Sven Apel, and Christian Kästner. 2021. White-Box Analysis over Machine Learning: Modeling Performance of Configurable Systems. In Proc. Int'l Conf. Software Engineering (ICSE) (Madrid, Spain). IEEE, Los Alamitos, CA, USA, 1072--1084.
[73]
Miguel Velez, Pooyan Jamshidi, Norbert Siegmund, Sven Apel, and Christian Kästner. 2022. On Debugging the Performance of Configurable Software Systems: Developer Needs and Tailored Tool Support - Supplementary Material - https://bit.ly/35HUvl9.
[74]
VisualVM. 2020. VisualVM. VisualVM. Retrieved November 24, 2020 from https://visualvm.github.io/
[75]
Shu Wang, Chi Li, Henry Hoffmann, Shan Lu, William Sentosa, and Achmad Imam Kistijantoro. 2018. Understanding and Auto-Adjusting Performance-Sensitive Configurations. In Proc. Int'l Conf. Architectural Support for Programming Languages and Operating Systems (ASPLOS) (Williamsburg, VA, USA). ACM, New York, NY, USA, 154--168.
[76]
Max Weber, Sven Apel, and Norbert Siegmund. 2021. White-Box Performance-Influence Models: A Profiling and Learning Approach. In Proc. Int'l Conf. Software Engineering (ICSE) (Madrid, Spain). IEEE, Los Alamitos, CA, USA, 232--233.
[77]
Mark Weiser. 1981. Program Slicing. In Proc. Int'l Conf. Software Engineering (ICSE) (San Diego, CA, USA). IEEE, Piscataway, NJ, USA, 439--449.
[78]
Claas Wilke, Sebastian Richly, Sebastian Götz, Christian Piechnick, and Uwe Amann. 2013. Energy Consumption and Efficiency in Mobile Applications: A User Feedback Study. In Proc. Int'l Conf. Green Computing and Communications. IEEE, Los Alamitos, CA, USA, 134--141.
[79]
Chu-Pan Wong, Jens Meinicke, Lukas Lazarek, and Christian Kästner. 2018. Faster Variational Execution with Transparent Bytecode Transformation. Proc. Int'l Conf. Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) 2, Article 117 (Oct. 2018), 30 pages.
[80]
Baowen Xu, Ju Qian, Xiaofang Zhang, Zhongqiang Wu, and Lin Chen. 2005. A Brief Survey of Program Slicing. ACM SIGSOFT Software Engineering Notes 30, 2 (2005), 1--36.
[81]
Tianyin Xu, Xinxin Jin, Peng Huang, Yuanyuan Zhou, Shan Lu, Long Jin, and Shankar Pasupathy. 2016. Early Detection of Configuration Errors to Reduce Failure Damage. In Proc. Conf. Operating Systems Design and Implementation (OSDI) (Savannah, GA, USA). USENIX Association, Berkeley, CA, USA, 619--634.
[82]
Tianyin Xu, Jiaqi Zhang, Peng Huang, Jing Zheng, Tianwei Sheng, Ding Yuan, Yuanyuan Zhou, and Shankar Pasupathy. 2013. Do Not Blame Users for Misconfigurations. In Proc. Symp. Operating Systems Principles (Farminton, PA, USA). ACM, New York, NY, USA, 244--259.
[83]
Tingting Yu and Michael Pradel. 2016. SyncProf: Detecting, Localizing, and Optimizing Synchronization Bottlenecks. In Proc. Int'l Symp. Software Testing and Analysis (ISSTA) (Saarbrücken, Germany). ACM, New York, NY, USA, 389--400.
[84]
Tingting Yu and Michael Pradel. 2018. Pinpointing and Repairing Performance Bottlenecks in Concurrent Programs. Empirical Softw. Eng. 23, 5 (Oct. 2018), 3034--3071.
[85]
Andreas Zeller. 1999. Yesterday, My Program Worked. Today, It Does Not. Why? SIGSOFT Softw. Eng. Notes 24, 6 (Oct. 1999), 253--267.
[86]
Andreas Zeller. 2009. Why Programs Fail: A Guide to Systematic Debugging. Elsevier, Amsterdam, The Netherlands.
[87]
Jiaqi Zhang, Lakshminarayanan Renganarayana, Xiaolan Zhang, Niyu Ge, Vasanth Bala, Tianyin Xu, and Yuanyuan Zhou. 2014. EnCore: Exploiting System Environment and Correlation Information for Misconfiguration Detection. In Proc. Int'l Conf. Architectural Support for Programming Languages and Operating Systems (ASPLOS) (Salt Lake City, UT, USA). ACM, New York, NY, USA, 687--700.
[88]
Sai Zhang and Michael D. Ernst. 2014. Which Configuration Option Should I Change?. In Proc. Int'l Conf. Software Engineering (ICSE) (Hyderabad, India). ACM, New York, NY, USA, 152--163.
[89]
Sai Zhang and Michael D. Ernst. 2015. Proactive Detection of Inadequate Diagnostic Messages for Software Configuration Errors. In Proc. Int'l Symp. Software Testing and Analysis (ISSTA) (Baltimore, MD, USA). ACM, New York, NY, USA, 12--23.
[90]
Yuqing Zhu, Jianxun Liu, Mengying Guo, Yungang Bao, Wenlong Ma, Zhuoyue Liu, Kunpeng Song, and Yingchun Yang. 2017. BestConfig: Tapping the Performance Potential of Systems via Automatic Configuration Tuning. In Proc. Symposium Cloud Computing (SoCC) (Santa Clara, CA, USA). ACM, New York, NY, USA, 338--350.

Cited By

View all
  • (2024)Characterizing Resource Interaction Failures in Mobile ApplicationsProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676601(11-16)Online publication date: 2-Sep-2024
  • (2024)Navigating Expertise in Configurable Software Systems through the Maze of Variability2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER60148.2024.00053(450-454)Online publication date: 12-Mar-2024
  • (2024)Are You Trapped in the Configuration Abyss? An Interview With Prof. Sven ApelIEEE Software10.1109/MS.2024.338365841:4(175-181)Online publication date: Jul-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '22: Proceedings of the 44th International Conference on Software Engineering
May 2022
2508 pages
ISBN:9781450392211
DOI:10.1145/3510003
This work is licensed under a Creative Commons Attribution International 4.0 License.

Sponsors

In-Cooperation

  • IEEE CS

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 05 July 2022

Check for updates

Qualifiers

  • Research-article

Funding Sources

  • German Research Foundation
  • NASA
  • NSF
  • Software Engineering Institute
  • German Federal Ministry of Education and Research

Conference

ICSE '22
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)326
  • Downloads (Last 6 weeks)63
Reflects downloads up to 03 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Characterizing Resource Interaction Failures in Mobile ApplicationsProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676601(11-16)Online publication date: 2-Sep-2024
  • (2024)Navigating Expertise in Configurable Software Systems through the Maze of Variability2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER60148.2024.00053(450-454)Online publication date: 12-Mar-2024
  • (2024)Are You Trapped in the Configuration Abyss? An Interview With Prof. Sven ApelIEEE Software10.1109/MS.2024.338365841:4(175-181)Online publication date: Jul-2024
  • (2023)CAMEOProceedings of the 2023 ACM Symposium on Cloud Computing10.1145/3620678.3624791(555-571)Online publication date: 30-Oct-2023
  • (2023)DiagConfig: Configuration Diagnosis of Performance Violations in Configurable Software SystemsProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616300(566-578)Online publication date: 30-Nov-2023
  • (2023)PASD: A Performance Analysis Approach Through the Statistical Debugging of Kernel Events2023 IEEE 23rd International Working Conference on Source Code Analysis and Manipulation (SCAM)10.1109/SCAM59687.2023.00025(151-161)Online publication date: 2-Oct-2023
  • (2023)Characterizing the Complexity and Its Impact on Testing in ML-Enabled Systems : A Case Sutdy on Rasa2023 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME58846.2023.00034(258-270)Online publication date: 1-Oct-2023
  • (2023)Better Safe Than Sorry! Automated Identification of Functionality-Breaking Security-Configuration Rules2023 IEEE/ACM International Conference on Automation of Software Test (AST)10.1109/AST58925.2023.00013(90-100)Online publication date: May-2023
  • (2022)JSIMutate: understanding performance results through mutationsProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3558930(1721-1725)Online publication date: 7-Nov-2022
  • (2022)UnicornProceedings of the Seventeenth European Conference on Computer Systems10.1145/3492321.3519575(199-217)Online publication date: 28-Mar-2022
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media