Title :
TzuYu: Learning stateful typestates
Author :
Hao Xiao ; Jun Sun ; Yang Liu ; Shang-Wei Lin ; Chengnian Sun
Author_Institution :
Sch. of Comput. Eng., Nanyang Technol. Univ., Singapore, Singapore
Abstract :
Behavioral models are useful for various software engineering tasks. They are, however, often missing in practice. Thus, specification mining was proposed to tackle this problem. Existing work either focuses on learning simple behavioral models such as finite-state automata, or relies on techniques (e.g., symbolic execution) to infer finite-state machines equipped with data states, referred to as stateful typestates. The former is often inadequate as finite-state automata lack expressiveness in capturing behaviors of data-rich programs, whereas the latter is often not scalable. In this work, we propose a fully automated approach to learn stateful typestates by extending the classic active learning process to generate transition guards (i.e., propositions on data states). The proposed approach has been implemented in a tool called TzuYu and evaluated against a number of Java classes. The evaluation results show that TzuYu is capable of learning correct stateful typestates more efficiently.
Keywords :
Java; data mining; formal specification; learning (artificial intelligence); Java classes; TzuYu; behavioral model learning; classic active learning process; data state propositions; data-rich programs; fully automated approach; software engineering tasks; specification mining; stateful typestate learning; transition guards; Automata; Concrete; Educational institutions; Java; Learning automata; Support vector machines; Testing;
Conference_Titel :
Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on
Conference_Location :
Silicon Valley, CA
DOI :
10.1109/ASE.2013.6693101