Counting Bugs in Behavioural Models using Counterexample Analysis

被引:2
|
作者
Faqrizal, Irman [1 ]
Salaun, Gwen [1 ]
机构
[1] Univ Grenoble Alpes, CNRS, INRIA, LIG,Grenoble INP, F-38000 Grenoble, France
关键词
Behavioural Models; Model Checking; Debugging; Counterexample; Bug Counting;
D O I
10.1145/3524482.3527647
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Designing and developing distributed software has always been a tedious and error-prone task, and the ever increasing software complexity is making matters even worse. Model checking automatically verifies that a model, e.g., a Labelled Transition System (LTS), obtained from higher-level specification languages satisfies a given temporal property. When the model violates the property, the model checker returns a counterexample, but this counterexample does not precisely identify the source of the bug. In this work, we propose some techniques for simplifying the debugging of these models. These techniques first extract from the whole behavioural model the part which does not satisfy the given property. In that model, we then detect specific states (called faulty states) where a choice is possible between executing a correct behaviour or falling into an erroneous part of the model. By using this model, we propose in this paper some techniques to count the number of bugs in the original specification. The core idea of the approach is to change the specification for some specific actions that may cause the property violation, and compare the model before and after modification to detect whether this potential bug is one real bug or not. Beyond introducing in details the solution, this paper also presents tool support and experiments.
引用
收藏
页码:12 / 22
页数:11
相关论文
共 50 条
  • [1] Debugging of Behavioural Models using Counterexample Analysis
    Barbon, Gianluca
    Leroy, Vincent
    Salaun, Gwen
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2021, 47 (06) : 1184 - 1197
  • [2] Counterexample Guided Abstraction Refinement of Product-Line Behavioural Models
    Cordy, Maxime
    Heymans, Patrick
    Legay, Axel
    Schobbens, Pierre-Yves
    Dawagne, Bruno
    Leucker, Martin
    [J]. 22ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (FSE 2014), 2014, : 190 - 201
  • [3] TOPOLOGICAL MODELS OF INTUITIONISTIC ANALYSIS - ONE COUNTEREXAMPLE
    KROL, MD
    [J]. MATHEMATICAL NOTES, 1976, 19 (5-6) : 503 - 504
  • [4] Calibrating Uncertainty Models for CPS Using Counterexample Validation
    Yang, Wen-Hua
    Zhou, Yu
    Huang, Zhi-Qiu
    [J]. Ruan Jian Xue Bao/Journal of Software, 2021, 32 (04): : 889 - 903
  • [5] Debugging of Concurrent Systems Using Counterexample Analysis
    Barbon, Gianluca
    Leroy, Vincent
    Salaun, Gwen
    [J]. FUNDAMENTALS OF SOFTWARE ENGINEERING, FSEN 2017, 2017, 10522 : 20 - 34
  • [6] Counterexample Analysis for Supporting Containment Checking of Business Process Models
    Muram, Faiz U. L.
    Huy Tran
    Zdun, Uwe
    [J]. BUSINESS PROCESS MANAGEMENT WORKSHOPS, (BPM 2015), 2016, 256 : 515 - 528
  • [7] On a Counterexample in Analysis
    Polovinkin, E. S.
    [J]. MATHEMATICAL NOTES, 2014, 95 (1-2) : 110 - 114
  • [8] Using static analysis to find bugs
    Ayewah, Nathaniel
    Pugh, William
    Hovemeyer, David
    Morgenthaler, J. David
    Penix, John
    [J]. IEEE SOFTWARE, 2008, 25 (05) : 22 - 29
  • [9] Counting models using connected components
    Bayardo, RJ
    Pehoushek, JD
    [J]. SEVENTEENTH NATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE (AAAI-2001) / TWELFTH INNOVATIVE APPLICATIONS OF ARTIFICIAL INTELLIGENCE CONFERENCE (IAAI-2000), 2000, : 157 - 162
  • [10] On a counterexample in analysis
    E. S. Polovinkin
    [J]. Mathematical Notes, 2014, 95 : 110 - 114