Bringing Runtime Verification Home - A Case Study on the Hierarchical Monitoring of Smart Homes
We use runtime verification (RV) to check various properties in a smart apartment. The properties can be broken down into three types: behavioral correctness of the apartment sensors, detection of specific user activities (known as activities of daily living), and composition of properties of the previous types. The context of the smart apartment provides us with a complex system with a large number of components with two different hierarchies to group properties and sensors: geographically within the same room, floor or globally in the apartment, and logically following the different types of properties. We leverage a recent approach to decentralized RV of decentralized specifications, where monitors have their own specifications and communicate together to verify more general specifications. This allows us to re-use specifications, and combine them to (1) scale beyond existing centralized RV techniques, and (2) greatly reduce computation and communication costs.
READ FULL TEXT