We gratefully acknowledge support from
the Simons Foundation and member institutions.
Full-text links:


Current browse context:


Change to browse by:


References & Citations

DBLP - CS Bibliography


(what is this?)
CiteULike logo BibSonomy logo Mendeley logo del.icio.us logo Digg logo Reddit logo ScienceWISE logo

Computer Science > Software Engineering

Title: A Systematic Evaluation of Static API-Misuse Detectors

Abstract: Application Programming Interfaces (APIs) often have usage constraints, such as restrictions on call order or call conditions. API misuses, i.e., violations of these constraints, may lead to software crashes, bugs, and vulnerabilities. Though researchers developed many API-misuse detectors over the last two decades, recent studies show that API misuses are still prevalent. Therefore, we need to understand the capabilities and limitations of existing detectors in order to advance the state of the art. In this paper, we present the first-ever qualitative and quantitative evaluation that compares static API-misuse detectors along the same dimensions, and with original author validation. To accomplish this, we develop MUC, a classification of API misuses, and MUBenchPipe, an automated benchmark for detector comparison, on top of our misuse dataset, MUBench. Our results show that the capabilities of existing detectors vary greatly and that existing detectors, though capable of detecting misuses, suffer from extremely low precision and recall. A systematic root-cause analysis reveals that, most importantly, detectors need to go beyond the naive assumption that a deviation from the most-frequent usage corresponds to a misuse and need to obtain additional usage examples to train their models. We present possible directions towards more-powerful API-misuse detectors.
Comments: Accepted for publication in IEEE Transactions on Software Engineering, March 12, 2018 Artifact page: this http URL 19 pages; 1 figure; 9 tables; 6 listings
Subjects: Software Engineering (cs.SE)
Cite as: arXiv:1712.00242 [cs.SE]
  (or arXiv:1712.00242v3 [cs.SE] for this version)

Submission history

From: Sven Amann [view email]
[v1] Fri, 1 Dec 2017 09:14:30 GMT (457kb,D)
[v2] Tue, 6 Feb 2018 08:58:36 GMT (620kb,D)
[v3] Tue, 13 Mar 2018 08:27:39 GMT (620kb,D)

Link back to: arXiv, form interface, contact.