230 likes | 344 Vues
This work presents a method for generating checking sequences aimed at detecting non-equivalent implementations of finite state machines (FSMs). Through state distinguishing subsequences, the proposed approach offers a refined means of state recognition within FSMs in the fault domain. The method enhances previous techniques by using a combination of distinguishing sequences and unique input/output sequences to optimize the verification process. Experimental results are provided, showcasing the effectiveness of the proposed methods compared to existing techniques, paving the way for further refinements in FSM testing.
E N D
Checking Sequence Generation Using State Distinguishing Subsequences Adenilso Simão*, Alexandre Petrenko Centre de recherche informatique de Montreal (CRIM) *On a leave from the Universidade de São Paulo A-MOST’09 @ Denver, April 1st, 2009
Outline • Problem statement • Previous work • Contribution of this work • Example • Conclusion
Problem Statement • Given a specification FSM with n states • Deterministic, Minimal, Complete • Given a black box implementation FSM in the fault domain • All FSMs with at most n states • Generate a checking sequence • To detect all non-equivalent implementations
Key Issue • How to recognize states in the implementation • State distinguishing subsequences • Same input, but with different outputs • Different distinguishing capacities
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Hennie, 1965 • Seminal paper • Problem setting • Efficient method • Ad hoc • Distinguishing sequence
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Kohavi and Kohavi, 1968 • Improves (Hennie, 1965) • Variable length distinguishing sequence • Prefix of a sistinguishing sequence
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Gonenc, 1970 • A method for checking sequence generation • Graph based • Distinguishing sequences • Formalizes (Hennie, 1965)
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Boute, 1974 • Distinguishing sets • Also known as adaptive distinguishing sequence • Generalizes (Hennie, 1965)
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Aho et al., 1991 • Uses Unique Input/Output Sequences (UIOs) • Incomplete fault coverage • Optimization approach • Rural Chinese Postman Problem
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Ural et al., 1997 • Builds on (Aho et al. 1991) • Improves (Gonenc, 1970) • State Recognition and Transition Verification • Uses distinguishing sequences
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Hierons and Ural, 2002 • Improves (Ural et al. 1997) • Uses distinguishing sequences
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Serdar and Kuo-Chung, 2002 • Improves (Gonenc, 1970) • Uses distinguishing sequences and UIOs
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Chen el al. 2005 • Improves (Ural et al., 1997) • Avoids redundant transition verification
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Yalcin and Yenigun, 2006 • Improves (Ural et al., 1997) • Uses distinguishing sequences and UIOs • Hierons and Ural, 2006 • Improves (Hierons and Ural, 2002) • Uses distinguishing sequences
SK02 YY06 C+05 1960 1970 1980 1990 2000 2010 B74 H65 G70 KK68 SP08 U+97 HU06 HU02 A+91 SP09 Previous Work • Simao and Petrenko, 2008 (SP08) • Different approach for state recognition • Confirmed sets (of sequences) • Local optimization • Experimental results • Uses distinguishing sets
Contribution of this work • New possibilities for shortening checking sequences • Output-confirmed sequence • Convergence/divergence • Sequence confirmation and transition verification using confirmed sets • Even if distinguishing sequence or UIO is not applied in a given state
Contribution of this work • Generation Method • Uses various distinguishing sequences • Distinguishing sets • UIOs • State identifier in a subset of states • Local optimization of transfer sequences • No global optimization • Overlapping
Example • Hierons and Ural, 2006 • Checking sequence of length 64 • Chen et al., 2005 • Checking sequence of length 44 • Simao and Petrenko, 2008 • Checking sequence of length 43 • Proposed method • Checking sequence of length 36
Other Examples • Serdar and Kuo-chung, 2002 • Checking sequence of length 80 • Our method: 36 • Yalcin and Yenigun, 2006 • Checking sequence of length 26 • Our method: 13
Future work • To integrate the proposed approach with other methods • To conduct experimental comparison • To find balance between local and global optimization
Thank you! Questions? adenilso@icmc.usp.br, petrenko@crim.ca