Integrated Environment for Verifying and Running Distributed Components

  • Ludovic Henrio
  • Oleksandra Kulankhina
  • Siqi Li
  • Eric Madelaine
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9633)

Abstract

This paper targets the generation of distributed applications with safety guarantees. The proposed approach starts from graphical specification formalisms allowing the architectural and behavioral description of component systems. From this point, the user can automatically verify application properties using model-checking techniques. Finally, the specified and verified component model can be translated into executable Java code. We implement our approach in a tool suite distributed as an Eclipse plugin. This paper also illustrates our approach by modeling and verifying Peterson’s leader election algorithm.

References

  1. 1.
    Henrio, L., Kulankhina, O., Liu, D., Madelaine, E.: Verifying the correct composition of distributed components: formalisation and tool. In: FOCLASA, Rome, Italy, September 2014Google Scholar
  2. 2.
    Garavel, H., Lang, F., Mateescu, R., Serwe, W.: CADP 2010: a toolbox for the construction and analysis of distributed processes. In: Abdulla, P.A., Leino, K.R.M. (eds.) TACAS 2011. LNCS, vol. 6605, pp. 372–387. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  3. 3.
    Baude, F., Caromel, D., Dalmasso, C., Danelutto, M., Getov, V., Henrio, L., Pérez, C.: GCM: a grid extension to fractal for autonomous distributed components. Ann. Telecommun. 64(1), 5–24 (2009)CrossRefGoogle Scholar
  4. 4.
    Cansado, A., Madelaine, E.: Specification and verification for grid component-based applications: from models to tools. In: de Boer, F.S., Bonsangue, M.M., Madelaine, E. (eds.) FMCO 2008. LNCS, vol. 5751, pp. 180–203. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  5. 5.
    Henrio, L., Madelaine, E., Zhang, M.: pnets: an expressive model for parameterised networks of processes. In: 23rd Euromicro International Conference on Parallel, Distributed, and Network-Based Processing, PDP 2015, 4–6 March 2015, Turku, Finland, pp. 492–496 (2015)Google Scholar
  6. 6.
    Ameur-Boulifa, R., Henrio, L., Madelaine, E., Savu, A.: Behavioural semantics for asynchronous components. Rapport de recherche RR-8167, INRIA, December 2012Google Scholar
  7. 7.
    Dolev, D., Klawe, M.M., Rodeh, M.: An o(n log n) unidirectional distributed algorithm for extrema finding in a circle. J. Algorithms 3(3), 245–260 (1982). http://dx.doi.org/10.1016/0196-6774(82)90023-2 MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Henrio, L., Kulankhina, O., Li, S., Madelaine, E.: Integrated environment for verifying and running distributed components - extended version. Research Report RR8841, INRIA Sophia-Antipolis, December 2015Google Scholar
  9. 9.
    Barros, T., Ameur-Boulifa, R., Cansado, A., Henrio, L., Madelaine, E.: Behavioural models for distributed fractal components. Ann. Telecommun. 64(1–2), 25–43 (2009)CrossRefGoogle Scholar
  10. 10.
    Berthomieu, B., Bodeveix, J., Filali, M., Garavel, H., Lang, F., Peres, F., Saad, R., Stoecker, J., Vernadat, F.: The syntax and semantics of Fiacre, March 2009Google Scholar
  11. 11.
    Lang, F.: Exp.Open 2.0: a flexible tool integrating partial order, compositional, and on-the-fly verification methods. In: Romijn, J.M.T., Smith, G.P., van de Pol, J. (eds.) IFM 2005. LNCS, vol. 3771, pp. 70–88. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  12. 12.
    Mateescu, R., Thivolle, D.: A model checking language for concurrent value-passing systems. In: Cuellar, J., Sere, K. (eds.) FM 2008. LNCS, vol. 5014, pp. 148–164. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  13. 13.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: 21st International Conference on Software Engineering, May 1999Google Scholar
  14. 14.
    Basu, A., Bensalem, B., Bozga, M., Combaz, J., Jaber, M., Nguyen, T., Sifakis, J.: Rigorous component-based system design using the BIP framework. IEEE Softw. 28(3), 41–48 (2011)CrossRefGoogle Scholar
  15. 15.
    Childs, A., Greenwald, J., Jung, G., Hoosier, M., Hatcliff, J.: CALM and Cadena: metamodeling for component-based product-line development. IEEE Comput. 39(2), 42–50 (2006)CrossRefGoogle Scholar
  16. 16.
    Reussner, R., Becker, S., Burger, E., Happe, J., Hauck, M., Koziolek, A., Koziolek, H., Krogmann, K., Kuperberg, M.: The Palladio component model. Technical report, Karlsruhe Institute of Technology, March 2011Google Scholar
  17. 17.
    Leister, W., Bjork, J., Schlatte, R., Griesmayer, A.: Verifying distributed algorithms with executable Creol models, January 2011Google Scholar
  18. 18.
    Grabe, I., Jaghoori, M.M., Aichernig, B.K., Baier, C., Blechmann, T., de Boer, F.S., Griesmayer, A., Johnsen, E.B., Klein, J., Klüppelholz, S., Kyas, M., Leister, W., Schlatte, R., Stam, A., Steffen, M., Tschirner, S., Xuedong, L., Yi, W.: Credo methodology: modeling and analyzing A peer-to-peer system in Credo. Electron. Notes Theoret. Comput. Sci. 266, 33–48 (2010)CrossRefGoogle Scholar
  19. 19.
    Arbab, F.: A behavioral model for composition of software components. L’OBJET 12(1), 33–76 (2006)Google Scholar
  20. 20.
    Hnětynka, P., Plášil, F.: Dynamic reconfiguration and access to services in hierarchical component models. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Ren, X.-M., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063, pp. 352–359. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  21. 21.
    Klarl, A., Hennicker, R.: Design and implementation of dynamically evolving ensembles with the HELENA framework. In: Proceedings of the 23rd Australasian Software Engineering Conference, pp. 15–24. IEEE (2014)Google Scholar
  22. 22.
    Hähnle, R., Helvensteijn, M., Johnsen, E.B., Lienhardt, M., Sangiorgi, D., Schaefer, I., Wong, P.Y.H.: HATS abstract behavioral specification: the architectural view. In: Beckert, B., Damiani, F., de Boer, F.S., Bonsangue, M.M. (eds.) FMCO 2011. LNCS, vol. 7542, pp. 109–132. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  23. 23.
    Sirjani, M., Movaghar, A., Shali, A., de Boer, F.S.: Modeling and verification of reactive systems using Rebeca. Fundam. Inform. 63(4), 385–410 (2004)MathSciNetMATHGoogle Scholar
  24. 24.
    Burmester, S., Giese, H., Hirsch, M., Schilling, D.: Incremental design and formal verification with UML/RT in the FUJABA real-time tool suite. In: Proceedings of the International Workshop SVERTS (2004)Google Scholar
  25. 25.
    Ameur-Boulifa, R., Halalai, R., Henrio, L., Madelaine, E.: Verifying safety of fault-tolerant distributed components. In: Arbab, F., Ölveczky, P.C. (eds.) FACS 2011. LNCS, vol. 7253, pp. 278–295. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  26. 26.
    Gaspar, N., Henrio, L., Madelaine, E.: Formally reasoning on a reconfigurable component-based system – a case study for the industrial world. In: Fiadeiro, J.L., Liu, Z., Xue, J. (eds.) FACS 2013. LNCS, vol. 8348, pp. 137–156. Springer, Heidelberg (2014)Google Scholar
  27. 27.
    Caromel, D., Henrio, L.: A Theory of Distributed Objects. Springer, Berlin (2005). ISBN 3-540-20866-6MATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2016

Authors and Affiliations

  • Ludovic Henrio
    • 1
  • Oleksandra Kulankhina
    • 1
    • 2
  • Siqi Li
    • 3
  • Eric Madelaine
    • 1
    • 2
  1. 1.University of Nice Sophia Antipolis, CNRSSophia AntipolisFrance
  2. 2.INRIA Sophia Antipolis MéditérannéeSophia AntipolisFrance
  3. 3.Shanghai Key Laboratory of Trustworthy ComputingECNUShanghaiChina

Personalised recommendations