Advertisement

Behavior-based model construction

  • Hardi HungarEmail author
  • Bernhard Steffen
Special section on verification, model checking, and abstract interpretation

Abstract

In this paper, we review behavior-based model construction from a point of view characterized by verification, model checking, and abstraction. It turns out that abstract interpretation is the key to scaling known learning techniques for practical applications, that model checking may serve as a teaching aid in the learning process underlying the model construction, and that there are various synergies with other validation and verification techniques. We will illustrate our discussion by means of a realistic telecommunications scenario, where the underlying system has grown over the last two decades, the available system documentation consists of not much more than user manuals and protocol standards, and the revision cycle times are extremely short. In this situation, behavior-based model construction provides a sound basis, e.g., for test-suite design and maintenance, test organization, and test evaluation.

Keywords

Automata learning Model checking Abstraction Testing 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Angluin D (1987) Learning regular sets from queries and counterexamples. Inf Comput 2(75):87–106MathSciNetCrossRefGoogle Scholar
  2. 2.
    Chow TS (1978) Testing software design modeled by finite-state machines. IEEE Trans Softw Eng 4(3):178–187CrossRefGoogle Scholar
  3. 3.
    Emerson EA (1990) Temporal and modal logic. In: van Leeuwen J (ed) Handbook of theoretical computer science. Elsevier, AmsterdamGoogle Scholar
  4. 4.
    Giacobazzi R, Ranzato F, Scozzari F (2000) Making abstract interpretations complete. J ACM 47(2):361–416MathSciNetCrossRefGoogle Scholar
  5. 5.
    Groce A, Peled D, Yannakakis M (2002) Adaptive model checking. In: Katoen J-P, Stevens P (eds) Proceedings 8th international conference for tools and algorithms for the construction and analysis of systems, Grenoble, France, April 8–12, 2002. Lecture notes in computer science, vol 2280. Springer, Berlin Heidelberg New York, pp 357–370Google Scholar
  6. 6.
    Hagerer A, Hungar H, Niese O, Steffen B (2002) Model generation by moderated regular extrapolation. In: Kutsche R, Weber H (eds) Proceedings of the 5th international conference on fundamental approaches to software engineering (FASE ’02), Grenoble, France, April 8–12, 2002. Lecture notes in computer science, vol 2306. Springer, Berlin Heidelberg New York, pp 80–95Google Scholar
  7. 7.
    Hagerer A, Margaria T, Niese O, Steffen B, Brune G, Ide H (2001) Efficient regression testing of CTI-systems: testing a complex call-center solution. Annual review of communication, vol 55. International Engineering Consortium (IEC), ChicagoGoogle Scholar
  8. 8.
    Hopcroft JE, Ullman JD (1979) Introduction to automata theory, languages, and computation. Addison-Wesley, Reading, MAGoogle Scholar
  9. 9.
    Hungar H, Niese O, Steffen B (2003) Domain-specific optimization in automata learning. In: Somenzi F, Hunt WA (eds) Proceedings of the 5th international conference on computer aided verification (CAV ’03), Boulder, Colorado, USA, July 8–12, 2003. Lecture notes in computer science, vol 2725. Springer, Berlin Heidelberg New York, pp 315–327Google Scholar
  10. 10.
    Hungar H, Steffen B (2003) Behaviour-based model construction. In: Zuck LD, Attie PC, Cortesi A, Mukhopadhyay S (eds) Proceedings of the 4th international conference on verification, model checking and abstract interpretation (VMCAI’03), New York, USA, Jan. 9–11, 2003. Lecture notes in computer science, vol 2575. Springer, Berlin Heidelberg New York, pp 5–19Google Scholar
  11. 11.
    Kearns MJ, Vazirani UV (1994) An introduction to computational learning theory. MIT Press, Cambridge, MAGoogle Scholar
  12. 12.
    Lang KJ, Pearlmutter BA, Price RA (1998) Results of the Abbadingo one DFA learning competition and a new evidence-driven state merging algorithm. In: Proceedings of the 4th international colloquium on grammatical inference – ICGI ’98. Lecture notes in artificial intelligence, vol 1433. Springer, Berlin Heidelberg New York, pp 1–12Google Scholar
  13. 13.
    Lee D, Yannakakis M (1996) Principles and methods of testing finite state machines – a survey. Proc IEEE 84:1090–1123CrossRefGoogle Scholar
  14. 14.
    Mazurkiewicz A (1987) Trace theory. In: Brauer W et al (eds) Petri nets, applications and relationship to other models of concurrency. Lecture notes in computer science, vol 255. Springer, Berlin Heidelberg New York, pp 279–324Google Scholar
  15. 15.
    Moore EF (1956) Gedanken-experiments on sequential machines. Ann Math Stud Automata Stud 34:129–153Google Scholar
  16. 16.
    Niese O, Steffen B, Margaria T, Hagerer A, Brune G, Ide H (2001) Library-based design and consistency checks of system-level industrial test cases. In: Hussmann H (ed) Proceedings of the 4th international conference on fundamental approaches to software engineering (FASE ’01), Genova, Italy, April 2–6, 2001. Lecture notes in computer science, vol 2029. Springer, Berlin Heidelberg New York, pp 233–248Google Scholar
  17. 17.
    Peled D, Vardi MY, Yannakakis M (1999) Black box checking. In: Wu J, Chanson ST, Gao Q (eds) Proceedings of the joint international conference on formal description techniques for distributed system and communication/protocols and protocol specification, testing and verification (FORTE/PSTV ’99), Beijing, China, Oct. 5–8, 1999. Kluwer, Dordrecht, pp 225–240Google Scholar
  18. 18.
    Steffen B, Jay B, Mendler M (1992) Compositional characterization of observable program properties. Int J Theor Comput Sci Appl 26(5):403–424MathSciNetGoogle Scholar
  19. 19.
    Valiant LG (1984) A theory of the learnable. Commun ACM 27(11):1134–1142CrossRefGoogle Scholar
  20. 20.
    Valmari A (1993) On-the-fly verification with stubborn sets. In: Proceedings of the 5th international conference on computer aided verification (CAV ’93), Elounda, Greece, June 28–July 1, 1993. Lecture notes in computer science, vol 697. Springer, Berlin Heidelberg New York, pp 397–408Google Scholar
  21. 21.
    Vasilevskii MP (1973) Failure diagnosis of automata. Kibernetika 4:98–108MathSciNetGoogle Scholar

Copyright information

© Springer-Verlag 2004

Authors and Affiliations

  1. 1.Computer Science DepartmentUniversity of DortmundGermany
  2. 2.R&D Division Safety-Critical SystemsOFFISOldenburgGermany

Personalised recommendations