arrow
返回

Detecting software performance problems using source code analysis techniques

delete2020-12-01
delete4
delete
OA
AI
S
Salma Eid *
S
Soha Makady
M
Manal A. Ismail
DOI:10.1016/j.eij.2020.02.002delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
Software is evolving rapidly. Many software systems release new versions in short iterations. Code changes within such versions may be enhancements, bug fixes, or new features. While preserving some of those changes, the functionality of software may accidentally degrade its performance within a new version when compared to a previous version thus introducing performance regressions. Developers suffer from finding code changes that cause performance regressions especially with a large number of code changes. The cost of detecting performance regressions increases massively as the size of the changes increases. In this paper, we propose a novel approach for automatically identifying potential code changes that cause performance regression from one system version to a subsequent one using source code analysis techniques. Such approach is realized through a prototype tool called PerfDetect. PerfDetect retrieves the changed source code across new and previous version of a specific application's source code. PerfDetect automatically: (a) identifies relevant unit test cases for the changed source code within the new version, (b) compares the execution time of these relevant test cases across the new and previous system versions using various loads to detect performance regressions, and (c) analyzes the root causes for such performance regression within the corresponding source code. In case no relevant unit tests are found as per step (a), automatically generated unit tests for the changed code are used instead within step (a). The proposed approach is evaluated on four open-source applications to assess its ability to detect performance regressions and identify their root causes. The evaluation results demonstrate that the proposed approach can automatically detect the root cause of performance regression in a shorter time as compared to alternative performance detection approaches. Furthermore, PerfDetect detects performance regressions, that were missed by other performance regression techniques, due to its reliance on source code analysis techniques. (C) 2020 Production and hosting by Elsevier B.V. on behalf of Faculty of Computers and Artificial Intelligence, Cairo University. This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/).
Keyword:
Performance regression
Performance aware unit test
Version control system
Source code analysis
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Egyptian Informatics Journal 封面图
Egyptian Informatics Journal
IF:
4.3
论文数:
770
被引数:
1.4K

机构

E
egyptian knowledge bank (ekb)
学者数:
11.6W
论文数: 9.3W
被引数: 84
C
Cairo University
学者数:
1.4W
论文数: 1.1W
被引数: 1.7W
引用论文

引用论文

Surgical management of haemorrhaging renal angiomyolipoma in pregnancy
err2015-01-01
err0
errOAAI
errP. Preece; B. Mees; B. Norris; M. Christie; T. Wagner; P. Dundee
err分享
err收藏
Episiotomy at Aminu Kano Teaching Hospital, Kano, Nigeria: A 3-Year Review
err2016-01-01
err0
PREAI
errRabiu Ayyuba; Ibrahim Garba; MohammedSalihu Ozegya; IdrisSulaiman Abubakar
err分享
err收藏
Mining version histories to guide software changes
err2005-06-01
err469
PREAI
errZimmermann, T; Weissgerber, P; Diehl, S; Zeller, A
err分享
err收藏
Malignant fibrous histiocytoma of the right ventricle of the heart
err2008-12-12
err0
PREAI
errNorihiro Teramoto; Kazuhiko Hayashi; Katsuya Miyatani; Kenji Miyake; Ashit Baran Sarker; Yoshino Tadashi; Kiyoshi Takahashi; Tadaatsu Akagi; Hiroshi Sunami; Sugato Nawa
err分享
err收藏
Laser-Assisted Ablation of Renal Hemangioma
err1995-07-01
err0
PREAI
errT BLAIR MATHESON; PAUL A. HATCHER
err分享
err收藏
Autologous Saphenous Vein Panel Graft for Vascular Reconstruction
err2018-11-01
err0
PREAI
errSerkan Ketenciler; Kamil Boyacıoğlu; İlknur Akdemir; Gürkan Kömürcü; Adil Polat
err分享
err收藏
GenProg: A Generic Method for Automatic Software Repair
err2012-01-01
err594
PREAI
errLe Goues, Claire; ThanhVu Nguyen; Forrest, Stephanie; Weimer, Westley
err分享
err收藏
学者 查看更多内容