Skip to main content

Runtime Monitoring Based on Interface Specifications

  • Chapter
  • First Online:
ModelEd, TestEd, TrustEd

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10500))

Abstract

Unclear descriptions of software interfaces between components often lead to integration issues during development and maintenance. To address this, we have developed a framework named ComMA (Component Modeling and Analysis) that supports model-based engineering of components. ComMA is a combination of Domain Specific Languages (DSLs) for the specification of interface signatures, state machines to express the allowed interaction behaviour, and constraints on data and timing. From ComMA models a number of artefacts can be generated automatically such as proxy code, visualizations, tests, and simulation models. In this paper, the focus is on the generation of runtime monitors to check interface conformance, including the state machine behaviour and the specified data and time constraints. We report about the development of this approach in close collaboration with the development of medical applications at Philips.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    http://plantuml.com/.

  2. 2.

    https://github.com/ObeoNetwork/M2Doc.

  3. 3.

    https://www.microsoft.com/en-us/research/project/model-based-testing-with-specexplorer/.

  4. 4.

    http://poosl.esi.nl/.

References

  1. Barringer, H., Rydeheard, D.E., Havelund, K.: Rule systems for run-time monitoring: from Eagle to RuleR. In: Sokolsky and Taşıran [13], pp. 111–125

    Google Scholar 

  2. Brinksma, E., Hooman, J.: Dependability for high-tech systems: an industry-as-laboratory approach. In: Design, Automation & Test in Europe (DATE 2008), pp. 1226–1231. European Design and Automation Association (EDAA) (2008)

    Google Scholar 

  3. Broy, M., Peled, D.A., Kalus, G. (eds.): Engineering Dependable Software Systems. NATO Science for Peace and Security Series, D: Information and Communication Security, vol. 34. IOS Press (2013)

    Google Scholar 

  4. Burdy, L., Cheon, Y., Cok, D.R., Ernst, M.D., Kiniry, J.R., Leavens, G.T., Leino, K.R.M., Poll, E.: An overview of JML tools and applications. STTT 7(3), 212–232 (2005)

    Article  Google Scholar 

  5. Cassez, F., Jard, C. (eds.): FORMATS 2008. LNCS, vol. 5215. Springer, Heidelberg (2008)

    MATH  Google Scholar 

  6. Chen, F., D’Amorim, M., Roşu, G.: A formal monitoring-based framework for software development and analysis. In: Davies, J., Schulte, W., Barnett, M. (eds.) ICFEM 2004. LNCS, vol. 3308, pp. 357–372. Springer, Heidelberg (2004). doi:10.1007/978-3-540-30482-1_31

    Chapter  Google Scholar 

  7. Falcone, Y., Havelund, K., Reger, G.: A tutorial on runtime verification. In: Broy et al. [3], pp. 141–175

    Google Scholar 

  8. Kim, H., Fried, D., Menegay, P., Soremekun, G., Oster, C.: Application of integrated modeling and analysis to development of complex systems. Procedia Comput. Sci. 16, 98–107 (2013)

    Article  Google Scholar 

  9. Leucker, M., Schallhart, C.: A brief account of runtime verification. J. Logic Algebraic Program. 78(5), 293–303 (2009)

    Article  MATH  Google Scholar 

  10. Meyer, B.: Object-Oriented Software Construction, 1st edn. Prentice-Hall Inc., Upper Saddle River (1988)

    Google Scholar 

  11. Ouaknine, J., Worrell, J.: Some recent results in metric temporal logic. In: Cassez and Jard [5], pp. 1–13

    Google Scholar 

  12. Potts, C.: Software-engineering research revisited. IEEE Softw. 19(9), 19–28 (1993)

    Article  Google Scholar 

  13. Sokolsky, O., Taşıran, S. (eds.): RV 2007. LNCS, vol. 4839. Springer, Heidelberg (2007)

    Google Scholar 

  14. Theelen, B., Florescu, O., Geilen, M., Huang, J., van der Putten, P., Voeten, J.: Software/hardware engineering with the parallel object-oriented specification language. In: Proceedings of MEMOCODE 2007, pp. 139–148. IEEE (2007)

    Google Scholar 

Download references

Acknowledgements

The anonymous reviewers are thanked for useful suggestions for improvement. We would like to thank Dirk-Jan Swagerman for his support and the collaborating teams at Philips for constructive feedback.

The second author is grateful to Ed Brinksma for the very pleasant collaboration when Ed was the scientific director of the Embedded Systems Institute (currently TNO-ESI). With his very broad knowledge he was able to discuss any topic with experts and he created an excellent environment for productive industry-as-lab projects. Moreover, Ed is thanked for the stimulating role in the career development of the second author.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jozef Hooman .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this chapter

Cite this chapter

Kurtev, I., Hooman, J., Schuts, M. (2017). Runtime Monitoring Based on Interface Specifications. In: Katoen, JP., Langerak, R., Rensink, A. (eds) ModelEd, TestEd, TrustEd. Lecture Notes in Computer Science(), vol 10500. Springer, Cham. https://doi.org/10.1007/978-3-319-68270-9_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-68270-9_17

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-68269-3

  • Online ISBN: 978-3-319-68270-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics