Abstract
The ComMA language has been developed to specify interfaces of software components, including protocol state machines, time and data constraints, and constraints on relations between events of multiple interfaces. The language has been devised in close collaboration with an industrial partner where it has been used to model a large number of interfaces. Based on a ComMA model, a number of artefacts can be generated such as documentation and test cases. Important is the generation of a monitor which is used to check if an implementation conforms to the specified model. This paper describes the ComMA monitoring algorithms. They are based on runtime verification techniques which have been extended to deal with the expressive ComMA language.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
References
Ancona, D., Franceschini, L., Ferrando, A., Mascardi, V.: RML: theory and practice of a domain specific language for runtime verification. Sci. Comput. Program. 205, 102610 (2021). https://doi.org/10.1016/j.scico.2021.102610
Blein, Y.: ParTraP: a language for the specification and runtime verification of parametric properties. (ParTraP: Un langage pour la spécification et vérification à l’exécution de propriétés paramétriques). Ph.D. thesis, Grenoble Alpes University, France (2019). https://tel.archives-ouvertes.fr/tel-02269062
Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Boehm, B.W., Garlan, D., Kramer, J. (eds.) Proceedings of the 1999 International Conference on Software Engineering, ICSE 1999, Los Angeles, CA, USA, 16–22 May 1999, pp. 411–420. ACM (1999). https://doi.org/10.1145/302405.302672
Falcone, Y., Jaber, M., Nguyen, T.-H., Bozga, M., Bensalem, S.: Runtime verification of component-based systems in the BIP framework with formally-proved sound and complete instrumentation. Softw. Syst. Model. 14(1), 173–199 (2013). https://doi.org/10.1007/s10270-013-0323-y
Kähkönen, K., Lampinen, J., Heljanko, K., Niemelä, I.: The LIME interface specification language and runtime monitoring tool. In: Bensalem, S., Peled, D.A. (eds.) RV 2009. LNCS, vol. 5779, pp. 93–100. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04694-0_7
Kurtev, I., Hooman, J., Schuts, M.: Runtime monitoring based on interface specifications. In: Katoen, J.-P., Langerak, R., Rensink, A. (eds.) ModelEd, TestEd, TrustEd. LNCS, vol. 10500, pp. 335–356. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-68270-9_17
Kurtev, I., Schuts, M., Hooman, J., Swagerman, D.J.: Integrating interface modeling and analysis in an industrial setting. In: Proceedings of 5th International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2017), pp. 345–352 (2017)
Potts, C.: Software-engineering research revisited. IEEE Softw. 19(9), 19–28 (1993)
Roos, N.: ComMA interfaces open the door to reliable high-tech systems. Bits & Chips, 8 September 2020. https://bits-chips.nl/artikel/comma-interfaces-open-the-door-to-reliable-high-tech-systems/
Sánchez, C., et al.: A survey of challenges for runtime verification from advanced application domains (beyond software). Formal Methods Syst. Des. 54(3), 279–335 (2019). https://doi.org/10.1007/s10703-019-00337-w
Schuts, M., Hooman, J., Kurtev, I., Swagerman, D.J.: Reverse engineering of legacy software interfaces to a model-based approach. In: Proceedings of the 2018 Federated Conference on Computer Science and Information Systems (FedCSIS 2018). Annals of Computer Science and Information Systems (ACSIS), vol. 15, pp. 867–876 (2018)
Schuts, M., Swagerman, D.J., Kurtev, I., Hooman, J.: Improving interface specifications with ComMA. Bits & Chips, 14 September 2017. https://bits-chips.nl/artikel/improving-interface-specifications-with-comma/
Stockmann, L., Laux, S., Bodden, E.: Architectural runtime verification. In: IEEE International Conference on Software Architecture Companion, ICSA Companion 2019, Hamburg, Germany, 25–26 March 2019, pp. 77–84. IEEE (2019). https://doi.org/10.1109/ICSA-C.2019.00021
Acknowledgements
We would like to thanks our colleague Dennis Dams and the anonymous reviewers for many useful suggestions for improvements.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Kurtev, I., Hooman, J. (2022). Runtime Verification of Compound Components with ComMA. In: Jansen, N., Stoelinga, M., van den Bos, P. (eds) A Journey from Process Algebra via Timed Automata to Model Learning . Lecture Notes in Computer Science, vol 13560. Springer, Cham. https://doi.org/10.1007/978-3-031-15629-8_21
Download citation
DOI: https://doi.org/10.1007/978-3-031-15629-8_21
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-15628-1
Online ISBN: 978-3-031-15629-8
eBook Packages: Computer ScienceComputer Science (R0)