Writing formal specifications often requires users to abstract from the original problem. Especially when verification techniques such as model checking are used. Without applying abstraction the search space the model checker need to traverse tends to grow quickly beyond the scope of what can be checked within reasonable time.
The downside of this need to omit details is that it increases the distance to the implementation. Ideally, the created specifications could be used to generate software from (either manually or automatically). But having an incomplete description of the desired system is not enough for this purpose.
In this work we introduce the REBEL2 specification language. REBEL2 lets the user write full system specifications in the form of state machines with data without the need to apply abstraction while still preserving the ability to verify non-trivial properties. This is done by allowing the user to forget and mock specifications when running the model checker. The original specifications are untouched by these techniques.
We compare the expressiveness of REBEL2 and the effectiveness of mock and forget by implementing two case studies: one from the automotive domain and one from the banking domain. We find that REBEL2 is expressive enough to implement both case studies in a concise manner. Next to that, when performing checks in isolation, mocking can speed up model checking significantly.
Tue 13 Apr Times are displayed in time zone: Brasilia, Distrito Federal, Brazil change
15:00 - 16:30
|Modeling with Mocking|
Jouke StoelCWI, Jurgen VinjuCWI, Netherlands, Tijs van der StormCWI & University of Groningen, NetherlandsPre-print
|Uncertainty-aware Exploration in Model-based Testing|
Matteo CamilliFree University of Bozen-Bolzano, Angelo GargantiniUniversity of Bergamo, Patrizia ScandurraUniversity of Bergamo, Italy, Catia TrubianiGran Sasso Science InstitutePre-print
|Demystifying the Challenges of Formally Specifying API Properties for Runtime Verification|
Leopoldo TeixeiraFederal University of Pernambuco, Breno MirandaFederal University of Pernambuco, Henrique RebeloUniversidade Federal de Pernambuco, Marcelo d'AmorimFederal University of PernambucoPre-print