Automatic Steering of Behavioral Model Inference

Many testing and analysis techniques use finite state models to validate and verify the quality of software systems. Since the specification of such models is complex and time-consuming, researchers defined several techniques to extract finite state models from code and traces. Automatically generat...

Full description

Saved in:
Bibliographic Details
Main Authors: LO, David, Mariani, Leonardo, Pezze, Mauro
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2009
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/470
https://ink.library.smu.edu.sg/context/sis_research/article/1469/viewcontent/fse09.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-1469
record_format dspace
spelling sg-smu-ink.sis_research-14692011-11-02T09:33:41Z Automatic Steering of Behavioral Model Inference LO, David Mariani, Leonardo Pezze, Mauro Many testing and analysis techniques use finite state models to validate and verify the quality of software systems. Since the specification of such models is complex and time-consuming, researchers defined several techniques to extract finite state models from code and traces. Automatically generating models requires much less effort than designing them, and thus eases the verification and validation of large software systems. However, when models are inferred automatically, the precision of the mining process is critical. Behavioral models mined with imprecise processes can include many spurious behaviors, and can thus compromise the results of testing and analysis techniques that use those models.In this paper, we increase the precision of automata inferred from execution traces, by leveraging two learning techniques. We first mine execution traces to infer statistically significant temporal properties that capture relations between non consecutive and possibly distant events. We then incrementally refine a simple initial automaton by merging likely equivalent states. We identify equivalent states by analyzing set of consecutive events, and we use the inferred temporal properties to evaluate whether two equivalent states can be merged or not. We merge equivalent states only if the merging does violate any temporal property, since a merging that violates temporal properties is likely to introduce an imprecise generalization. Our generalization process that preserves temporal properties while merging states avoids breaking non-local relations, and thus solves one of the major cause of overgeneralized models. Thus, mined properties steer the learning of behavioral models. The technique is completely automated and generates an automaton that both accepts the input traces and satisfies the mined temporal properties.We evaluated our solution by comparing models inferred with and without checking mined temporal properties. Results show that our steering process can significantly improve precision without noticeable loss of recall. 2009-07-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/470 info:doi/10.1145/1595696.1595761 https://ink.library.smu.edu.sg/context/sis_research/article/1469/viewcontent/fse09.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University dynamic analysis mining automata temporal properties Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic dynamic analysis
mining automata
temporal properties
Software Engineering
spellingShingle dynamic analysis
mining automata
temporal properties
Software Engineering
LO, David
Mariani, Leonardo
Pezze, Mauro
Automatic Steering of Behavioral Model Inference
description Many testing and analysis techniques use finite state models to validate and verify the quality of software systems. Since the specification of such models is complex and time-consuming, researchers defined several techniques to extract finite state models from code and traces. Automatically generating models requires much less effort than designing them, and thus eases the verification and validation of large software systems. However, when models are inferred automatically, the precision of the mining process is critical. Behavioral models mined with imprecise processes can include many spurious behaviors, and can thus compromise the results of testing and analysis techniques that use those models.In this paper, we increase the precision of automata inferred from execution traces, by leveraging two learning techniques. We first mine execution traces to infer statistically significant temporal properties that capture relations between non consecutive and possibly distant events. We then incrementally refine a simple initial automaton by merging likely equivalent states. We identify equivalent states by analyzing set of consecutive events, and we use the inferred temporal properties to evaluate whether two equivalent states can be merged or not. We merge equivalent states only if the merging does violate any temporal property, since a merging that violates temporal properties is likely to introduce an imprecise generalization. Our generalization process that preserves temporal properties while merging states avoids breaking non-local relations, and thus solves one of the major cause of overgeneralized models. Thus, mined properties steer the learning of behavioral models. The technique is completely automated and generates an automaton that both accepts the input traces and satisfies the mined temporal properties.We evaluated our solution by comparing models inferred with and without checking mined temporal properties. Results show that our steering process can significantly improve precision without noticeable loss of recall.
format text
author LO, David
Mariani, Leonardo
Pezze, Mauro
author_facet LO, David
Mariani, Leonardo
Pezze, Mauro
author_sort LO, David
title Automatic Steering of Behavioral Model Inference
title_short Automatic Steering of Behavioral Model Inference
title_full Automatic Steering of Behavioral Model Inference
title_fullStr Automatic Steering of Behavioral Model Inference
title_full_unstemmed Automatic Steering of Behavioral Model Inference
title_sort automatic steering of behavioral model inference
publisher Institutional Knowledge at Singapore Management University
publishDate 2009
url https://ink.library.smu.edu.sg/sis_research/470
https://ink.library.smu.edu.sg/context/sis_research/article/1469/viewcontent/fse09.pdf
_version_ 1770570438325305344