Advertisement

Taming Hierarchical Connectors

  • José ProençaEmail author
  • Alexandre Madeira
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11761)

Abstract

Building and maintaining complex systems requires good software engineering practices, including code modularity and reuse. The same applies in the context of coordination of complex component-based systems. This paper investigates how to verify properties of complex coordination patterns built hierarchically, i.e., built from composing blocks that are in turn built from smaller blocks. Most existing approaches to verify properties flatten these hierarchical models before the verification process, losing the hierarchical structure. We propose an approach to verify hierarchical models using containers as actions; more concretely, containers interacting with their neighbours. We present a dynamic modal logic tailored for hierarchical connectors, using Reo and Petri Nets to illustrate our approach. We realise our approach via a prototype implementation available online to verify hierarchical Reo connectors, encoding connectors and formulas into mCRL2 specifications and formulas.

Notes

Acknowledgements

This work is financed by the ERDF—European Regional Development Fund through the Operational Programme for Competitiveness and Internationalisation—COMPETE 2020 Programme and by National Funds through the Portuguese funding agency, FCT—Fundação para a Ciência e a Tecnologia, within projects POCI-01-0145-FEDER-029946 (1\(^{\text {st}}\) author) and POCI-01-0145-FEDER-016692 (2\(^{\text {nd}}\) author), in the scope of the framework contract foreseen in the numbers 4, 5 and 6 of article 23, of Decree-Law 57/2016, of August 29, changed by Portuguese Law 57/2017, July 19.

References

  1. 1.
    Arbab, F.: Reo: a channel-based coordination model for component composition. Math. Struct. Comput. Sci. 14(3), 329–366 (2004)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Baier, C., Sirjani, M., Arbab, F., Rutten, J.J.M.M.: Modeling component connectors in Reo by constraint automata. Sci. Comput. Program. 61(2), 75–113 (2006)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Cruz, R., Proença, J.: ReoLive: analysing connectors in your browser. In: Mazzara, M., Ober, I., Salaün, G. (eds.) STAF 2018. LNCS, vol. 11176, pp. 336–350. Springer, Cham (2018).  https://doi.org/10.1007/978-3-030-04771-9_25CrossRefGoogle Scholar
  4. 4.
    Groote, J.F., Mathijssen, A., Reniers, M., Usenko, Y., van Weerdenburg, M.: The formal specification language mCRL2. In: Brinksma, E., Harel, D., Mader, A., Stevens, P., Wieringa, R. (eds.) Methods for Modelling Software Systems (MMOSS), number 06351 in Dagstuhl Seminar Proceedings. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, Germany (2007)Google Scholar
  5. 5.
    Jensen, K., Kristensen, L.M.: Coloured Petri Nets. Springer, Heidelberg (2009).  https://doi.org/10.1007/b95112CrossRefzbMATHGoogle Scholar
  6. 6.
    Koehler, C., Clarke, D.: Decomposing port automata. In: Proceedings SAC 2009, pp. 1369–1373. New York, NY, USA, ACM (2009)Google Scholar
  7. 7.
    Kokash, N., Krause, C., de Vink, E.P.: Reo + mCRL2: a framework for model-checking dataflow in service compositions. FAC 24(2), 187–216 (2012)MathSciNetzbMATHGoogle Scholar
  8. 8.
    Proença, J., Clarke, D.: Typed connector families and their semantics. Sci. Comput. Program. 146, 28–49 (2017)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2019

Authors and Affiliations

  1. 1.CISTER, ISEPUniversidade do Minho & HASLab/INESC TECBragaPortugal
  2. 2.CIDMAUniversidade de Aveiro & HASLab/INESC TECAveiroPortugal

Personalised recommendations