Design and Verification of Systems with Exogenous Coordination Using Vereofy

  • Christel Baier
  • Tobias Blechmann
  • Joachim Klein
  • Sascha Klüppelholz
  • Wolfgang Leister
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6416)

Abstract

The feasibility of formal methods for the analysis of complex systems crucially depends on a modeling framework that supports compositional design, stepwise refinement and abstractions. An important feature is the clear separation of coordination and computation which permits to apply various verification techniques for the computation performed by components and interactions as well as dependencies between the components. We report here on a model-checking approach using the tool Vereofy that is based on an exogenous coordination model, where the components are represented by their behavioral interfaces. Vereofy supports the verification of the components and their communication structure. Our approach is illustrated by means of a case study with a sensor network where Vereofy has been used to establish several properties of the sensor nodes and their routing procedures.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alur, R., de Alfaro, L., Grosu, R., Henzinger, T.A., Kang, M., Kirsch, C.M., Majumdar, R., Mang, F.Y.C., Wang, B.-Y.: Jmocha: A model checking tool that exploits design structure. In: Proceedings of the 23rd International Conference on Software Engineering (ICSE), pp. 835–836. IEEE Computer Society, Los Alamitos (2001)Google Scholar
  2. 2.
    Arbab, F.: Reo: A Channel-Based Coordination Model for Component Composition. Mathematical Structures in Computer Science 14(3), 329–366 (2004)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Baier, C., Blechmann, T., Klein, J., Klüppelholz, S.: A Uniform Framework for Modeling and Verifying Components and Connectors. In: Field, J., Vasconcelos, V.T. (eds.) COORDINATION 2009. LNCS, vol. 5521, pp. 247–267. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  4. 4.
    Baier, C., Blechmann, T., Klein, J., Klüppelholz, S.: Formal Verification for Components and Connectors. In: de Boer, F.S., Bonsangue, M.M., Madelaine, E. (eds.) FMCO 2008. LNCS, vol. 5751, pp. 82–101. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  5. 5.
    Baier, C., Sirjani, M., Arbab, F., Rutten, J.: Modeling Component Connectors in Reo by Constraint Automata. Science of Computer Programming 61, 75–113 (2006)MathSciNetCrossRefMATHGoogle Scholar
  6. 6.
    Capizzi, S., Solmi, R., Zavattaro, G.: From endogenous to exogenous coordination using aspect-oriented programming. In: De Nicola, R., Ferrari, G.-L., Meredith, G. (eds.) COORDINATION 2004. LNCS, vol. 2949, pp. 105–118. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  7. 7.
    Chiyangwa, S., Kwiatkowska, M.: A timing analysis of AODV. In: Steffen, M., Zavattaro, G. (eds.) FMOODS 2005. LNCS, vol. 3535, pp. 306–322. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Cimatti, A., Clarke, E., Giunchiglia, F., Roveri, M.: NUSMV: A new symbolic model checker. International Journal on Software Tools for Technology Transfer 2(4), 410–425 (2000)CrossRefMATHGoogle Scholar
  9. 9.
    Clarke, E., Emerson, E., Sistla, A.: Automatic Verification of Finite-State Concurrent Systems Using Temporal Logic Specifications. ACM Transactions on Programm. Languages and Systems 8(2), 244–263 (1986)CrossRefMATHGoogle Scholar
  10. 10.
    Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
  11. 11.
    Emerson, E., Lei, C.: Efficient Model Checking in Fragments of the Propositional μ–Calculus. In: Proc. of LICS, pp. 267–278. IEEE Computer Society Press, Los Alamitos (1986)Google Scholar
  12. 12.
    Gößler, G., Sifakis, J.: Component-based construction of deadlock-free systems: Extended abstract. In: Pandya, P.K., Radhakrishnan, J. (eds.) FSTTCS 2003. LNCS, vol. 2914, pp. 420–433. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  13. 13.
    Guillen-Scholten, J., Arbab, F., de Boer, F., Bonsangue, M.: MoCha-pi: an exogenous coordination calculus based on mobile channels. In: Proceedings of the 2005 ACM Symposium on Applied Computing (SAC), pp. 436–442. ACM, New York (2005)CrossRefGoogle Scholar
  14. 14.
    Holzmann, G.J.: The model checker SPIN. IEEE Transactions on Software Engineering 23, 279–295 (1997)CrossRefGoogle Scholar
  15. 15.
    Klüppelholz, S., Baier, C.: Symbolic model checking for channel-based component connectors. Science of Computer Programming 74(9), 688–701 (2009)MathSciNetCrossRefMATHGoogle Scholar
  16. 16.
    Klüppelholz, S., Baier, C.: Alternating-time stream logic for multi-agent systems. Science of Computer Programming 75(6), 398–425 (2010)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Liu, X., Wang, J.: Formal Verification of Ad hoc On-demand Distance Vector (AODV) Protocol using Cadence SMV, Report, Univ. of British Columbia (2004)Google Scholar
  18. 18.
    Majster-Cederbaum, M., Minnameier, C.: Everything is PSPACE-complete in interaction systems. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigun, H. (eds.) ICTAC 2008. LNCS, vol. 5160, pp. 216–227. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    Musuvathi, M., Park, D., Chou, A., Engler, D., Dill, D.: CMC: A Pragmatic Approach to Model Checking Real Code. In: OSDI 2002 (2002)Google Scholar
  20. 20.
    Obradovic, D.: Formal Analysis of Routing Protocols. PhD thesis, University of Pennsylvania (2001)Google Scholar
  21. 21.
    Perkins, C., Belding-Royer, E., Das, S.: Ad hoc On-Demand Distance Vector (AODV) Routing. RFC 3561, IETF (July 2003)Google Scholar
  22. 22.
    Pnueli, A.: The Temporal Logic of Programs. In: Proc. of 18th FOCS, pp. 46–57. IEEE Computer Society Press, Los Alamitos (1977)Google Scholar
  23. 23.
    Vardi, M., Wolper, P.: An Automata-Theoretic Approach to Automatic Program Verification. In: LICS, pp. 332–345. IEEE Computer Society Press, Los Alamitos (1986)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Christel Baier
    • 1
  • Tobias Blechmann
    • 1
  • Joachim Klein
    • 1
  • Sascha Klüppelholz
    • 1
  • Wolfgang Leister
    • 2
  1. 1.Faculty of Computer ScienceTechnische Universität DresdenGermany
  2. 2.Norsk Regnesentral (Norwegian Computing Center)Norway

Personalised recommendations