An Investigation on the Evolutionary Nature of Exception Handling Violations in Software Product Lines

被引:0
|
作者
Sena, Demostenes [1 ]
Coelho, Roberta [1 ]
Kulesza, Uira [1 ]
机构
[1] Univ Fed Rio Grande do Norte, Informat & Appl Math Dept DIMAp, Natal, RN, Brazil
关键词
Exception Handling; Software Product Line; Software Evolution; STATIC ANALYSIS;
D O I
10.1145/2695664.2695933
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
The Exception Handling (EH) is a widely used mechanism for building robust systems and it is embedded in most of the mainstream programming languages. In the context of Software Product Lines (SPL), we can find exception handling code associated to common and variable features of an SPL. However, studies have shown that the exception handling code can also become a source of bugs which may affect the system the other way around, making it even less robust. This paper describes an empirical study whose goal was to investigate the evolutionary nature of exception handling violations. Can the exception handling behavior be preserved along SPL evolution scenarios? In order to carry out this study we extended a tool, called PLEA, which statically discovers the exception handling flows on SPLs (those implemented in Java and using annotation techniques), and it was executed over five to seven versions of two distinct SPLs. Our goal was to identify how the different kinds of evolution scenarios affected the exception handling policy initially defined. The results showed that the evolution of the SPLs exception handling code did not occur in a planned way in most of the scenarios. Consequently, it led to violations on the exception handling behavior. This paper points out the need of a set of EH behavior-preserving evolution scenarios for the SPLs exception handling code.
引用
收藏
页码:1616 / 1623
页数:8
相关论文
共 50 条
  • [1] Requirements for software exception handling
    Hecht, Herbert
    [J]. 2008 IEEE AEROSPACE CONFERENCE, VOLS 1-9, 2008, : 3340 - 3346
  • [2] Exception handling in the software lifecycle
    De Lemos, R.
    Romanovsky, A.
    [J]. 2001, CRL Publishing (16):
  • [3] Exception handling in the software lifecycle
    de Lemos, R
    Romanovsky, A
    [J]. COMPUTER SYSTEMS SCIENCE AND ENGINEERING, 2001, 16 (02): : 119 - 133
  • [4] Evolutionary Computing to solve product inconsistencies in Software Product Lines
    Afzal, Uzma
    Mahmood, Tariq
    Usmani, Shazia
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2022, 224
  • [5] XVCL: a mechanism for handling variants in software product lines
    Zhang, HY
    Jarzabek, S
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2004, 53 (03) : 381 - 407
  • [6] Handling Database Schema Variability in Software Product Lines
    Khedri, Niloofar
    Khosravi, Ramtin
    [J]. 2013 20TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2013), VOL 1, 2013, : 331 - 338
  • [7] EXCEPTION HANDLING AND SOFTWARE FAULT TOLERANCE
    CRISTIAN, F
    [J]. IEEE TRANSACTIONS ON COMPUTERS, 1982, 31 (06) : 531 - 540
  • [8] Handling Regulatory Goal Model Families as Software Product Lines
    Palmieri, Anthony
    Collet, Philippe
    Amyot, Daniel
    [J]. ADVANCED INFORMATION SYSTEMS ENGINEERING, CAISE 2015, 2015, 9097 : 181 - 196
  • [9] Global-Aware Recommendations for Repairing Violations in Exception Handling
    Barbosa, Eiji Adachi
    Garcia, Alessandro
    [J]. PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2018, : 858 - 858
  • [10] Handling Complex Configurations in Software Product Lines: a Tooled Approach
    Urli, Simon
    Blay-Fornarino, Mireille
    Collet, Philippe
    [J]. 18TH INTERNATIONAL SOFTWARE PRODUCT LINE CONFERENCE (SPLC 2014), VOL 1, 2014, : 112 - 121