Reliable effects screening: A distributed continuous quality assurance process for monitoring performance degradation in evolving software systems

被引:7
|
作者
Yilmaz, Cemal
Porter, Adam
Krishna, Arvind S.
Memon, Atif M.
Schmidt, Douglas C.
Gokhale, Aniruddha S.
Natarajan, Balachandran
机构
[1] IBM TJ Watson Res Ctr, Hawthorne, NY 10532 USA
[2] Univ Maryland, Dept Comp Sci, College Pk, MD 20742 USA
[3] Vanderbilt Univ, Dept Elect Engn & Comp Sci, Nashville, TN 37325 USA
[4] Symantec, Pune 411020, Maharashtra, India
基金
美国国家科学基金会;
关键词
distributed continuous quality assurance; performance-oriented regression testing; design-of-experiments theory;
D O I
10.1109/TSE.2007.20
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Developers of highly configurable performance-intensive software systems often use in-house performance-oriented "regression testing" to ensure that their modifications do not adversely affect their software's performance across its large configuration space. Unfortunately, time and resource constraints can limit in-house testing to a relatively small number of possible configurations, followed by unreliable extrapolation from these results to the entire configuration space. As a result, many performance bottlenecks escape detection until systems are fielded. In our earlier work, we improved the situation outlined above by developing an initial quality assurance process called "main effects screening." This process 1) executes formally designed experiments to identify an appropriate subset of configurations on which to base the performance-oriented regression testing, 2) executes benchmarks on this subset whenever the software changes, and 3) provides tool support for executing these actions on in-the-field and in-house computing resources. Our initial process had several limitations, however, since it was manually configured (which was tedious and error-prone) and relied on strong and untested assumptions for its accuracy (which made its use unacceptably risky in practice). This paper presents a new quality assurance process called "reliable effects screening" that provides three significant improvements to our earlier work. First, it allows developers to economically verify key assumptions during process execution. Second, it integrates several model-driven engineering tools to make process configuration and execution much easier and less error prone. Third, we evaluate this process via several feasibility studies of three large, widely used performance-intensive software frameworks. Our results indicate that reliable effects screening can detect performance degradation in large-scale systems more reliably and with significantly less resources than conventional techniques.
引用
收藏
页码:124 / 141
页数:18
相关论文
共 23 条
  • [1] Main effects screening: A distributed continuous quality assurance process for monitoring performance degradation in evolving software systems
    Yilmaz, C
    Krishna, AS
    Memon, A
    Porter, A
    Schmidt, DC
    Gokhale, A
    Natarajan, B
    ICSE 05: 27TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2005, : 293 - 302
  • [2] Automated Process Quality Assurance for Distributed Software Development
    Zhai, Jian
    Yang, Qiusong
    Yang, Ye
    Xiao, Junchao
    Wang, Qing
    Li, Mingshu
    SOFTWARE ENGINEERING APPROACHES FOR OFFSHORE AND OUTSOURCED DEVELOPMENT, 2009, 16 : 196 - 210
  • [3] Skoll: A process and infrastructure for distributed continuous quality assurance
    Porter, Adam
    Yilmaz, Cemal
    Memon, Atif M.
    Schmidt, Douglas C.
    Natarajan, Bala
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2007, 33 (08) : 510 - 525
  • [4] Reliable performance prediction for multigrid software on distributed memory systems
    Romanazzi, Giuseppe
    Jimack, Peter K.
    Goodyer, Christopher E.
    ADVANCES IN ENGINEERING SOFTWARE, 2011, 42 (05) : 247 - 258
  • [5] A Performance Monitoring Tool for Predicting Degradation in Distributed Systems
    Xu, Jian
    Xu, Manwu
    WISM: 2009 INTERNATIONAL CONFERENCE ON WEB INFORMATION SYSTEMS AND MINING, PROCEEDINGS, 2009, : 669 - 673
  • [6] Continuous Software Solution from the Production to the Quality Assurance In the entire Manufacturing Process achieved a clear Increase in Performance
    Schroedel, Juergen
    ATP EDITION, 2011, (11): : 24 - 26
  • [7] Validating quality of service for reusable software via model-integrated distributed continuous quality assurance
    Krishna, AS
    Schmidt, DC
    Memon, A
    Porter, A
    Sevilla, D
    SOFTWARE REUSE: METHODS, TECHNIQUES, AND TOOLS: PROCEEDINGS, 2004, 3107 : 286 - 295
  • [8] Automating the Assessment of the Performance Quality Attribute for Evolving Software Systems: An Exploratory Study
    Pinto, Felipe
    Kulesza, Uira
    Silva, Leo
    Guerra, Eduardo
    2015 48TH HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES (HICSS), 2015, : 5144 - 5153
  • [9] Decomposition of fairness and performance aspects for high-assurance continuous process-control systems
    Wang, DF
    Ma, H
    Bastani, FB
    Yen, IL
    EIGHTH IEEE INTERNATIONAL SYMPOSIUM ON HIGH ASSURANCE SYSTEMS ENGINEERING, PROCEEDINGS, 2004, : 3 - 11
  • [10] SNOW: Software systems for process migration in high-performance, heterogeneous distributed environments
    Chanchio, K
    Sun, XH
    2002 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, PROCEEDINGS OF THE WORKSHOPS, 2002, : 589 - 596