Advertisement

Conditions for Compatibility of Components

The Case of Masters and Slaves
  • Maurice H. ter Beek
  • Josep Carmona
  • Jetty KleijnEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9952)

Abstract

We consider systems composed of reactive components that collaborate through synchronised execution of common actions. These multi-component systems are formally represented as team automata, a model that allows a wide spectrum of synchronisation policies to combine components into higher-level systems. We investigate the correct-by-construction engineering of such systems of systems from the point of view of correct communications between the components (no message loss or deadlocks due to indefinite waiting). This leads to a proposal for a generic definition of compatibility of components relative to the adopted synchronisation policy. This definition appears to be particularly appropriate for so-called master-slave synchronisations by which input actions (for ‘slaves’) are driven by output actions (from ‘masters’).

Keywords

Unify Modeling Language Output Action External Action Internal Action Input Action 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Notes

Acknowledgments

We thank the reviewers for their suggestions and additional references to related work. M.H. ter Beek was supported by the CNR through a Short-Term Mobility grant and J. Carmona was supported by funds from the Spanish Ministry for Economy and Competitiveness (MINECO) and the European Union (FEDER funds) under grant COMMAS (ref. TIN2013-46181-C2-1-R).

References

  1. 1.
    Adler, B.T., de Alfaro, L., da Silva, L.D., Faella, M., Legay, A., Raman, V., Roy, P.: Ticc: a tool for interface compatibility and composition. In: Ball, T., Jones, R.B. (eds.) CAV 2006. LNCS, vol. 4144, pp. 59–62. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  2. 2.
    Armstrong, J.: Erlang. Commun. ACM 53(9), 68–75 (2010)CrossRefGoogle Scholar
  3. 3.
    ter Beek, M.H.: Team automata: a formal approach to the modeling of collaboration between system components. PhD thesis, Leiden University (2003)Google Scholar
  4. 4.
    ter Beek, M.H., Ellis, C.A., Kleijn, J., Rozenberg, G.: Synchronizations in team automata for groupware systems. Comput. Sup. Coop. Work 12(1), 21–69 (2003)CrossRefGoogle Scholar
  5. 5.
    ter Beek, M.H., Kleijn, J.: Team automata satisfying compositionality. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 381–400. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  6. 6.
    ter Beek, M.H., Kleijn, J.: Modularity for teams of I/O automata. Inf. Process. Lett. 95(5), 487–495 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    ter Beek, M.H., Reniers, M.A., de Vink, E.P.: Supervisory controller synthesis for product lines using CIF 3. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016, Part I. LNCS, vol. 9952, pp. 856–873. Springer, Heidelberg (2016). doi: 10.1007/978-3-319-47166-2 59 Google Scholar
  8. 8.
    Bensalem, S., Bozga, M., Boyer, B., Legay, A.: Incremental generation of linear invariants for component-based systems. In: Proceedings of the 13th International Conference on Application of Concurrency to System Design (ACSD 2013), pp. 80–89. IEEE (2013)Google Scholar
  9. 9.
    Berry, G.: The Esterel v5 Language Primer. Ecole des Mines de Paris/INRIA (2000)Google Scholar
  10. 10.
    Brim, L., Cerná, I., Vareková, P., Zimmerova, B.: Component-interaction automata as a verification-oriented component-based system specification. ACM Softw. Eng. Notes 31(2), 4:1–4:8 (2006)CrossRefGoogle Scholar
  11. 11.
    Carmona, J.: Structural methods for the synthesis of well-formed concurrent specifications. PhD thesis, Universitat Politècnica de Catalunya (2004)Google Scholar
  12. 12.
    Cortadella, J., Carmona, J.: Input/Output compatibility of reactive systems. In: Aagaard, M.D., O’Leary, J.W. (eds.) FMCAD 2002. LNCS, vol. 2517, pp. 360–377. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  13. 13.
    Carmona, J., Cortadella, J., Kishinevsky, M., Taubin, A.: Elastic circuits. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst. 28(10), 1437–1455 (2009)CrossRefGoogle Scholar
  14. 14.
    Carmona, J.A., Cortadella, J., Pastor, E.: Synthesis of reactive systems: application to asynchronous circuit design. In: Cortadella, J., Yakovlev, A., Rozenberg, G. (eds.) Concurrency and Hardware Design. LNCS, vol. 2549, pp. 108–151. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  15. 15.
    Carmona, J., Kleijn, J.: Interactive behaviour of multi-component systems. In: Cortadella, J., Yakovlev, A. (eds.) ToBaCo 2004, pp. 27–31 (2004)Google Scholar
  16. 16.
    Carmona, J., Kleijn, J.: Compatibility in a multi-component environment. Theor. Comput. Sci. 484, 1–15 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Castro, D., Gulías, V.M., Earle, C.B., Fredlund, L., Rivas, S.: A case study on verifying a supervisor component using McErlang. ENTCS 271, 23–40 (2011)Google Scholar
  18. 18.
    Chapiro, D.M.: Globally-asynchronous locally-synchronous systems. PhD thesis, Stanford University (1984)Google Scholar
  19. 19.
    de Alfaro, L., da Silva, L.D., Faella, M., Legay, A., Roy, P., Sorea, M.: Sociable interfaces. In: Gramlich, B. (ed.) FroCos 2005. LNCS (LNAI), vol. 3717, pp. 81–105. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  20. 20.
    de Alfaro, L., Henzinger, T.A.: Interface automata. In: ESEC/FSE 2001, pp. 109–120. ACM (2001)Google Scholar
  21. 21.
    de Alfaro, L., Henzinger, T.A.: Interface-based design. In: Broy, M., Grünbauer, J., Harel, D., Hoare, T. (eds.) Engineering Theories of Software Intensive Systems. NATO Science Series, vol. 195, pp. 83–104. Springer, Dordrecht (2005)CrossRefGoogle Scholar
  22. 22.
    Dijkstra, E.W.: A constructive approach to the problem of program correctness. BIT Numer. Math. 8(3), 174–186 (1968)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Dumas, M., Benatallah, B., Nezhad, H.R.M.: Web service protocols: compatibility and adaptation. IEEE Data Eng. Bull. 31(3), 40–44 (2008)Google Scholar
  24. 24.
    Engels, G., Groenewegen, L.: Towards team-automata-driven object-oriented collaborative work. In: Brauer, W., Ehrig, H., Karhumäki, J., Salomaa, A. (eds.) Formal and Natural Computing. LNCS, vol. 2300, p. 257. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  25. 25.
    Gössler, G., Sifakis, J.: Composition for component-based modeling. Sci. Comput. Program. 55, 161–183 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Guo, Q., Derrick, J., Benac Earle, C., Fredlund, L.Å.: Model-checking Erlang – a comparison between EtomCRL2 and McErlang. In: Bottaci, L., Fraser, G. (eds.) TAIC PART 2010. LNCS, vol. 6303, pp. 23–38. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  27. 27.
    Hall, A.: Correctness by construction: integrating formality into a commercial development process. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, p. 224. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  28. 28.
    Hall, A., Chapman, R.: Correctness by construction: developing a commercial secure system. IEEE Softw. 19(1), 18–25 (2002)CrossRefGoogle Scholar
  29. 29.
    Hammal, Y.: A modular state exploration and compatibility checking of UML dynamic diagrams. In: AICCSA 2008, pp. 793–800. IEEE (2008)Google Scholar
  30. 30.
    Hammal, Y.: Behavioral compatibility of active components. In: SEFM 2008, pp. 372–376. IEEE (2008)Google Scholar
  31. 31.
    Hennicker, R., Knapp, A.: Modal interface theories for communication-safe component assemblies. In: Cerone, A., Pihlajasaari, P. (eds.) ICTAC 2011. LNCS, vol. 6916, pp. 135–153. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  32. 32.
    Hennicker, R., Knapp, A.: Moving from interface theories to assembly theories. Acta Inf. 52(2–3), 235–268 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  33. 33.
    Hennicker, R., Knapp, A., Wirsing, M.: Assembly theories for communication-safe component systems. In: Bensalem, S., Lakhneck, Y., Legay, A. (eds.) From Programs to Systems. LNCS, vol. 8415, pp. 145–160. Springer, Heidelberg (2014)Google Scholar
  34. 34.
    Isokawa, T., Peper, F., Mitsui, M., Liu, J.-Q., Morita, K., Umeo, H., Kamiura, N., Matsui, N.: Computing by swarm networks. In: Umeo, H., Morishita, S., Nishinari, K., Komatsuzaki, T., Bandini, S. (eds.) ACRI 2008. LNCS, vol. 5191, pp. 50–59. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  35. 35.
    Jamshidi, M.: System of Systems Engineering: Innovations for the Twenty-First Century. Wiley, Hoboken (2008)CrossRefGoogle Scholar
  36. 36.
    Kourie, D.G., Watson, B.W.: The Correctness-by-Construction Approach to Programming. Springer, Heidelberg (2012)CrossRefzbMATHGoogle Scholar
  37. 37.
    Larsen, K.G., Nyman, U., Wąsowski, A.: Modal I/O automata for interface and product line theories. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 64–79. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  38. 38.
    Lynch, N.A., Tuttle, M.R.: Hierarchical correctness proofs for distributed algorithms. In: PODC 1987, pp. 137–151. ACM (1987)Google Scholar
  39. 39.
    Lynch, N.A., Tuttle, M.R.: An introduction to input/output automata. CWI Q. 2(3), 219–246 (1989)MathSciNetzbMATHGoogle Scholar
  40. 40.
    Milner, R.: Communication and Concurrency. Prentice Hall, Upper Saddle River (1989)zbMATHGoogle Scholar
  41. 41.
    Morgan, C.C.: Programming from Specifications, 2nd edn. Prentice Hall, Upper Saddle River (1994)zbMATHGoogle Scholar
  42. 42.
    Ramadge, P.J., Wonham, W.M.: Supervisory control of a class of discrete event processes. SIAM J. Control Optim. 25(1), 206–230 (1987)MathSciNetCrossRefzbMATHGoogle Scholar
  43. 43.
    Silva, M., Valette, R.: Petri nets and flexible manufacturing. In: Rozenberg, G. (ed.) Advances in Petri Nets. LNCS, vol. 424, pp. 374–417. Springer, Heidelberg (1990)Google Scholar
  44. 44.
    Yellin, D.M., Strom, R.E.: Protocol specifications and component adaptors. ACM Trans. Program. Lang. Syst. 19(2), 292–333 (1997)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2016

Authors and Affiliations

  • Maurice H. ter Beek
    • 1
  • Josep Carmona
    • 2
  • Jetty Kleijn
    • 3
    Email author
  1. 1.ISTI–CNRPisaItaly
  2. 2.Universitat Politècnica de CatalunyaBarcelonaSpain
  3. 3.LIACSLeiden UniversityLeidenThe Netherlands

Personalised recommendations