ABSTRACT
Automated inference of API specifications is crucial for scaling various automated software engineering tasks such as bug-detection or bug-fixing. Prior research has therefore focused on techniques to improve the quality, diversity and availability of specifications. Consequently, efficient ways of retrieving the appropriate specifications for a particular task from a specification database will be necessary in future. In our research, we analyse projects using information retrieval techniques (tf-idf), to determine which specifications are characteristic for a project. Our hypothesis is that this knowledge can be exploited to significantly optimize the search process, by focussing on projects which are similar in terms of their characteristic API usages. Initial results indicate that a project-specificity based selection of specifications from different sources can produce candidate sets featuring a larger variety of interesting specifications than support-based, project-agnostic heuristics.
- M. Bruch, M. Monperrus, and M. Mezini. 2009. Learning from Examples to Improve Code Completion Systems (ESEC/FSE). ACM. Google ScholarDigital Library
- G. Frantzeskou, E. Stamatatos, et al. 2006. Source code author identification based on n-gram author profiles (AIAI). IFIP.Google Scholar
- M. Gabel and Z. Su. 2012. Testing Mined Specifications (FSE). ACM. Google ScholarDigital Library
- S. Haiduc, J. Aponte, and A. Marcus. 2010. Supporting Program Comprehension with Source Code Summarization (ICSE). ACM. Google ScholarDigital Library
- Tien-Duy. B. Le and David. Lo. 2015. Beyond support and confidence: Exploring interestingness measures for rule-based specification mining (SANER). IEEE.Google Scholar
- C. Le Goues and W. Weimer. 2009. Specification mining with few false positives (TACAS). Springer. Google ScholarDigital Library
- B. Liang, P. Bian, et al. 2016. AntMiner: Mining More Bugs by Reducing Noise Interference (ICSE). IEEE. Google ScholarDigital Library
- H. Rajan, Tien N. Nguyen, et al. 2015. Inferring Behavioral Specifications from Large-scale Repositories by Leveraging Collective Intelligence (ICSE). IEEE. Google ScholarDigital Library
- M. P. Robillard et al. 2013. Automated API Property Inference Techniques. IEEE Transactions on Software Engineering (2013). Google ScholarDigital Library
- R. Sindhgatta. 2006. Using an Information Retrieval System to Retrieve Source Code Samples (ICSE). ACM. Google ScholarDigital Library
- X. Yan, J. Han, and R. Afshar. 2003. CloSpan: Mining: Closed sequential patterns in large datasets (SDM). SIAM.Google Scholar
Recommendations
Protective Interface Specifications
Abstract.The interface specification of a procedure describes the procedure's behaviour using pre- and postconditions. These pre- and postconditions are written using various functions. If some of these functions are partial, or underspecified, then the ...
Towards the Composition of Specifications in Event-B
The development of a system can start with the creation of a specification. Following this viewpoint, we claim that often a specification can be constructed from the combination of specifications which can be seen as composition. Event-B is a formal ...
Comments