DocumentCode
1994502
Title
Synthesizing intensional behavior models by graph transformation
Author
Ghezzi, Carlo ; Mocci, Andrea ; Monga, Mattia
Author_Institution
DeepSE Group at DEI, Politec. di Milano, Milan
fYear
2009
fDate
16-24 May 2009
Firstpage
430
Lastpage
440
Abstract
This paper describes an approach (SPY) to recovering the specification of a software component from the observation of its run-time behavior. It focuses on components that behave as data abstractions. Components are assumed to be black boxes that do not allow any implementation inspection. The inferred description may help understand what the component does when no formal specification is available. SPY works in two main stages. First, it builds a deterministic finite-state machine that models the partial behavior of instances of the data abstraction. This is then generalized via graph transformation rules. The rules can generate a possibly infinite number of behavior models, which generalize the description of the data abstraction under an assumption of ldquoregularityrdquo with respect to the observed behavior. The rules can be viewed as a likely specification of the data abstraction. We illustrate how SPY works on relevant examples and we compare it with competing methods.
Keywords
data structures; formal specification; graph grammars; data abstraction; formal specification; graph transformation; intensional behavior models; software component specification; Containers; Contracts; Documentation; Formal specifications; Inspection; Java; Runtime; Service oriented architecture; Web services; Writing;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on
Conference_Location
Vancouver, BC
ISSN
0270-5257
Print_ISBN
978-1-4244-3453-4
Type
conf
DOI
10.1109/ICSE.2009.5070542
Filename
5070542
Link To Document