Supporting the Selection of Constraints for Requirements Monitoring from Automatically Mined Constraint Candidates

Thomas Krismayer, Peter Kronberger, Rick Rabiser, Paul Grünbacher

Proceedings of the 25th International Working Conference on Requirements Engineering: Foundation for Software Quality, 2019

[Context and Motivation/> Existing approaches, e.g., in the areas of specification mining and process mining, allow to automatically identify requirements-level system properties, that can then be used for verifying or monitoring systems. For instance, specifications, invariants, or constraints can be mined by analyzing source code or system logs. [Question/Problem/> However, the usefulness of mining approaches is currently limited by (i) the typically high number of mined properties and (ii) the often high number of false positives that are mined from complex systems. [Principal Ideas/Results/> In this paper, we present an approach that supports domain experts in selecting constraints for requirements monitoring by grouping, filtering, and ranking constraint candidates mined from event logs. [Contributions/> Our tool-supported approach is flexible and extensible and allows users to experiment with different thresholds, configurations, and ranking algorithms to ease the selection of useful constraints. We demonstrate the usefulness and scalability of our approach by applying it to constraints mined from event logs of two complex real-world systems: a plant automation system and a cyber-physical system controlling unmanned aerial vehicles.