TY - GEN
T1 - Static specification mining using automata-based abstractions
AU - Shoham, Sharon
AU - Yahav, Eran
AU - Fink, Stephen
AU - Pistoia, Marco
PY - 2007
Y1 - 2007
N2 - We present a novel approach to client-side mining of temporal API specifications based on static analysis. Specifically, we present an interprocedural analysis over a combined domain that abstracts both aliasing and event sequences for individual objects. The analysis uses a new family of automata-based abstractions to represent unbounded event sequences, designed to disambiguate distinct usage patterns and merge similar usage patterns. Additionally, our approach includes an algorithm that summarizes abstract traces based on automata clusters, and effectively rules out spurious behaviors. We show experimental results mining specifications from a number of Java clients and APIs. The results indicate that effective static analysis for client-side mining requires fairly precise treatment of aliasing and abstract event sequences. Based on the results, we conclude that static client-side specification mining shows promise as a complement or alternative to dynamic approaches.
AB - We present a novel approach to client-side mining of temporal API specifications based on static analysis. Specifically, we present an interprocedural analysis over a combined domain that abstracts both aliasing and event sequences for individual objects. The analysis uses a new family of automata-based abstractions to represent unbounded event sequences, designed to disambiguate distinct usage patterns and merge similar usage patterns. Additionally, our approach includes an algorithm that summarizes abstract traces based on automata clusters, and effectively rules out spurious behaviors. We show experimental results mining specifications from a number of Java clients and APIs. The results indicate that effective static analysis for client-side mining requires fairly precise treatment of aliasing and abstract event sequences. Based on the results, we conclude that static client-side specification mining shows promise as a complement or alternative to dynamic approaches.
KW - Abstract interpretation
KW - Specification mining
KW - Static analysis
KW - Typestate
UR - https://www.scopus.com/pages/publications/34548219459
U2 - 10.1145/1273463.1273487
DO - 10.1145/1273463.1273487
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:34548219459
SN - 159593734X
SN - 9781595937346
T3 - 2007 ACM International Symposium on Software Testing and Analysis, ISSTA'07
SP - 174
EP - 184
BT - Proceedings of the 2007 ACM International Symposium on Software Testing and Analysis, ISSTA'07
T2 - 2007 ACM International Symposium on Software Testing and Analysis, ISSTA'07 and PADTAD-V Workshop
Y2 - 9 July 2007 through 12 July 2007
ER -