Please wait a minute...
Frontiers of Information Technology & Electronic Engineering

ISSN 2095-9184

Front. Inform. Technol. Electron. Eng    2018, Vol. 19 Issue (6) : 737-754    https://doi.org/10.1631/FITEE.1601783
Orginal Article
An oversampling approach for mining program specifications
Deng CHEN1(), Yan-duo ZHANG1, Wei WEI1, Rong-cun WANG2, Xiao-lin LI1, Wei LIU1, Shi-xun WANG3, Rui ZHU1
1. Hubei Provincial Key Laboratory of Intelligent Robot, Wuhan Institute of Technology, Wuhan 430205, China
2. School of Computer Science and Technology, China University of Mining and Technology, Xuzhou 221116, China
3. School of Computer and Information Engineering, Henan Normal University, Xinxiang 453007, China
 Download: PDF(1033 KB)  
 Export: BibTeX | EndNote | Reference Manager | ProCite | RefWorks
Abstract

Automatic protocol mining is a promising approach for inferring accurate and complete API protocols. However, just as with any data-mining technique, this approach requires sufficient training data (object usage scenarios). Existing approaches resolve the problem by analyzing more programs, which may cause significant runtime overhead. In this paper, we propose an inheritance-based oversampling approach for object usage scenarios (OUSs). Our technique is based on the inheritance relationship in object-oriented programs. Given an object-oriented program p, generally, the OUSs that can be collected from a run of p are not more than the objects used during the run. With our technique, a maximum of n times more OUSs can be achieved, where n is the average number of super-classes of all general OUSs. To investigate the effect of our technique, we implement it in our previous prototype tool, ISpecMiner, and use the tool to mine protocols from several real-world programs. Experimental results show that our technique can collect 1.95 times more OUSs than general approaches. Additionally, accurate and complete API protocols are more likely to be achieved. Furthermore, our technique can mine API protocols for classes never even used in programs, which are valuable for validating software architectures, program documentation, and understanding. Although our technique will introduce some runtime overhead, it is trivial and acceptable.

Keywords Object usage scenario      API protocol mining      Program temporal specification mining      Oversampling     
Corresponding Author(s): Deng CHEN   
Issue Date: 30 August 2018
 Cite this article:   
Deng CHEN,Yan-duo ZHANG,Wei WEI, et al. An oversampling approach for mining program specifications[J]. Front. Inform. Technol. Electron. Eng, 2018, 19(6): 737-754.
 URL:  
https://academic.hep.com.cn/fitee/EN/10.1631/FITEE.1601783
https://academic.hep.com.cn/fitee/EN/Y2018/V19/I6/737
[1] FITEE-0737-18003-DC_suppl_1 Download
[2] FITEE-0737-18003-DC_suppl_2 Download
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed