Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering 2014
DOI: 10.1145/2635868.2635890
|View full text |Cite
|
Sign up to set email alerts
|

Automatic mining of specifications from invocation traces and method invariants

Abstract: Software library documentation often describes the APIs of individual methods, but does not capture the intended protocols and method interactions. This can cause developers to misuse the library by invoking its methods out of sequence, while also restricting effective runtime detection of protocol violations and automated verification of the client code. Specification mining, if accurate, can help mitigate these problems. There are two classes of specification mining techniques: one that observes library exec… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
62
1

Year Published

2014
2014
2023
2023

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 61 publications
(63 citation statements)
references
References 62 publications
0
62
1
Order By: Relevance
“…Combining state machine inference with data constraints Recently, Krka et al [30] Krka et al's idea of inferring a set of 'global' rules that pertain to the full set of program traces is very similar to what happens in our approach. We infer all of the data models at once, in advance of program inference.…”
Section: Related Workmentioning
confidence: 88%
See 2 more Smart Citations
“…Combining state machine inference with data constraints Recently, Krka et al [30] Krka et al's idea of inferring a set of 'global' rules that pertain to the full set of program traces is very similar to what happens in our approach. We infer all of the data models at once, in advance of program inference.…”
Section: Related Workmentioning
confidence: 88%
“…These had been used previously for their experiments on FSM inference [30]. The traces were provided in the Daikon format.…”
Section: Trace Collectionmentioning
confidence: 99%
See 1 more Smart Citation
“…To address this issue, execution trace analysis techniques are often used for some purposes, such as program comprehension [1] and specification mining [2]- [5]. For aiding in program comprehension, visualizing object interactions in execution traces as reverse-engineered sequence diagrams is a promising approach [1].…”
Section: Introductionmentioning
confidence: 99%
“…This paper focuses on helping developers understand how a system behaves and how it utilizes resources. Dynamic behavioral specification mining, e.g., [10,11,19,22,28,29,35,43] tackles the problem of inferring a behavioral model that summarizes a set of observed executions in a concise form. Such models have been used to improve developers' understanding of systems from logs [10], to generate test-cases [16] and test oracles [37], and to help make sense of complex distributed systems [9,30].…”
Section: Introductionmentioning
confidence: 99%