Property specification patterns at work: verification and inconsistency explanation

被引:5
|
作者
Narizzano, Massimo [1 ]
Pulina, Luca [2 ]
Tacchella, Armando [1 ]
Vuotto, Simone [1 ,2 ]
机构
[1] Univ Genoa, DIBRIS, Viale Causa 13, I-16145 Genoa, Italy
[2] Univ Sassari, Chem & Pharm Dept, Via Vienna 2, Sassari, Italy
基金
欧盟地平线“2020”;
关键词
Consistency of requirements; Property specifications patterns; LTL satisfiability checking; Inconsistency explanation;
D O I
10.1007/s11334-019-00339-1
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Property specification patterns (PSPs) have been proposed to ease the formalization of requirements, yet enable automated verification thereof. In particular, the internal consistency of specifications written with PSPs can be checked automatically with the use of, for example, linear temporal logic (LTL) satisfiability solvers. However, for most practical applications, the expressiveness of PSPs is too restricted to enable writing useful requirement specifications, and proving that a set of requirements is inconsistent can be worthless unless a minimal set of conflicting requirements is extracted to help designers to correct a wrong specification. In this paper, we extend PSPs by considering Boolean as well as atomic numerical assertions, we contribute an encoding from extended PSPs to LTL formulas, and we present an algorithm computing inconsistency explanations, i.e., irreducible inconsistent subsets of the original set of requirements. Our extension enables us to reason about the internal consistency of functional requirements which would not be captured by basic PSPs. Experimental results demonstrate that our approach can check and explain (in)consistencies in specifications with nearly two thousand requirements generated using a probabilistic model, and that it enables effective handling of real-world case studies.
引用
收藏
页码:307 / 323
页数:17
相关论文
共 50 条
  • [1] Property specification patterns at work: verification and inconsistency explanation
    Massimo Narizzano
    Luca Pulina
    Armando Tacchella
    Simone Vuotto
    Innovations in Systems and Software Engineering, 2019, 15 : 307 - 323
  • [2] Enhanced Property Specification and Verification in BLAST
    Sery, Ondrej
    FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING, PROCEEDINGS, 2009, 5503 : 456 - 469
  • [3] Property specification and static verification of UML models
    Siveroni, Igor
    Zisman, Andrea
    Spanoudakis, George
    ARES 2008: PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCE ON AVAILABILITY, SECURITY AND RELIABILITY, 2008, : 96 - +
  • [4] Combining CSP and B for specification and property verification
    Butler, M
    Leuschel, M
    FM 2005: FORMAL METHODS, PROCEEDINGS, 2005, 3582 : 221 - 236
  • [5] Specification, Verification and Explanation of Violation for Data Aware Compliance Rules
    Awad, Ahmed
    Weidlich, Matthias
    Weske, Mathias
    SERVICE-ORIENTED COMPUTING - ICSOC 2009, PROCEEDINGS, 2009, 5900 : 500 - 515
  • [6] Expressing property specification patterns with OCL
    Flake, S
    Mueller, W
    SERP'03: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING RESEARCH AND PRACTICE, VOLS 1 AND 2, 2003, : 595 - 601
  • [7] Hierarchical Specification and Verification of Architectural Design Patterns
    Marmsoler, Diego
    FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING (FASE 2018), 2018, 10802 : 149 - 168
  • [8] RETRACTION: Structured approach to property specification and verification of HWIP
    Benalycherif, Lyes
    McIsaac, Anthony
    Dunlop, Neil
    RSP 2007: 18TH IEEE/IFIP INTERNATIONAL WORKSHOP ON RAPID SYSTEM PROTOTYPING, PROCEEDINGS, 2007, : 161 - +
  • [9] Extending Specification Patterns for Verification of Parametric Traces
    Blein, Yoann
    Ledru, Yves
    Du-Bousquet, Lydie
    Groz, Roland
    2018 ACM/IEEE CONFERENCE ON FORMAL METHODS IN SOFTWARE ENGINEERING (FORMALISE 2018), 2018, : 10 - 19
  • [10] An Ontology of Specification Patterns for Verification of Concurrent Systems
    Garanina, Natalia
    Zubin, Vladimir
    Lyakh, Tatiana
    Gorlatch, Sergei
    NEW TRENDS IN INTELLIGENT SOFTWARE METHODOLOGIES, TOOLS AND TECHNIQUES (SOMET_18), 2018, 303 : 515 - 528