Write a Blog >>
SPLASH 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
Fri 27 Oct 2017 13:52 - 14:15 at Regency A - Usability and Deadlock Chair(s): Jonathan Aldrich

Identifier names are often used by developers to convey additional information about the meaning of a program over and above the semantics of the programming language itself. We present an algorithm that uses this information to detect argument selection defects in which the programmer has chosen the wrong argument to a method call in Java programs. We evaluate our algorithm at our company on 200 million lines of internal code and 10 million lines of predominantly open-source external code and find defects even in large mature projects such as OpenJDK, ASM and the MySQL JDBC. The precision and recall of the algorithm vary depending on a sensitivity threshold. Higher thresholds increase precision, giving a true positive rate of 85%, reporting 459 true positives and 78 false positives. Lower thresholds increase recall but lower the true positive rate, reporting 2,060 true positives and 1,207 false positives. We show that this is an order of magnitude improvement on previous approaches. By analysing the defects found, we are able to quantify best practice advice for API design and show that the probability of an argument selection defect increases markedly when methods have more than five arguments.

Fri 27 Oct
Times are displayed in time zone: Tijuana, Baja California change

13:30 - 15:00
Usability and DeadlockOOPSLA at Regency A
Chair(s): Jonathan AldrichCarnegie Mellon University
13:30
22m
Talk
Deadlock Avoidance in Parallel Programs with Futures: Why Parallel Tasks Should Not Wait for Strangers
OOPSLA
Tiago CogumbreiroRice University, Rishi SurendranRice University, USA, Francisco MartinsLaSIGE, University of Lisbon, Vivek SarkarRice University, USA, Vasco T. VasconcelosUniversity of Lisbon, Portugal, Max GrossmanRice University, USA
DOI
13:52
22m
Talk
Detecting Argument Selection Defects
OOPSLA
Andrew RiceUniversity of Cambridge, UK, Edward AftandilianGoogle, Ciera JaspanGoogle, Emily JohnstonGoogle, Michael PradelTU Darmstadt, Yulissa Arroyo-ParedesColumbia University, USA
DOI
14:15
22m
Talk
How Type Errors Were Fixed and What Students Did?
OOPSLA
Baijun WuUniversity of Louisiana at Lafayette, USA, Sheng ChenULL Lafayette
DOI
14:37
22m
Talk
Learning User Friendly Type-Error Messages
OOPSLA
Baijun WuUniversity of Louisiana at Lafayette, USA, John Peter CamporaULL Lafayette, Sheng ChenULL Lafayette
DOI