Validating quality attribute requirements via execution-based model checking

This paper is concerned with correct specification and validation of quality attribute requirements (QAR's) that cross-cut through a diverse set of complex system functions. These requirements act as modifiers of the systems level functional requirements thereby having substantial influence on the eventual architectural selection. Because system designers traditionally address these requirements one quality attribute at a time, the process frequently results in QAR's that contain subtle conflicting behaviors. This paper presents an approach to QAR-induced behavior validation and conflict detection via execution-based model checking early in the software development process.

[1]  Doron Drusinsky,et al.  The Temporal Rover and the ATG Rover , 2000, SPIN.

[2]  Leonard J. Bass,et al.  Designing software architectures to achieve quality attribute requirements , 2005, IEE Proc. Softw..

[3]  Grigore Rosu,et al.  An Overview of the Runtime Verification Tool Java PathExplorer , 2004, Formal Methods Syst. Des..

[4]  Ulrich Nitsche Propositional Linear Temporal Logic and Language Homomorphisms , 1994, FOCS 1994.

[5]  Klaus Havelund,et al.  Model checking JAVA programs using JAVA PathFinder , 2000, International Journal on Software Tools for Technology Transfer.

[6]  James Bret Michael,et al.  A Visual Tradeoff Space for Formal Verification and Validation Techniques , 2022 .

[7]  Kent Beck,et al.  Test-infected: programmers love writing tests , 2000 .

[8]  Doron Drusinsky,et al.  Creating and Validating Embedded Assertion Statecharts , 2007, IEEE Distributed Systems Online.

[9]  Rafael Corchuelo,et al.  Using Constraint Programming for the Automatic Detection of Conflicts in Quality Requirements , 2002, WER.

[10]  Insup Lee,et al.  RT-MaC: runtime monitoring and checking of quantitative and probabilistic properties , 2005, 11th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'05).

[11]  Doron Drusinsky,et al.  Modeling and verification using UML statecharts - a working guide to reactive system design, runtime monitoring and execution-based model checking , 2006 .

[12]  Barry W. Boehm,et al.  Identifying Quality-Requirement Conflicts , 1996, IEEE Softw..