The Slow and The Furious? Performance Antipattern Detection in Cyber-Physical Systems

Imara van Dinten*, Pouria Derakhshanfar, Annibale Panichella, Andy Zaidman

*Corresponding author for this work

Research output: Contribution to journalArticleScientificpeer-review

23 Downloads (Pure)

Abstract

Cyber-Physical Systems (CPSs) have gained traction in recent years. A major non-functional quality of CPS is performance since it affects both usability and security. This critical quality attribute depends on the specialized hardware, simulation engines, and environmental factors that characterize the system under analysis. While a large body of research exists on performance issues in general, studies focusing on performance-related issues for CPSs are scarce. The goal of this paper is to build a taxonomy of performance issues in CPSs. To this aim, we present two empirical studies aimed at categorizing common performance issues (Study I) and helping developers detect them (Study II). In the first study, we examined commit messages and code changes in the history of 14 GitHub-hosted open-source CPS projects to identify commits that report and fix self-admitted performance issues. We manually analyzed 2699 commits, labeled them, and grouped the reported performance issues into antipatterns. We detected instances of three previously reported Software Performance Antipatterns (SPAs) for CPSs. Importantly, we also identified new SPAs for CPSs not described earlier in the literature. Furthermore, most performance issues identified in this study fall into two new antipattern categories: Hard Coded Fine Tuning (399 of 646) and Magical Waiting Number (150 of 646). In the second study, we introduce static analysis techniques for automatically detecting these two new antipatterns; we implemented them in a tool called AP-Spotter. We analyzed 9 open-source CPS projects not utilized to build the SPAs taxonomy to benchmark AP-Spotter. Our results show that AP-Spotter achieves 62.04% precision in detecting the antipatterns
Original languageEnglish
Article number111904
Number of pages19
JournalJournal of Systems and Software
Volume210
DOIs
Publication statusPublished - 2024

Funding

This work has been partially supported by the European Union’s Horizon 2020 Research and Innovation Programme under grant agreement No. 957254, project COSMOS

Keywords

  • Software performance antipatterns
  • Cyber-Physical Systems
  • Antipattern Detection
  • Software Maintenance
  • Empirical Software Engineering
  • Static Analysis

Fingerprint

Dive into the research topics of 'The Slow and The Furious? Performance Antipattern Detection in Cyber-Physical Systems'. Together they form a unique fingerprint.

Cite this