Title :
Could We Infer Unordered API Usage Patterns Only Using the Library Source Code?
Author :
Saied, Mohamed Aymen ; Abdeen, Hani ; Benomar, Omar ; Sahraoui, Houari
Abstract :
Learning to use existing or new software libraries is a difficult task for software developers, which would impede their productivity. Much existing work has provided different techniques to mine API usage patterns from client programs in order to help developers on understanding and using existing libraries. However, considering only client programs to identify API usage patterns is a strong constraint as the client programs source code is not always available or the clients themselves do not exist yet for newly released APIs. In this paper, we propose a technique for mining Non Client-based Usage Patterns (NCBUP miner). We detect unordered API usage patterns as distinct groups of API methods that are structurally and semantically related and thus may contribute together to the implementation of a particular functionality for potential client programs. We evaluated our technique through four APIs. The obtained results are comparable to those of client-based approaches in terms of usage-patterns cohesion.
Keywords :
Clustering algorithms; Context; Java; Matrix decomposition; Measurement; Security; Semantics; API Documentation; API Usage; Software Clustering; Usage Pattern;
Conference_Titel :
Program Comprehension (ICPC), 2015 IEEE 23rd International Conference on
Conference_Location :
Florence, Italy
DOI :
10.1109/ICPC.2015.16