Test-based model generation by classical automata learning is very expensive. It requires an impractically large number of queries to the system, each of which must be implemented as a system-level test case. Key in the tractability of observation-based model generation are powerful optimizations exploiting different kinds of expert knowledge in order to drastically reduce the number of required queries, and thus the testing effort. In this paper, we present a thorough experimental analysis of the second-order effects between such optimizations in order to maximize their combined impact.
MotivationValidating complex heterogeneous systems escapes established formal approaches, both for system testing and for design verification. Characteristic here in fact is the lack of (formal or semiformal) operational models for many of the hardware and software systems constitute such a scenario. Typical application domains are telecommunication systems and systems on a chip, but also EAI (enterprise application integration) scenarios, which are large software integration projects suffering from an almost complete lack of usable models for the components' behaviors (think, e.g., of an SAP installation with all the customization modules!). This situation is not only due to a lack of care in the production and maintenance of up-to-date models of all the system components. Rather, there is a policy of hiding intellectual prop- T. Margaria (B) erty, since the operational models of the commercial products would reveal too much about protected techniques and designs. Thus the lack of models and the need to "discover" them postproduction will accompany system-level design and testing for a long time to come.Particularly typical in practice are systems that, additionally, include different commercial components that come from various producers and are made available as products, without any model. Our direct industrial experience stems from the area of Computer Telephony Integrated (CTI) systems. In the past we developed a piece of automated testing equipment (ITE) [14,18] that has been used for industrial system-level testing of over 200 COTS applications that interoperate with a family of midrange telecommunication switches. Characteristic here was the absence of any form of (formal or semiformal) operational model for the hardware and software systems constitute a CTI scenario, which are therefore seen and treated as black boxes. In particular, there is no basis for test coverage considerations, focused test suite enhancement, or systematic maintenance support.Fortunately one can observe that the models one needs to "discover" in order to profitably use the components are far smaller than the full model of the implementation: they are much more abstract, since they provide information about only the interface behavior exposed to the environment. In this respect, complexity experts often talk of cognitive complexity (i.e., what a user needs to know in order to use a product), which is much smaller than the technical or intensiona...