Write a Blog >>
ICSE 2022
Sun 8 - Fri 27 May 2022
Wed 11 May 2022 04:20 - 04:25 at ICSE room 3-even hours - Recommender Systems 1 Chair(s): Alessio Ferrari
Wed 11 May 2022 13:20 - 13:25 at ICSE room 5-odd hours - Recommender Systems 2 Chair(s): Gabriele Bavota

Shell commands are widely used for accomplishing tasks, such as network management and file manipulation, in Unix and Linux platforms. There are a large number of shell commands available. For example, 50,000+ commands are documented in the Ubuntu Manual Pages (MPs). Quite often, programmers feel frustrated when searching and orchestrating appropriate shell commands to accomplish specific tasks. To address the challenge, the shell programming community calls for easy-to-use tutorials for shell commands. However, existing tutorials (e.g., TLDR) only cover a limited number of frequently used commands for shell beginners and provide limited support for users to search for commands by a task.

In this paper, we propose an approach, namely ShellFusion, to automatically generate comprehensive answers (including relevant shell commands, scripts, and explanations) for shell programming tasks. Our approach integrates knowledge mined from Q&A posts in Stack Exchange, Ubuntu MPs, and TLDR tutorials. For a query that describes a shell programming task, ShellFusion recommends a list of relevant shell commands. Specifically, ShellFusion first retrieves the top-n Q&A posts with questions that are similar to the query. Then, it detects shell commands with options (e.g., ls -t) in the accepted answers of the retrieved posts. Next, ShellFusion filters out irrelevant commands with descriptions in MP and TLDR that share little semantics with the query. ShellFusion further ranks the candidate commands based on their similarities with the query and the retrieved posts. To help users understand how to achieve the task using a recommended command, ShellFusion generates a comprehensive answer for the query by synthesizing knowledge from Q&A posts, MPs, and TLDR. Our evaluation of 434 shell programming tasks shows that ShellFusion significantly outperforms Magnum (the state-of-the-art natural language-to-Bash command approach) by at least 179.6% in terms of the MRR@K and MAP@K metrics. A user study conducted with 20 shell programmers further shows that ShellFusion can help users address programming tasks more efficiently and accurately, compared with Magnum and DeepAns (a recent answer recommendation baseline).

Wed 11 May

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

04:00 - 05:00
04:00
5m
Talk
Predicting the Objective and Priority of Issue Reports in Software Repositories
Journal-First Papers
Maliheh Izadi Sharif University of Technology, Kiana Akbari Sharif University of technology, Abbas Heydarnoori Sharif University of Technology
Link to publication DOI Pre-print Media Attached
04:05
5m
Talk
Code Reviewer Recommendation in Tencent: Practice, Challenge, and Direction
SEIP - Software Engineering in Practice
Qiuyuan Chen Zhejiang University, Dezhen Kong Zhejiang University, Lingfeng Bao Zhejiang University, Chenxing Sun Tencent, Xin Xia Huawei Software Engineering Application Technology Lab, Shanping Li Zhejiang University
Pre-print Media Attached
04:10
5m
Talk
Using Deep Learning to Generate Complete Log Statements
Technical Track
Antonio Mastropaolo Università della Svizzera italiana, Luca Pascarella Università della Svizzera italiana (USI), Gabriele Bavota Software Institute, USI Università della Svizzera italiana
Pre-print Media Attached
04:15
5m
Talk
Modeling Review History for Reviewer Recommendation: A Hypergraph Approach
Technical Track
Guoping Rong Nanjing University, YiFan Zhang Nanjing University, Lanxin Yang Nanjing University, Fuli Zhang Nanjing University, Hongyu Kuang Nanjing University, He Zhang Nanjing University
Pre-print Media Attached
04:20
5m
Talk
ShellFusion: Answer Generation for Shell Programming Tasks via Knowledge Fusion
Technical Track
Neng Zhang School of Software Engineering, Sun Yat-sen University, Chao Liu Chongqing University, Xin Xia Huawei Software Engineering Application Technology Lab, Christoph Treude University of Melbourne, Ying Zou Queen's University, Kingston, Ontario, David Lo Singapore Management University, Zibin Zheng School of Data and Computer Science, Sun Yat-sen University
DOI Pre-print Media Attached
04:25
5m
Talk
CLEAR: Contrastive Learning for API Recommendation
Technical Track
Moshi Wei York University, Nima Shiri Harzevili York University, Yuchao Huang Institute of Software Chinese Academy of Sciences, Junjie Wang Institute of Software at Chinese Academy of Sciences, Song Wang York University
Pre-print Media Attached
13:00 - 14:00
Recommender Systems 2Technical Track / NIER - New Ideas and Emerging Results / SEIP - Software Engineering in Practice at ICSE room 5-odd hours
Chair(s): Gabriele Bavota Software Institute, USI Università della Svizzera italiana
13:00
5m
Talk
Better Modeling the Programming World with Code Concept Graphs-augmented Multi-modal Learning
NIER - New Ideas and Emerging Results
Martin Weyssow DIRO, Université de Montréal, Houari Sahraoui Université de Montréal, Bang Liu DIRO & Mila, Université de Montréal
Pre-print Media Attached
13:05
5m
Talk
Code Reviewer Recommendation in Tencent: Practice, Challenge, and Direction
SEIP - Software Engineering in Practice
Qiuyuan Chen Zhejiang University, Dezhen Kong Zhejiang University, Lingfeng Bao Zhejiang University, Chenxing Sun Tencent, Xin Xia Huawei Software Engineering Application Technology Lab, Shanping Li Zhejiang University
Pre-print Media Attached
13:10
5m
Talk
Recommending Good First Issues in GitHub OSS Projects
Technical Track
Wenxin Xiao School of Computer Science, Peking University, Hao He Peking University, Weiwei Xu School of Computer Science and Technology, Soochow University, Xin Tan Beihang University, China, Jinhao Dong Peking University, Minghui Zhou Peking University, China
Pre-print Media Attached
13:15
5m
Talk
Modeling Review History for Reviewer Recommendation: A Hypergraph Approach
Technical Track
Guoping Rong Nanjing University, YiFan Zhang Nanjing University, Lanxin Yang Nanjing University, Fuli Zhang Nanjing University, Hongyu Kuang Nanjing University, He Zhang Nanjing University
Pre-print Media Attached
13:20
5m
Talk
ShellFusion: Answer Generation for Shell Programming Tasks via Knowledge Fusion
Technical Track
Neng Zhang School of Software Engineering, Sun Yat-sen University, Chao Liu Chongqing University, Xin Xia Huawei Software Engineering Application Technology Lab, Christoph Treude University of Melbourne, Ying Zou Queen's University, Kingston, Ontario, David Lo Singapore Management University, Zibin Zheng School of Data and Computer Science, Sun Yat-sen University
DOI Pre-print Media Attached
13:25
5m
Talk
Using Deep Learning to Generate Complete Log Statements
Technical Track
Antonio Mastropaolo Università della Svizzera italiana, Luca Pascarella Università della Svizzera italiana (USI), Gabriele Bavota Software Institute, USI Università della Svizzera italiana
Pre-print Media Attached

Information for Participants
Wed 11 May 2022 04:00 - 05:00 at ICSE room 3-even hours - Recommender Systems 1 Chair(s): Alessio Ferrari
Info for room ICSE room 3-even hours:

Click here to go to the room on Midspace

Wed 11 May 2022 13:00 - 14:00 at ICSE room 5-odd hours - Recommender Systems 2 Chair(s): Gabriele Bavota
Info for room ICSE room 5-odd hours:

Click here to go to the room on Midspace