Blogs (1) >>
ICSE 2019
Sat 25 - Fri 31 May 2019 Montreal, QC, Canada
Wed 29 May 2019 16:00 - 16:20 at St-Paul / Ste-Catherine - Program Comprehension and Reuse Chair(s): Baishakhi Ray

Modern search techniques either cannot efficiently incorporate human feedback to refine search results or to express structural or semantic properties of desired code. The key insight of our interactive code search technique ALICE is that user feedback could be actively incorporated to allow users to easily express and refine search queries. We design a query language to model the structure and semantics of code as logic facts. Given a code example with user annotations, ALICE automatically extracts a logic query from features that are tagged as important. Users can refine the search query by labeling one or more examples as desired (positive) or irrelevant (negative). ALICE then infers a new logic query that separates the positives from negative examples via active inductive logic programming. Our comprehensive and systematic simulation experiment shows that ALICE removes a large number of false positives quickly by actively incorporating user feedback. Its search algorithm is also robust to noise and user labeling mistakes. Our choice of leveraging both positive and negative examples and the nested containment structure of selected code is effective in refining search queries. Compared with an existing technique, Critics, ALICE does not require a user to manually construct a search pattern and yet achieves comparable precision and recall with fewer search iterations on average. A case study with users shows that ALICE is easy to use and helps express complex code patterns.

Wed 29 May

Displayed time zone: Eastern Time (US & Canada) change

16:00 - 18:00
Program Comprehension and ReusePapers / Journal-First Papers / Technical Track at St-Paul / Ste-Catherine
Chair(s): Baishakhi Ray Columbia University, New York
16:00
20m
Talk
Active Inductive Logic Programming for Code SearchArtifacts AvailableArtifacts Evaluated ReusableTechnical Track
Technical Track
Aishwarya Sivaraman University of California, Los Angeles, Tianyi Zhang University of California, Los Angeles, Guy Van den Broeck University of California, Los Angeles, Miryung Kim University of California, Los Angeles
Pre-print
16:20
10m
Talk
The State of Empirical Evaluation in Static Feature LocationJournal-First
Journal-First Papers
Abdul Razzaq , Asanka Wasala University of Limerick, Chris Exton University of Limerick, Jim Buckley Lero - The Irish Software Research Centre and University of Limerick
16:30
10m
Talk
Automatic and accurate expansion of abbreviations in parametersJournal-First
Journal-First Papers
Yanjie Jiang Beijing Institute of Technology, Hui Liu Beijing Institute of Technology, Jiaqi Zhu Beijing Institute of Technology, Lu Zhang Peking University
16:40
20m
Talk
NL2Type: Inferring JavaScript Function Types from Natural Language InformationArtifacts AvailableArtifacts Evaluated ReusableTechnical Track
Technical Track
Rabee Sohail Malik TU Darmstadt, Jibesh Patra Technical University of Darmstadt, Michael Pradel University of Stuttgart
Pre-print Media Attached File Attached
17:00
20m
Talk
Analyzing and Supporting Adaptation of Online Code ExamplesArtifacts AvailableArtifacts Evaluated ReusableTechnical TrackIndustry Program
Technical Track
Tianyi Zhang University of California, Los Angeles, Di Yang University of California at Irvine, USA, Crista Lopes , Miryung Kim University of California, Los Angeles
Pre-print
17:20
20m
Talk
DockerizeMe: Automatic Inference of Environment Dependencies for Python Code SnippetsArtifacts AvailableTechnical Track
Technical Track
Eric Horton North Carolina State University, Chris Parnin NCSU
17:40
20m
Talk
Discussion Period
Papers