Write a Blog >>
ICSE 2022
Sun 8 - Fri 27 May 2022
Tue 10 May 2022 03:00 - 03:15 at ICSE Demo room 2 - Tools and Environments 1 Chair(s): Junjie Wang
Thu 26 May 2022 14:10 - 14:30 at Room 304+305 - Demos 3 Chair(s): Wei Yang

Developers often change the types of program elements. Such a refactoring frequently involves updating not only the type of the element itself, but also the API of all type-dependent references in the code, thus it is tedious and time-consuming. Despite type changes being more frequent than renamings, just a few current IDE tools provide partially-automated support only for a small set of hard-coded types. Researchers have recently proposed a data-driven approach to inferring API rewrite rules for type change patterns in Java using code commits history. In this paper, we build upon these recent advances and introduce IntelliTC — a tool to perform Java type change refactoring. We implemented it as a plugin for IntelliJ IDEA, a popular Java IDE developed by JetBrains. We present 3 different ways of providing support for such a refactoring from the standpoint of the user experience: Classic mode, Suggested Refactoring, and Inspection mode. To evaluate these modalities of using IntelliTC, we surveyed 15 experienced software developers. They positively rated the usefulness of the tool.

The source code and distribution of the plugin are available on GitHub: https://github.com/JetBrains-Research/data-driven-type-migration. A demonstration video is on YouTube: https://youtu.be/pdcfvADA1PY.

Tue 10 May

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

03:00 - 04:00
Tools and Environments 1DEMO - Demonstrations at ICSE Demo room 2
Chair(s): Junjie Wang Institute of Software at Chinese Academy of Sciences
03:00
15m
Demonstration
IntelliTC: Automating Type Changes in IntelliJ IDEA
DEMO - Demonstrations
Oleg Smirnov JetBrains Research, Saint Petersburg State University, Ameya Ketkar Oregon State University, USA, Timofey Bryksin JetBrains Research; HSE University, Nikolaos Tsantalis Concordia University, Danny Dig University of Colorado Boulder, USA
Pre-print Media Attached
03:15
15m
Demonstration
Pynguin: Automated Unit Test Generation for Python
DEMO - Demonstrations
Stephan Lukasczyk University of Passau, Gordon Fraser University of Passau
DOI Pre-print Media Attached
03:30
15m
Demonstration
TauPad: Test Data Augmentation of Point Clouds by Adversarial Mutation
DEMO - Demonstrations
Guandi Liu Nanjing University, Jiawei Liu Nanjing University, Quanjun Zhang Nanjing University, Chunrong Fang Nanjing University, Xufan Zhang Nanjing University

Thu 26 May

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

13:30 - 15:00
Demos 3DEMO - Demonstrations at Room 304+305
Chair(s): Wei Yang University of Texas at Dallas
13:30
20m
Demonstration
UIPDroid: Unrooted Dynamic Monitor of Android App UIs for Fine-Grained Permission Control
DEMO - Demonstrations
Mulin Duan Singapore Management University, Lingxiao Jiang Singapore Management University, Lwin Khin Shar Singapore Management University, Debin Gao Singapore Management University
Pre-print Media Attached
13:50
20m
Demonstration
CIDER: Concept-based Interactive Design Recovery
DEMO - Demonstrations
Hongzhou Fang Drexel University, Yuanfang Cai Drexel University, Rick Kazman University of Hawai‘i at Mānoa, Jason Lefever Drexel University
14:10
20m
Demonstration
IntelliTC: Automating Type Changes in IntelliJ IDEA
DEMO - Demonstrations
Oleg Smirnov JetBrains Research, Saint Petersburg State University, Ameya Ketkar Oregon State University, USA, Timofey Bryksin JetBrains Research; HSE University, Nikolaos Tsantalis Concordia University, Danny Dig University of Colorado Boulder, USA
Pre-print Media Attached