A Constraint Mining Approach to Support Monitoring Cyber-Physical Systems

  • Thomas KrismayerEmail author
  • Rick Rabiser
  • Paul Grünbacher
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11483)


The full behavior of cyber-physical systems (CPS) emerges during operation only, when the systems interact with their environment. Runtime monitoring approaches are used to detect deviations from the expected behavior. While most monitoring approaches assume that engineers define the expected behavior as constraints, the deep domain knowledge required for this task is often not available. We describe an approach that automatically mines constraint candidates for runtime monitoring from event logs recorded from CPS. Our approach extracts different types of constraints on event occurrence, timing, data, and combinations of these. The approach further presents the mined constraint candidates to users and offers filtering and ranking strategies. We demonstrate the usefulness and scalability of our approach by applying it to event logs from two real-world CPS: a plant automation software system and a system controlling unmanned aerial vehicles. In our experiments, domain experts regarded 74% and 63%, respectively, of the constraints mined for these two systems as useful.


Constraint mining Runtime monitoring Cyber-physical systems 



The financial support by the Austrian Federal Ministry for Digital and Economic Affairs, the National Foundation for Research, Technology and Development, and Primetals Technologies is gratefully acknowledged.


  1. 1.
    Ammons, G., Bodík, R., Larus, J.R.: Mining specifications. ACM SIGPLAN Not. 37(1), 4–16 (2002)CrossRefGoogle Scholar
  2. 2.
    Cleland-Huang, J., Vierhauser, M., Bayley, S.: Dronology: an incubator for cyber-physical systems research. In: Proceedings of the 40th International Conference on Software Engineering: New Ideas and Emerging Results, pp. 109–112. ACM (2018)Google Scholar
  3. 3.
    Debois, S., Hildebrandt, T.T., Laursen, P.H., Ulrik, K.R.: Declarative process mining for DCR graphs. In: Proceedings of the 32nd ACM SIGAPP Symposium on Applied Computing, pp. 759–764. ACM (2017)Google Scholar
  4. 4.
    Di Ciccio, C., Mecella, M.: A two-step fast algorithm for the automated discovery of declarative workflows. In: Proceedings of the 2013 IEEE Symposium on Computational Intelligence and Data Mining, pp. 135–142. IEEE (2013)Google Scholar
  5. 5.
    Ernst, M., et al.: The Daikon system for dynamic detection of likely invariants. Sci. Comput. Program. 69(1), 35–45 (2007)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Gabel, M., Su, Z.: Javert: fully automatic mining of general temporal properties from dynamic traces. In: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 339–349. ACM (2008)Google Scholar
  7. 7.
    Grant, S., Cech, H., Beschastnikh, I.: Inferring and asserting distributed system invariants. In: Proceedings of the 40th International Conference on Software Engineering, pp. 1149–1159. ACM (2018)Google Scholar
  8. 8.
    Krismayer, T., Kronberger, P., Rabiser, R., Grünbacher, P.: Supporting the selection of constraints for requirements monitoring from automatically mined constraint candidates. In: Knauss, E., Goedicke, M. (eds.) REFSQ 2019. LNCS, vol. 11412, pp. 193–208. Springer, Cham (2019). Scholar
  9. 9.
    Krismayer, T., Rabiser, R., Grünbacher, P.: Mining constraints for event-based monitoring in systems of systems. In: Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, pp. 826–831. IEEE (2017)Google Scholar
  10. 10.
    Lee, E.A.: Cyber physical systems: design challenges. In: 11th IEEE International Symposium on Object-oriented Real-Time Distributed Computing, pp. 363–369. IEEE (2008)Google Scholar
  11. 11.
    Lo, D., Cheng, H., Han, J., Khoo, S.C., Sun, C.: Classification of software behaviors for failure detection: a discriminative pattern mining approach. In: Proceedings of the International Conference on Knowledge Discovery and Data Mining, pp. 557–566. ACM (2009)Google Scholar
  12. 12.
    Lo, D., Khoo, S.C., Han, J., Liu, C.: Mining Software Specifications: Methodologies and Applications. CRC Press, Boca Raton (2011)CrossRefGoogle Scholar
  13. 13.
    Lo, D., Maoz, S.: Scenario-based and value-based specification mining: better together. Autom. Softw. Eng. 19(4), 423–458 (2012)CrossRefGoogle Scholar
  14. 14.
    Lorenzoli, D., Mariani, L., Pezzè, M.: Automatic generation of software behavioral models. In: Proceedings of the 30th International Conference on Software Engineering, pp. 501–510. ACM (2008)Google Scholar
  15. 15.
    Maggi, F.M., Dumas, M., García-Bañuelos, L., Montali, M.: Discovering data-aware declarative process models from event logs. In: Daniel, F., Wang, J., Weber, B. (eds.) BPM 2013. LNCS, vol. 8094, pp. 81–96. Springer, Heidelberg (2013). Scholar
  16. 16.
    Margara, A., Cugola, G., Tamburrelli, G.: Learning from the past: automated rule generation for complex event processing. In: Proceedings of the 8th ACM International Conference on Distributed Event-Based Systems, pp. 47–58. ACM (2014)Google Scholar
  17. 17.
    Narayan, A., Cutulenco, G., Joshi, Y., Fischmeister, S.: Mining timed regular specifications from system traces. ACM Trans. Embed. Comput. Syst. 17(2), 46:1–46:21 (2018)CrossRefGoogle Scholar
  18. 18.
    Rabiser, R., Guinea, S., Vierhauser, M., Baresi, L., Grünbacher, P.: A comparison framework for runtime monitoring approaches. J. Syst. Softw. 125, 309–321 (2017)CrossRefGoogle Scholar
  19. 19.
    Rabiser, R., Thanhofer-Pilisch, J., Vierhauser, M., Grünbacher, P., Egyed, A.: Developing and evolving a DSL-based approach for runtime monitoring of systems of systems. Autom. Softw. Eng. 25(4), 875–915 (2018)CrossRefGoogle Scholar
  20. 20.
    Shoham, S., Yahav, E., Fink, S.J., Pistoia, M.: Static specification mining using automata-based abstractions. IEEE Trans. Soft. Eng. 34(5), 651–666 (2008)CrossRefGoogle Scholar
  21. 21.
    van der Aalst, W., et al.: Process mining manifesto. In: Daniel, F., Barkaoui, K., Dustdar, S. (eds.) BPM 2011. LNBIP, vol. 99, pp. 169–194. Springer, Heidelberg (2012). Scholar
  22. 22.
    Vardi, M.Y.: An automata-theoretic approach to linear temporal logic. In: Moller, F., Birtwistle, G. (eds.) Logics for Concurrency. LNCS, vol. 1043, pp. 238–266. Springer, Heidelberg (1996). Scholar
  23. 23.
    Vierhauser, M., Rabiser, R., Grünbacher, P., Seyerlehner, K., Wallner, S., Zeisel, H.: ReMinds: a flexible runtime monitoring framework for systems of systems. J. Syst. Softw. 112, 123–136 (2016)CrossRefGoogle Scholar
  24. 24.
    Walkinshaw, N., Taylor, R., Derrick, J.: Inferring extended finite state machine models from software executions. Empirical Softw. Eng. 21(3), 811–853 (2016)CrossRefGoogle Scholar
  25. 25.
    Weimer, W., Necula, G.C.: Mining temporal specifications for error detection. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 461–476. Springer, Heidelberg (2005). Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Thomas Krismayer
    • 1
    Email author
  • Rick Rabiser
    • 1
  • Paul Grünbacher
    • 1
  1. 1.CDL MEVSS, Institute for Software Systems EngineeringJohannes Kepler University LinzLinzAustria

Personalised recommendations