Perracotta: mining temporal API rules from imperfect traces
By Jinlin Yang, David Evans, Deepali Bhardwaj, Thirumalesh Bhat, Manuvir Das. International Conference on Software Engineering, 2006
428 citations recorded by the source corpus.
Subfields: Information Systems, Software
View Paper: https://www.semanticscholar.org/paper/98614fb574f1592b0dae3b45ca9f13506d14dd86
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Information Systems
- Tien Nhut Nguyen
- Charles Sutton
- Premkumar T. Devanbu
- Zhendong Su
- Anh Tuan Nguyen
- Hoan Anh Nguyen
- Tao Xie
- Miltiadis Allamanis
In Software
- Tien Nhut Nguyen
- Zhendong Su
- Charles Sutton
- Premkumar T. Devanbu
- Anh Tuan Nguyen
- Hoan Anh Nguyen
- Mark Gabel
- Tao Xie
Citations in the corpus
- MAPO: Mining and Recommending API Usage Patterns (2009, methodology): “To mine these frequent method calls, some approaches [27] [34] use existing sequence mining techniques [3], and other approaches [1] [10] [35] [39] adopt various customized techniques.”
- Merlin: specification inference for explicit information flow problems (2009, methodology): “Fora generaloverviewof speci.cation mining techniques, the reader is referred to Perracotta [34], DynaMine [16], andWeimer et al. [31].”
- DynaMine: finding common error patterns by mining software revision histories (2005, methodology): “Perracota uses a runtime analysis to propose a set of temporal properties [ 48 ] in a manner similar to Daikon [17].”
- Graph-based mining of multiple object usage patterns (2009, background): “[33] find behavioral patterns that fit into user-provided templates.”
- Dynamic inference of static types for ruby (2011, neutral): “amples, Daikon discovers likely program invariants from dynamic runs [9]; DySy uses symbolic execution to infer Daikon-like invariants [8]; and Perracotta discovers temporal properties of programs [32].”
- Detecting object usage anomalies (2007, methodology): “TheP ERRACOTTA tool of Yang and Evans [36] also mines temporal rules of program behavior.”
- Javert: fully automatic mining of general temporal properties from dynamic traces (2008, methodology): “Other algorithms learn multiple specifications over an arbitrary alphabet [11,14,29,32].”
- Mining API patterns as partial orders from source code: from usage scenarios to specifications (2007, background): “This mechanism is based on an assumption [4, 8, 27] that a client generally uses an API or a set of APIs correctly most of the times.”
- Automatic generation of software behavioral models (2008, methodology): “…software behavior are used to dynamically detect anomalous behaviors [30] [12], statically and dynamically check compatibility between software components [19] [18], verify protocols [2], generate test cases [13] [17], capture unexpected event sequences [34] and verify program properties [8] [20].”
- Prospex: Protocol Specification Extraction (2009, background): “Other works [56], [57] only infer properties conforming to simple patterns, such as alternation between two events.”