SMEDL: Combining Synchronous and Asynchronous Monitoring

  • Teng ZhangEmail author
  • Peter Gebhard
  • Oleg Sokolsky
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10012)


Two major approaches have emerged in runtime verification, based on synchronous and asynchronous monitoring. Each approach has its advantages and disadvantages and is applicable in different situations. In this paper, we explore a hybrid approach, where low-level properties are checked synchronously, while higher-level ones are checked asynchronously. We present a tool for constructing and deploying monitors based on an architecture specification. Monitor logic and patterns of communication between monitors are specified in a language SMEDL. The language and the tool are illustrated using a case study of a robotic simulator.


Monitor generation Synchronous monitoring Asynchronous monitoring 


  1. 1.
    Leucker, M., Schallhart, C.: A brief account of runtime verification. J. Logic Algebraic Program. 78(5), 293–303 (2009)CrossRefzbMATHGoogle Scholar
  2. 2.
    Francalanza, A.: A theory of monitors. In: Jacobs, B., Löding, C. (eds.) FOSSACS 2016. LNCS, vol. 9634, pp. 145–161. Springer, Heidelberg (2016). doi: 10.1007/978-3-662-49630-5_9 CrossRefGoogle Scholar
  3. 3.
    Francalanza, A., Gauci, A., Pace, G.J.: Distributed system contract monitoring. J. Logic Algebraic Program. 82(5–7), 186–215 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Kim, M., Kannan, S., Lee, I., Sokolsky, O., Viswanathan, M.: Java-MaC: a run-time assurance approach for Java programs. Formal Methods Syst. Des. 24(2), 129–155 (2004)CrossRefzbMATHGoogle Scholar
  5. 5.
    Zhou, W., Sokolsky, O., Loo, B.T., Lee, I.: DMaC: distributed monitoring and checking. In: Bensalem, S., Peled, D.A. (eds.) RV 2009. LNCS, vol. 5779, pp. 184–201. Springer, Heidelberg (2009). doi: 10.1007/978-3-642-04694-0_13 CrossRefGoogle Scholar
  6. 6.
    Meredith, P.O., Jin, D., Griffith, D., Chen, F., Roşu, G.: An overview of the MOP runtime verification framework. Int. J. Softw. Tools Technol. Transfer 14(3), 249–289 (2012)CrossRefGoogle Scholar
  7. 7.
    Luo, Q., Zhang, Y., Lee, C., Jin, D., Meredith, P.O.N., Şerbănuţă, T.F., Roşu, G.: RV-Monitor: efficient parametric runtime verification with simultaneous properties. In: Bonakdarpour, B., Smolka, S.A. (eds.) RV 2014. LNCS, vol. 8734, pp. 285–300. Springer, Heidelberg (2014)Google Scholar
  8. 8.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Akşit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997). doi: 10.1007/BFb0053381 Google Scholar
  9. 9.
    Chen, Z., Wang, Z., Zhu, Y., Xi, H., Yang, Z.: Parametric runtime verification of C programs. In: Chechik, M., Raskin, J.-F. (eds.) TACAS 2016. LNCS, vol. 9636, pp. 299–315. Springer, Heidelberg (2016). doi: 10.1007/978-3-662-49674-9_17 CrossRefGoogle Scholar
  10. 10.
    Colombo, C., Pace, G.J., Abela, P.: Compensation-aware runtime monitoring. In: Barringer, H., Falcone, Y., Finkbeiner, B., Havelund, K., Lee, I., Pace, G., Roşu, G., Sokolsky, O., Tillmann, N. (eds.) RV 2010. LNCS, vol. 6418, pp. 214–228. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  11. 11.
    Sen, K., Vardhan, A., Agha, G., Rosu, G.: Efficient decentralized monitoring of safety in distributed systems. In: Proceedings of the 26th International Conference on Software Engineering, pp. 418–427. IEEE Computer Society (2004)Google Scholar
  12. 12.
    Nazarpour, H., Falcone, Y., Bensalem, S., Bozga, M., Combaz, J.: Monitoring multi-threaded component-based systems. Technical report TR-2015-5, Verimag Research Report (2015)Google Scholar
  13. 13.
    Barringer, H., Rydeheard, D., Havelund, K.: Rule systems for run-time monitoring: from Eagle to RuleR. J. Logic Comput. 20(3), 675–706 (2010)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Zhang, T., Gebhard, P., Sokolsky, O.: Semantics of SMEDL monitor objects. Technical report MS-CIS-16-02, University of Pennsylvania (2016)Google Scholar
  15. 15.
    Zhang, T., Gebhard, P., Sokolsky, O.: Architecture description language for SMEDL. Technical report MS-CIS-16-06, University of Pennsylvania (2016)Google Scholar
  16. 16.
    Videla, A., Williams, J.J.: RabbitMQ in Action. Manning, Shelter Island (2012)Google Scholar

Copyright information

© Springer International Publishing AG 2016

Authors and Affiliations

  1. 1.University of PennsylvaniaPhiladelphiaUSA

Personalised recommendations