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.
Similar content being viewed by others
References
Angluin D (1987) Learning regular sets from queries and counterexamples. Inf Comput 2(75):87–106
Chow TS (1978) Testing software design modeled by finite-state machines. IEEE Trans Softw Eng 4(3):178–187
Emerson EA (1990) Temporal and modal logic. In: van Leeuwen J (ed) Handbook of theoretical computer science. Elsevier, Amsterdam
Giacobazzi R, Ranzato F, Scozzari F (2000) Making abstract interpretations complete. J ACM 47(2):361–416
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–370
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–95
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), Chicago
Hopcroft JE, Ullman JD (1979) Introduction to automata theory, languages, and computation. Addison-Wesley, Reading, MA
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–327
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–19
Kearns MJ, Vazirani UV (1994) An introduction to computational learning theory. MIT Press, Cambridge, MA
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–12
Lee D, Yannakakis M (1996) Principles and methods of testing finite state machines – a survey. Proc IEEE 84:1090–1123
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–324
Moore EF (1956) Gedanken-experiments on sequential machines. Ann Math Stud Automata Stud 34:129–153
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–248
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–240
Steffen B, Jay B, Mendler M (1992) Compositional characterization of observable program properties. Int J Theor Comput Sci Appl 26(5):403–424
Valiant LG (1984) A theory of the learnable. Commun ACM 27(11):1134–1142
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–408
Vasilevskii MP (1973) Failure diagnosis of automata. Kibernetika 4:98–108
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Hungar, H., Steffen, B. Behavior-based model construction. Int J Softw Tools Technol Transfer 6, 4–14 (2004). https://doi.org/10.1007/s10009-004-0139-8
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-004-0139-8