REVERT: Runtime Verification for Real-Time Systems

Sangeeth Kochanthara, Geoffrey Nelissen, David Pereira, Rahul Purandare
2016 2016 IEEE Real-Time Systems Symposium (RTSS)  
Real-time systems are becoming more complex andopen, thus increasing their development and verification costs.Although several static verification tools have been proposedover the last decades, they suffer from scalability and precisionproblems. As a result, the tools fail to cover all the necessarysafety properties for realistic real-time applications involving alarge number of components and tasks. Runtime verification is aformal technique that verifies properties during system executionwith
more » ... he support of monitors. The monitors are generatedfrom formal languages using correct-by-construction generationmethods. Runtime verification can thus be used as a complementor replacement for static verification approaches. The currentstate-of-the-art tools either do not have notion of time, or sufferfrom the potential blowup of states at run-time. In this paper,we propose REVERT, a framework developed with a focus onthe verification of functional and non-functional properties withtiming constraints. The contribution of this work is twofold: (i) adomain-specific specification language allowing the definition ofrequirements for real-time applications; (ii) a novel mechanism togenerate monitors, with statespace and time guarantees, capableof identifying and reacting to timing properties defined with theproposed specification language. Abstract-Real-time systems are becoming more complex and open, thus increasing their development and verification costs. Although several static verification tools have been proposed over the last decades, they suffer from scalability and precision problems. As a result, the tools fail to cover all the necessary safety properties for realistic real-time applications involving a large number of components and tasks. Runtime verification is a formal technique that verifies properties during system execution with the support of monitors. The monitors are generated from formal languages using correct-by-construction generation methods. Runtime verification can thus be used as a complement or replacement for static verification approaches. The current state-of-the-art tools either do not have notion of time, or suffer from the potential blowup of states at run-time. In this paper, we propose REVERT, a framework developed with a focus on the verification of functional and non-functional properties with timing constraints. The contribution of this work is twofold: (i) a domain-specific specification language allowing the definition of requirements for real-time applications; (ii) a novel mechanism to generate monitors, with state-space and time guarantees, capable of identifying and reacting to timing properties defined with the proposed specification language.
doi:10.1109/rtss.2016.044 dblp:conf/rtss/KochantharaNPP16 fatcat:3xcamswwybcl3lu4dy3a7l7v44