Skip to main content

Data Flow Analysis and Testing of Abstract State Machines

  • Conference paper
Abstract State Machines, B and Z (ABZ 2008)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5238))

Included in the following conference series:

Abstract

This paper introduces an approach to apply data flow testing techniques to Abstract State Machines specifications. Since traditional data flow coverage criteria are strictly based on the mapping between a program and its flow graph, they cannot be directly applied to ASMs. In this context we are interested in tracing the flow of data between states in ASM runs as opposed to between nodes in a program’s flow graph. Therefore, we revise the classical concepts in data flow analysis and define them on two levels: the syntactic (rule) level, and the computational (run) level. We also specify a family of ad hoc data flow coverage criteria and introduce a model checking-based approach to generate automatically test cases satisfying a given set of coverage criteria from ASM models.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. ASMETA: a tool set for the ASM, http://sourceforge.net/projects/asmeta

  2. Black, P.E., Okun, V., Yesha, Y.: Mutation operators for specifications. Automated Software Engineering, 81 (2000)

    Google Scholar 

  3. Börger, E., Stärk, R.F.: Abstract State Machines. A Method for High-Level System Design and Analysis. Springer, Heidelberg (2003)

    Google Scholar 

  4. Briand, L.C., Labiche, Y., Lin, Q.: Improving statechart testing criteria using data flow information. In: ISSRE, pp. 95–104 (2005)

    Google Scholar 

  5. Campbell, C., Veanes, M.: State Exploration with Multiple State Groupings. In: Abstract State Machines, pp. 119–130 (2005)

    Google Scholar 

  6. Castillo, G.D.: The ASM Workbench - A Tool Environment for Computer-Aided Analysis and Validation of Abstract State Machine Models Tool Demonstration. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 578–581. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  7. Castillo, G.D., Winter, K.: Model Checking Support for the ASM High-Level Language. In: Schwartzbach, M.I., Graf, S. (eds.) TACAS 2000. LNCS, vol. 1785, pp. 331–346. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  8. Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 8(2), 244–263 (1986)

    Article  MATH  Google Scholar 

  9. Clarke, E.M., Grumberg, O., McMillan, K.L., Zhao, X.: Efficient Generation of Counterexamples and Witnesses in Symbolic Model Checking. In: DAC, pp. 427–432 (1995)

    Google Scholar 

  10. Clarke, L.A., Podgurski, A., Richardson, D.J., Zeil, S.J.: A formal evaluation of data flow path selection criteria. IEEE Trans. Software Eng. 15(11), 1318–1332 (1989)

    Article  Google Scholar 

  11. Coverlipse, http://coverlipse.sourceforge.net/index.php

  12. de Vries, R.G., Tretmans, J.: On-the-fly conformance testing using spin. STTT 2(4), 382–393 (2000)

    MATH  Google Scholar 

  13. Farahbod, R., Gervasi, V., Glässer, U.: CoreASM: An Extensible ASM Execution Engine. Fundam. Inform. 77(1-2), 71–103 (2007)

    MATH  Google Scholar 

  14. Farahbod, R., Glsser, U., Ma, G.: Model Checking CoreASM Specifications

    Google Scholar 

  15. Frankl, P.G., Weyuker, E.J.: An applicable family of data flow testing criteria. IEEE Trans. Software Eng. 14(10), 1483–1498 (1988)

    Article  MathSciNet  Google Scholar 

  16. Frankl, P.G., Weyuker, E.J.: A formal analysis of the fault-detecting ability of testing methods. IEEE Trans. Software Eng. 19(3), 202–213 (1993)

    Article  Google Scholar 

  17. Gargantini, A., Heitmeyer, C.L.: Using model checking to generate tests from requirements specifications. In: ESEC/SIGSOFT FSE, pp. 146–162 (1999)

    Google Scholar 

  18. Gargantini, A., Riccobene, E.: ASM-Based Testing: Coverage Criteria and Automatic Test Sequence. J. UCS 7(11), 1050–1067 (2001)

    Google Scholar 

  19. Gargantini, A., Riccobene, E., Rinzivillo, S.: Using Spin to Generate Tests from ASM Specifications. Abstract State Machines, 263–277 (2003)

    Google Scholar 

  20. Grieskamp, W., Gurevich, Y., Schulte, W., Veanes, M.: Generating finite state machines from abstract state machines. In: ISSTA, pp. 112–122 (2002)

    Google Scholar 

  21. Gurevich, Y.: Specification and validation methods (1995)

    Google Scholar 

  22. Harrold, M.J., Rothermel, G.: Performing data flow testing on classes. In: SIGSOFT 1994: Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering, pp. 154–163. ACM, New York (1994)

    Chapter  Google Scholar 

  23. Harrold, M.J., Soffa, M.L.: Interprocedual data flow testing. In: TAV3: Proceedings of the ACM SIGSOFT 1989 third symposium on Software testing, analysis, and verification, pp. 158–167. ACM, New York (1989)

    Chapter  Google Scholar 

  24. Holzmann, G.J.: The model checker SPIN. Software Engineering 23(5), 279–295 (1997)

    Article  MathSciNet  Google Scholar 

  25. Hong, H.S., Cha, S.D., Lee, I., Sokolsky, O., Ural, H.: Data Flow Testing as Model Checking. In: ICSE, pp. 232–243 (2003)

    Google Scholar 

  26. Hong, H.S., Kim, Y.G., Cha, S.D., Bae, D.-H., Ural, H.: A test sequence selection method for statecharts. Softw. Test, Verif. Reliab. 10(4), 203–227 (2000)

    Article  Google Scholar 

  27. Jéron, T., Morel, P.: Test generation derived from model-checking. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 108–121. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  28. Laski, J.W., Korel, B.: A data flow oriented program testing strategy. IEEE Trans. Software Eng. 9(3), 347–354 (1983)

    Article  Google Scholar 

  29. McMillan, K.L.: Symbolic Model Checking. Kluwer Academic Publishers, Dordrecht (1993)

    MATH  Google Scholar 

  30. Nowack, A.: Slicing abstract state machines. In: Zimmermann, W., Thalheim, B. (eds.) ASM 2004. LNCS, vol. 3052, pp. 186–201. Springer, Heidelberg (2004)

    Google Scholar 

  31. Ntafos, S.C.: On required element testing. IEEE Trans. Software Eng. 10(6), 795–803 (1984)

    Article  Google Scholar 

  32. Rapps, S., Weyuker, E.J.: Selecting software test data using data flow information. IEEE Trans. Software Eng. 11(4), 367–375 (1985)

    Article  Google Scholar 

  33. Weyuker, E.J.: More experience with data flow testing. IEEE Trans. Software Eng. 19(9), 912–919 (1993)

    Article  MathSciNet  Google Scholar 

  34. Winter, K.: Model Checking for Abstract State Machines. J. UCS 3(5), 689–701 (1997)

    MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Egon Börger Michael Butler Jonathan P. Bowen Paul Boca

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cavarra, A. (2008). Data Flow Analysis and Testing of Abstract State Machines. In: Börger, E., Butler, M., Bowen, J.P., Boca, P. (eds) Abstract State Machines, B and Z. ABZ 2008. Lecture Notes in Computer Science, vol 5238. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87603-8_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87603-8_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87602-1

  • Online ISBN: 978-3-540-87603-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics