Title :
Reverse Engineering State Machines by Interactive Grammar Inference
Author :
Walkinshaw, Neil ; Bogdanov, Kirill ; Holcombe, Mike ; Salahuddin, Sarah
Author_Institution :
Regent Court, Sheffield
Abstract :
Finite state machine-derived specifications such as X-machines, extended finite state machines and abstract state machines, are an established means to model software behaviour. They allow for comprehensive testing of an implementation in terms of its intended behaviour. In practice however they are rarely generated and maintained during software development, hence their benefits can rarely be exploited. We address this problem by using an interactive grammar inference technique to infer the underlying state machine representation of an existing software system. The approach is interactive because it generates queries to the user as it constructs a hypothesis machine, which can be interpreted as system tests. This paper describes (1) how an existing grammar inference technique (QSM) can be used to reverse-engineer state-based models of software from execution traces at a developer-defined level of abstraction and (2) how the QSM technique can be improved for a better balance between the number of tests it proposes and the accuracy of the machine it derives. The technique has been implemented, which has enabled us to present a small case study of its use with respect to a real software system, along with some preliminary performance results.
Keywords :
finite state machines; formal specification; grammars; program verification; reverse engineering; X-machines; abstract state machines; extended finite state machines; finite state machine-derived specifications; hypothesis machine; interactive grammar inference; reverse engineering state machines; software behaviour modeling; Automata; Automatic testing; Electronic mail; Programming; Reverse engineering; Software engineering; Software maintenance; Software systems; Software testing; System testing;
Conference_Titel :
Reverse Engineering, 2007. WCRE 2007. 14th Working Conference on
Conference_Location :
Vancouver, BC
Print_ISBN :
978-0-7695-3034-5
DOI :
10.1109/WCRE.2007.45