Model-Driven Fault Injection in Java']Java Source Code

被引:3
|
作者
Rodrigues Jr, Elder [1 ]
Montecchi, Leonardo [1 ]
Ceccarelli, Andrea [2 ]
机构
[1] Univ Estadual Campinas, Campinas, SP, Brazil
[2] Univ Firenze, Florence, Italy
基金
欧盟地平线“2020”; 巴西圣保罗研究基金会;
关键词
Software faults; fault libraries; metamodel; OCL; code patterns; !text type='Java']Java[!/text;
D O I
10.1109/ISSRE5003.2020.00046
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The injection of software faults in source code requires accurate knowledge of the programming language, both to craft faults and to identify injection locations. As such, fault injection and code mutation tools are typically tailored for a specific language and have limited extensibility. In this paper we present a model-driven approach to craft and inject software faults in source code. While its concrete application is presented for Java, the workflow we propose does not depend on a specific programming language. Following Model-Driven Engineering principles, the faults and the criteria to select injection locations are described using structured, machine-readable specifications based on a domain-specific language. Then, automated transformations craft artifacts based on OCL and Java, which represent the faults to be injected and are able to select the candidate injection locations. Finally, artifacts are executed against the target source code, performing the injection in the desired locations. We devise a supporting tool and exercise the approach injecting 13 different kinds of software faults in the Java source code of six different projects.
引用
下载
收藏
页码:414 / 425
页数:12
相关论文
共 50 条
  • [21] Scripting Language for Java']Java Source Code Recognition
    Bublik, Tomas
    Virius, Miroslav
    INTERNATIONAL CONFERENCE ON FUTURE INFORMATION ENGINEERING (FIE 2014), 2014, 10 : 119 - 130
  • [22] To Generate the Ontology from Java']Java Source Code
    Ganapathy, Gopinath
    Sagayaraj, S.
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2011, 2 (02) : 111 - 116
  • [23] Application of Statistical Classifiers on Java']Java Source Code
    Mojzes, Matej
    Rost, Michal
    Smolka, Josef
    Virius, Miroslav
    PROCEEDINGS OF THE 2015 FEDERATED CONFERENCE ON SOFTWARE DEVELOPMENT AND OBJECT TECHNOLOGIES, 2017, 511 : 208 - 218
  • [24] A quality assessment model for Java']Java code
    Benedicenti, L
    Wang, VW
    Paranjape, R
    IEEE CCEC 2002: CANADIAN CONFERENCE ON ELECTRCIAL AND COMPUTER ENGINEERING, VOLS 1-3, CONFERENCE PROCEEDINGS, 2002, : 687 - 690
  • [25] Java']JavaCompExt: Extracting Architectural Elements from Java']Java Source Code
    Anquetil, Nicolas
    Royer, Jean-Claude
    Andre, Pascal
    Ardourel, Gilles
    Hnetynka, Petr
    Poch, Tomas
    Petrascu, Dragos
    Petrascu, Vladiela
    16TH WORKING CONFERENCE ON REVERSE ENGINEERING (WCRE 2009), 2009, : 317 - +
  • [26] Code coverage differences of Java']Java bytecode and source code instrumentation tools
    Horvath, Ferenc
    Gergely, Tamas
    Beszedes, Arpad
    Tengeri, David
    Balogh, Gergo
    Gyimothy, Tibor
    SOFTWARE QUALITY JOURNAL, 2019, 27 (01) : 79 - 123
  • [27] A Systematic Literature Review: Code Bad Smells in Java']Java Source Code
    Gupta, Aakanshi
    Suri, Bharti
    Misra, Sanjay
    COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2017, PT V, 2017, 10408 : 665 - 682
  • [28] Developing a model-driven reengineering approach for migrating PL/SQL triggers to Java']Java: A practical experience
    Fernandez Candel, Carlos Javier
    Garcia Molina, Jesus
    Bermudez Ruiz, Francisco Javier
    Hoyos Barcelo, Jose Ramon
    Sevilla Ruiz, Diego
    Cuesta Viera, Benito Jose
    JOURNAL OF SYSTEMS AND SOFTWARE, 2019, 151 : 38 - 64
  • [29] Simplifying autonomic enterprise Java']Java bean applications via model-driven development: A case study
    White, J
    Schmidt, DC
    Gokhale, A
    MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2005, 3713 : 601 - 615
  • [30] From Java to real-time Java: A model-driven methodology with automated toolchain (invited paper)
    Chang, Wanli
    Zhao, Shuai
    Wei, Ran
    Wellings, Andy
    Burns, Alan
    Proceedings of the ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES), 2019, : 123 - 134