Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Software Model Refactoring Driven by Performance Antipattern Detection

Published: 06 June 2022 Publication History

Abstract

The satisfaction of ever more stringent performance requirements is one of the main reasons for software evolution. However, determining the primary causes of performance degradation is generally challenging, as they may depend on the joint combination of multiple factors (e.g., workload, software deployment, hardware utilization). With the increasing complexity of software systems, classical bottleneck analysis seems to show limitations in capturing complex performance problems. Hence, in the last decade, the detection of performance antipatterns has gained momentum as an effective way to identify performance degradation causes. In this tool paper we introduce PADRE (Performance Antipattern Detection and REfactoring), a tool for: (i) detecting performance antipattern in UML models, and (ii) refactoring models with the aim of removing the detected antipatterns. PADRE has been implemented within Epsilon, which is an open-source platform for model-driven engineering, and it grounds on a methodology that allows performance antipattern detection and refactoring within the same implementation context.

References

[1]
A UML profile for MARTE: modeling and analysis of real-time embedded systems. OMG, 2008.
[2]
W. Afzal, H. Bruneli'ere, D. D. Ruscio, A. Sadovykh, S. Mazzini, E. Cariou, D. Truscan, J. Cabot, A. G´omez, J. Gorro?nogoitia, L. Pomante, and P. Smrz. The megam@rt2 ECSEL project: Megamodelling at runtime - scalable model-based framework for continuous development and runtime validation of complex systems. Microprocess. Microsystems, 61:86--95, 2018.
[3]
D. Arcelli and V. Cortellessa. Software model refactoring based on performance analysis: better working on software or performance side? In FESCA'13, pages 33--47, Feb. 2013.
[4]
D. Arcelli, V. Cortellessa, and D. Di Pompeo. Performance-driven software model refactoring. Information & Software Technology, 95:366--397, 2018.
[5]
D. Arcelli, V. Cortellessa, and D. Di Pompeo. Automating performance antipattern detection and software refactoring in UML models. In X. Wang, Performance Evaluation Review, Vol. 49, No. 4, March 2022 57 D. Lo, and E. Shihab, editors, 26th IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2019, Hangzhou, China, February 24--27, 2019, pages 639--643. IEEE, 2019.
[6]
D. Arcelli, V. Cortellessa, D. Di Pompeo, R. Eramo, and M. Tucci. Exploiting architecture/runtime model-driven traceability for performance improvement. In IEEE International Conference on Software Architecture, pages 81--90, 2019.
[7]
D. Arcelli and D. Di Pompeo. Applying design patterns to remove software performance antipatterns: A preliminary approach. In E. M. Shakshuki, editor, The 8th International Conference on Ambient Systems, Networks and Technologies (ANT 2017), volume 109 of Procedia Computer Science, pages 521--528, 2017.
[8]
J. Bansiya and C. G. Davis. A Hierarchical Model for Object-Oriented Design Quality Assessment. IEEE Transactions on Software Engineering, 28(1):4--17, 2002.
[9]
F. Baskett, K. M. Chandy, R. R. Muntz, and F. G. Palacios. Open, closed, and mixed networks of queues with different classes of customers. J. ACM, 22(2):248--260, Apr. 1975.
[10]
M. Bertoli, G. Casale, and G. Serazzi. Jmt: performance engineering tools for system modeling. SIGMETRICS Perform. Eval. Rev., 36(4):10--15, 2009.
[11]
V. Cortellessa. Performance Antipatterns: State-of-Art and Future Perspectives. In EPEW'13, pages 1--6. Springer, 2013.
[12]
V. Cortellessa, A. Di Marco, and C. Trubiani. An approach for modeling and detecting software performance antipatterns based on first-order logics. SoSyM, 13(1):391--432, 2014.
[13]
V. Cortellessa, A. Di Marco, and C. Trubiani. An approach for modeling and detecting software performance antipatterns based on first-order logics. Software and System Modeling, 13(1):391--432, 2014.
[14]
V. Cortellessa and D. Di Pompeo. Analyzing the sensitivity of multi-objective software architecture refactoring to configuration characteristics. Inf. Softw. Technol., 135:106568, 2021.
[15]
V. Cortellessa, D. Di Pompeo, R. Eramo, and M. Tucci. A model-driven approach for continuous performance engineering in microservice-based systems. Journal of Systems and Software, 183:111084, 2022.
[16]
V. Cortellessa, D. Di Pompeo, V. Stoico, and M. Tucci. On the impact of performance antipatterns in multi-objective software model refactoring optimization. In M. T. Baldassarre, G. Scanniello, and A. Skavhaug, editors, 47th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2021, Palermo, Italy, September 1--3, 2021, pages 224--233. IEEE, 2021.
[17]
V. Cortellessa, R. Eramo, and M. Tucci. From software architecture to analysis models and back: Model-driven refactoring aimed at availability improvement. Inf. Softw. Technol., 127:106362, 2020.
[18]
R. Fourati, N. Bouassida, and H. Ben Abdallah. A Metric-Based Approach for Anti-pattern Detection in UML Designs. Computer and Information Science, 364(Chapter 2):17--33, 2011.
[19]
L. Grunske, L. Geiger, A. Z¨undorf, N. Van Eetvelde, P. Van Gorp, and D. Varr´o. Using Graph Transformation for Practical Model-Driven Software Engineering. In Model-Driven Software Development, pages 91--117. Springer Berlin Heidelberg, 2005.
[20]
D. Kolovos, L. Rose, R. Paige, and A. Garc?a-Dom?nguez. The epsilon book. Structure, 2010.
[21]
A. Koziolek, H. Koziolek, and R. Reussner. PerOpteryx: automated application of tactics in multi-objective software architecture optimization. In QoSA'11, pages 33--42. ACM, 2011.
[22]
T. Mens, G. Taentzer, and O. Runge. Analysing refactoring dependencies using graph transformation. SoSyM, 6(3):269--285, 2007.
[23]
T. Parsons and J. Murphy. Detecting performance antipatterns in component based enterprise systems. Journal of Object Technology, 7(3):55--91, 2008.
[24]
C. U. Smith and L. G. Williams. Software performance antipatterns for identifying and correcting performance problems. In CMGC'12, 2012.
[25]
J. Xu. Rule-based automatic software performance diagnosis and improvement. Perf. Eval. Journal, 69(11):525--550, Nov. 2012.

Cited By

View all
  • (2023)The Quality-Driven Refactoring Approach in BIM Italia2023 IEEE 20th International Conference on Software Architecture Companion (ICSA-C)10.1109/ICSA-C57050.2023.00021(22-31)Online publication date: Mar-2023
  • (2023)A Graph-Based Java Projects Representation for Antipatterns DetectionSoftware Architecture10.1007/978-3-031-42592-9_17(250-265)Online publication date: 18-Sep-2023

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGMETRICS Performance Evaluation Review
ACM SIGMETRICS Performance Evaluation Review  Volume 49, Issue 4
March 2022
130 pages
ISSN:0163-5999
DOI:10.1145/3543146
Issue’s Table of Contents
Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 June 2022
Published in SIGMETRICS Volume 49, Issue 4

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)18
  • Downloads (Last 6 weeks)1
Reflects downloads up to 02 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2023)The Quality-Driven Refactoring Approach in BIM Italia2023 IEEE 20th International Conference on Software Architecture Companion (ICSA-C)10.1109/ICSA-C57050.2023.00021(22-31)Online publication date: Mar-2023
  • (2023)A Graph-Based Java Projects Representation for Antipatterns DetectionSoftware Architecture10.1007/978-3-031-42592-9_17(250-265)Online publication date: 18-Sep-2023

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media