Changes between Version 7 and Version 8 of CoreLibrary/UsageBasedTesting
- Timestamp:
- 10/04/12 16:46:30 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
CoreLibrary/UsageBasedTesting
v7 v8 13 13 * '''Higher-order Markov Model (HOMM)''': In HOMMs the probability of the next event only depends on the ''k'' observed events, where ''k'' is a positive integer known as the ''Markov order'' of the HOMM. Using a GUI application as example, this means that the next click of a user only depends on the last ''k'' clicks. All clicks that are at least ''k+1'' clicks ago do not impact the probability. The advantages and drawbacks of the HOMMs are the opposite of the FOMMs. The complexity is exponential in ''k'' and can easily get out of hand and the HOMMs are less flexible because they remember ''k'' events. On the other hand, if ''k'' clicks are remembered, it is possible to model pre-conditions that require up to ''k'' events to model. 14 14 * '''Prediction by Partial Match Model (PPMM)''': PPMMs are a combination of Markov models with different Markov orders. In principle, a ''k_max'' order PPMM is a HOMM with Markov order ''k_max''. However, the PPMMs have an opt-out probability ''escape'', with which a lower Markov order is used. This is bounded by a minimal Markov order ''k_min'' for which we set the opt-out probability to zero. The PPMMs, therefore, combine the advantages and drawbacks of the FOMMs and HOMMs in terms of modelling of pre-conditions and flexibility. 15 * '''Random Deterministic Finite Automata (RDFA)''': The RDFAs are a subtype of the FOMMs. The ystructure is the same as a FOMM, the difference lies in the calculation of the probabilities. In an RDFA, all possibly following symbols have the same probability.15 * '''Random Deterministic Finite Automata (RDFA)''': The RDFAs are a subtype of the FOMMs. Their structure is the same as a FOMM, the difference lies in the calculation of the probabilities. In an RDFA, all possibly following symbols have the same probability. 16 16 17 17 The usage profiles are trained from a set of sequences. These sequences are obtained from observing a System Under Test (SUT). From an implementation point of view, all usage profiles implement a common interface '''{{{IStochasticProcess}}}'''. Furthermore, a skeletal implementation for usage profiles that can be based on a [http://en.wikipedia.org/wiki/Trie trie] is provided.