Skip to main content

Deriving Interaction Scenarios for Timed Distributed Systems by Symbolic Execution

  • Conference paper
  • First Online:
Advances in Model and Data Engineering in the Digitalization Era (MEDI 2021)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 1481))

Included in the following conference series:

  • 453 Accesses

Abstract

In this paper, we propose a symbolic framework to analyze and debug communicating distributed models. We implement dedicated symbolic execution techniques for such models and use them to compute interaction scenarios satisfying a particular user coverage objective. These scenarios reveal emergent temporal and data correlations that are part of the system specification. To support the understanding and the analysis of such learned knowledge, our tooling allows for an intuitive annotated scenario visualization using sequence diagrams. As an application, we develop behavioral models for the so-called distributed Trickle algorithm which manages information dissemination in Wireless Sensor Networks (WSN). We select relevant scenarios which cover critical communications achieving an up-to-date or outdated state of the network.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 69.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 89.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Variables in \(A_{time}\) are not of the same nature of those in K as they are only used to store terms of type time, while clocks are used to measure time passing.

  2. 2.

    Any clock of a given node, here cl, evolves only if a transition of that node is executed: the clock is then implicitly incremented by a fresh duration.

References

  1. Griesmayer, A., Aichernig, B., Johnsen, E.B., Schlatte, R.: Dynamic symbolic execution for testing distributed objects. In: Dubois, C. (ed.) TAP 2009. LNCS, vol. 5668, pp. 105–120. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02949-3_9

    Chapter  Google Scholar 

  2. Alur, R., Dill, D.: A theory of timed automata. J. Theor. Comput. Sci. 126(2), 183–235 (1994)

    Article  MathSciNet  Google Scholar 

  3. Bannour, B., Escobedo, J.P., Gaston, C., Le Gall, P.: Off-Line test case generation for timed symbolic model-based conformance testing. In: Nielsen, B., Weise, C. (eds.) ICTSS 2012. LNCS, vol. 7641, pp. 119–135. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-34691-0_10

    Chapter  Google Scholar 

  4. Bannour, B., Lapitre, A., Le Gall, P.: Exploring IoT trickle-based dissemination using timed model-checking and symbolic execution. In: Georgiou, C., Majumdar, R. (eds.) NETYS 2020. LNCS, vol. 12129, pp. 94–111. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-67087-0_7

    Chapter  Google Scholar 

  5. Cadar, C., Dunbar, D., Engler, R., Klee, D.: unassisted and automatic generation of high-coverage tests for complex systems programs. In: USENIX (2008)

    Google Scholar 

  6. Gaston, C., Le Gall, P., Rapin, N., Touil, A.: Symbolic execution techniques for test purpose definition. In: Uyar, M.Ü., Duale, A.Y., Fecko, M.A. (eds.) TestCom 2006. LNCS, vol. 3964, pp. 1–18. Springer, Heidelberg (2006). https://doi.org/10.1007/11754008_1

    Chapter  Google Scholar 

  7. Dong, J.S., Sun, J., Sun, J., Taguchi, K., Zhang, X.: Specifying and verifying sensor networks: an experiment of formal methods. In: Liu, S., Maibaum, T., Araki, K. (eds.) ICFEM 2008. LNCS, vol. 5256, pp. 318–337. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-88194-0_20

    Chapter  Google Scholar 

  8. Dunkels, A., Gronvall, B., Voigt, T.: Contiki - a lightweight and flexible operating system for tiny networked sensors. In: LCN. IEEE (2004)

    Google Scholar 

  9. Hui, J., Kelsey, R.: Multicast protocol for low-power and lossy networks, request for comments: 7731. Technical report, Silicon Labs, February 2016

    Google Scholar 

  10. King, J.C.: Symbolic execution and program testing. Commun. ACM 19, 360248 (1976)

    Article  MathSciNet  Google Scholar 

  11. Sen, K., Agha, G.: CUTE and jCUTE: concolic unit testing and explicit path model-checking tools. In: Ball, T., Jones, R.B. (eds.) CAV 2006. LNCS, vol. 4144, pp. 419–423. Springer, Heidelberg (2006). https://doi.org/10.1007/11817963_38

    Chapter  Google Scholar 

  12. Frantzen, L., Tretmans, J., Willemse, T.A.C.: A symbolic framework for model-based testing. In: Havelund, K., Núñez, M., Roşu, G., Wolff, B. (eds.) FATES/RV -2006. LNCS, vol. 4262, pp. 40–54. Springer, Heidelberg (2006). https://doi.org/10.1007/11940197_3

    Chapter  Google Scholar 

  13. Levis, P., et al.: The emergence of a networking primitive in wireless sensor networks. Commun. ACM 51(7), 99–106 (2008)

    Article  Google Scholar 

  14. Levis, P., Clausen, T., Hui, J., Gnawali, O., Ko, J.: The trickle algorithm, request for comments: 6206. Technical report, Internet Engineering Task Force (IETF), March 2011

    Google Scholar 

  15. Levis, P., et al.: TinyOS: an operating system for sensor networks. In: Weber, W., Rabaey, J.M., Aarts, E. (eds.) Ambient Intelligence. Springer, Heidelberg (2005). https://doi.org/10.1007/3-540-27139-2_7

    Chapter  Google Scholar 

  16. Levis, P., Patel, N., Culler, D., Shenker, S.: Trickle: a self-regulating algorithm for code propagation and maintenance in wireless sensor networks. In: NSDI. USENIX Association (2004)

    Google Scholar 

  17. Arnaud, M., Bannour, B., Lapitre, A.: An illustrative use case of the DIVERSITY platform based on UML interaction scenarios. Electr. Notes Theor. Comput. Sci. 320, 21 (2016)

    Article  MathSciNet  Google Scholar 

  18. Shafiei, N., Mehlitz, P.C.: Extending JPF to verify distributed systems. ACM SIGSOFT Softw. Eng. Notes 39(1), 1–5 (2014)

    Article  Google Scholar 

  19. Nguyen, N.M.T., Bannour, B., Lapitre, A., Le Gall, P.: Behavioral models and scenario selection for testing IoT trickle-based lossy multicast networks. In ICST Workshops. IEEE (2019)

    Google Scholar 

  20. Dustmann, S.O., Sasnauskas, R., Wehrle K.: Symbolic system time in distributed systems testing. In: ICST. IEEE (2012)

    Google Scholar 

  21. Pasareanu, C.S., Rungta, N.: Symbolic pathfinder: symbolic execution of java bytecode. In: ASE. ACM (2010)

    Google Scholar 

  22. Sasnauskas, R.S., Dustmann, O., Kaminski, B.L., Wehrle, K., Weise, C., Kowalewski, S.: Scalable symbolic execution of distributed systems. In: ICDCS. IEEE (2011)

    Google Scholar 

  23. Sasnauskas, R., Kaiser, P., Jukic, R.L., Wehrle, K.: Integration testing of protocol implementations using symbolic distributed execution. In: ICNP. IEEE (2012)

    Google Scholar 

  24. Robinson-Mallett, C., Hierons, R.M., Liggesmeyer, P.: Achieving communication coverage in testing. ACM SIGSOFT Softw. Eng. Notes 31(6), 1–10 (2006)

    Article  Google Scholar 

  25. Khurshid, S., PĂsĂreanu, C.S., Visser, W.: Generalized symbolic execution for model checking and testing. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 553–568. Springer, Heidelberg (2005). https://doi.org/10.1007/3-540-36577-X_40

    Chapter  MATH  Google Scholar 

  26. Von Styp, S.C., Bohnenkamp, H., Schmaltz, J.: A conformance testing relation for symbolic timed automata. In: Formal Modeling and Analysis of Timed Systems - 8th International Conference, FORMATS Proceedings, pp. 243–255 (2010)

    Google Scholar 

  27. Andrade W., D. L. Machado P., Jéron T., Marchand H. Abstracting time and data for conformance testing of real-time systems. In: ICST Workshops. IEEE (2011)

    Google Scholar 

  28. Winter, T., et al.: Rpl: Ipv6 routing protocol for low-power and lossy networks, request for comments: 6550. Technical report, Cooper Power Systems and Cisco Systems and Stanford University (2012)

    Google Scholar 

  29. Woehrle, M., Bakhshi, R., Mousavi, M.R.: Mechanized extraction of topology anti-patterns in wireless networks. In: Derrick, J., Gnesi, S., Latella, D., Treharne, H. (eds.) IFM 2012. LNCS, vol. 7321, pp. 158–173. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-30729-4_12

    Chapter  Google Scholar 

  30. Zheng, M., Sun, J., Liu, Y., Dong, J.S., Gu, Yu.: Towards a model checker for NesC and wireless sensor networks. In: Qin, S., Qiu, Z. (eds.) ICFEM 2011. LNCS, vol. 6991, pp. 372–387. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-24559-6_26

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Boutheina Bannour .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Bannour, B., Lapitre, A., Gall, P.L. (2021). Deriving Interaction Scenarios for Timed Distributed Systems by Symbolic Execution. In: Bellatreche, L., Chernishev, G., Corral, A., Ouchani, S., Vain, J. (eds) Advances in Model and Data Engineering in the Digitalization Era. MEDI 2021. Communications in Computer and Information Science, vol 1481. Springer, Cham. https://doi.org/10.1007/978-3-030-87657-9_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-87657-9_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-87656-2

  • Online ISBN: 978-3-030-87657-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics