How are performance issues caused and resolved?-an empirical study from a design perspective

Yutong Zhao, Lu Xiao, Xiao Wang, Lei Sun, Bihuan Chen, Yang Liu, Andre B. Bondi

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

13 Scopus citations

Abstract

Empirical experience regarding how real-life performance issues are caused and resolved can provide valuable insights for practitioners to effectively and efficiently prevent, detect, and fix performance issues. Prior work shows that most performance issues have their roots in poor architectural decisions. This paper contributes a large scale empirical study of 192 real-life performance issues, with an emphasis on software design. First, this paper contributes a holistic view of eight common root causes and typical resolutions that recur in different projects, and surveyed existing literature, in particular, tools, that can detect and fix each type of performance issue. Second, this study is first-of-its-kind to investigate performance issues from a design perspective. In the 192 issues, 33% required design-level optimization, i.e. simultaneously revising a group of related source files for resolving the issues. We reveal four design-level optimization patterns, which have shown different prevalence in resolving different root causes. Finally, this study investigated the Return on Investment for addressing performance issues, to help practitioners choose between localized or design-level optimization resolutions, and to prioritize issues due to different root causes.

Original languageEnglish
Title of host publicationICPE 2020 - Proceedings of the ACM/SPEC International Conference on Performance Engineering
Pages181-192
Number of pages12
ISBN (Electronic)9781450369916
DOIs
StatePublished - 20 Apr 2020
Event11th ACM/SPEC International Conference on Performance Engineering, ICPE 2020 - Edmonton, Canada
Duration: 20 Apr 202024 Apr 2020

Publication series

NameICPE 2020 - Proceedings of the ACM/SPEC International Conference on Performance Engineering

Conference

Conference11th ACM/SPEC International Conference on Performance Engineering, ICPE 2020
Country/TerritoryCanada
CityEdmonton
Period20/04/2024/04/20

Keywords

  • Design patterns
  • Software design structure
  • Software performance

Fingerprint

Dive into the research topics of 'How are performance issues caused and resolved?-an empirical study from a design perspective'. Together they form a unique fingerprint.

Cite this