[FSE2024] |
|
Understanding and Detecting Annotation-Induced Faults of Static Analyzers |
| Huaien Zhang, Yu Pei, Shuyun Liang, Shin Hwei Tan |
| (One-line Abstract) We present a study of annotation-induced faults of static analyzers and a tool AnnaTester that automatically tests static analyzers for annotation-induced faults. |
[ISSTA2024] |
|
Characterizing and Detecting Program Representation Faults of Static Analysis Frameworks |
| Huaien Zhang, Yu Pei, Shuyun Liang, Zezhong Xing, Shin Hwei Tan |
| (One-line Abstract) We present SAScope, an automated testing framework named based on metamorphic and differential testing for detecting program representation faults of static analysis frameworks. |
[ISSTA2024] |
|
UPBEAT: Test Input Checks of Q# Quantum Libraries |
| Tianmin Hu, Guixin Ye, Zhanyong Tang, Shin Hwei Tan, Huanting Wang, Meng Li, Zheng Wang |
| (One-line Abstract) We present UPBEAT, a fuzzing tool to generate random test cases for bugs related to input checking in Q# libraries. |
[ISSTA2024] |
|
LPR: Large Language Models-Aided Program Reduction |
| Mengxiao Zhang, Yongqiang Tian, Zhenyang Xu, Yiwen Dong, Shin Hwei Tan, Chengnian Sun |
| (One-line Abstract) We present LPR, the first LLMs-aided technique leveraging LLMs to perform language-specific program reduction for multiple languages. |
[SANER2024] |
|
Investigating and Detecting Silent Bugs in PyTorch Programs (Won Distinguished Paper Award!) |
| Shuo Hong, Hailong Sun, Xiang Gao, Shin Hwei Tan |
| (One-line Abstract) We present the first study of silent bugs in PyTorch Programs |
[ICSE2024] |
|
Combining Structured Static Code Information and Dynamic Symbolic Traces for Software Vulnerability Prediction |
| Huanting Wang, Zhanyong Tang, Shin Hwei Tan, Jie Wang, Yuzhe Liu, Hejun Fang, Chunwei Xia, Zheng Wang |
| (One-line Abstract) We present Concoction, the first DL system to learn program presentations by combining static source code information and dynamic program execution traces. |
[FSE2023] |
|
Statfier: Automated Testing of Static Analyzers via Semantic-preserving Program Transformations |
| Huaien Zhang, Yu Pei, Junjie Chen, Shin Hwei Tan |
| (One-line Abstract) We present Statfier, a heuristic-based automated testing approach for static analyzers that generates program variants via semantic-preserving transformations and detects inconsistencies between the original program and variants. |
[FSE2023] |
|
Towards Automated Detection of Unethical Behavior in Open-source Software Projects |
| Hsu Myat Win, Haibo Wang, Shin Hwei Tan |
| (One-line Abstract) We present the first study of unethical behavior in OSS projects from the stakeholders’ perspective, and a tool for automatically detecting these behavior via SWRL rules. |
[FSE2023] |
|
A Generative and Mutational Approach for Synthesizing Bug-exposing Test Cases to Guide Compiler Fuzzing |
| Guixin Ye,Tianmin Hu,Zhanyong Tang,Zhenye Fan,Shin Hwei Tan,Bo Zhang,Wenxiang Qian,Zheng Wang |
| (One-line Abstract) We present COMFUZZ, a focused compiler fuzzing framework. COMFUZZ aims to improve compiler fuzzing efficiency by focusing on testing components and language features that are likely to trigger compiler bugs. |
[ISSTA2023] |
|
Concept-Based Automated Grading of CS-1 Programming Assignments |
| Zhiyu Fan, Shin Hwei Tan, Abhik Roychoudhury |
| (One-line Abstract) We proposed the notion of a concept graph (an abstracted control flow graph) for grading and providing feedback for programming assignments. |
[PLDI2023] |
|
Recursive State Machine Guided Graph Folding for Context-Free Language Reachability |
| Yuxiang Lei, Yulei Sui, Shin Hwei Tan, Qirun Zhang |
| (One-line Abstract) We proposed graph folding technique to improve the scalability of CFL-reachability by reducing the input graph size. |
[ICSE2023] |
|
Automated Repair of Program from Large Language Models |
| Zhiyu Fan, Xiang Gao, Martin Mirchev, Abhik Roychoudhury, Shin Hwei Tan |
| (One-line Abstract) We present (1) a systematic study of whether automated program repair (APR) techniques can fix the incorrect solutions produced by large language models (Codex), (2) the first study that evaluates the newly released Codex edit
mode as an APR tool, and (3) propose LMDefects, a new dataset that contains defects made in auto-generated programs by Codex. |
[SANER2023] |
|
Efficient Pattern-based Static Analysis Approach via Regular-Expression Rules |
| Xiaowen Zhang, Ying Zhou (co-first author), Shin Hwei Tan |
| (One-line Abstract) We present Codegex, an efficient pattern-based static analysis approach that uses regular expression with several strategies to extract more information from program texts (syntax and type
information) to analyze partial and complete code quickly without parsing code into AST. |
[Journal of Software: Evolution and Process 2023] |
|
CrossFix: Resolution of GitHub issues via similar bugs recommendation |
| Shin Hwei Tan, Ziqiang Li, Lu Yan |
| (One-line Abstract) We propose CrossFix, a tool that automatically suggests relevant GitHub issues based on an open GitHub issue |
[JSS2022] |
|
Event-Aware Precise Dynamic Slicing for Automatic Debugging of Android Applications |
| Hsu Myat Win, Shin Hwei Tan (corresponding author), Yulei Sui |
| (One-line Abstract) We present ESDroid, an Event-aware dynamic slicing technique that combines segment-based delta debugging and backward dynamic slicing to produce precise slices for Android apps. |
[ISSTA2021] |
|
Automated Patch Backporting in Linux (Experience Paper) |
| Ridwan Shariffdeen, Xiang Gao, Gregory J. Duck, Shin Hwei Tan, Julia Lawall, Abhik Roychoudhury |
| (One-line Abstract) Our empirical study shows that around 8% of all commits submitted to Linux mainline are backported to older versions, but often more than one month elapses before the backport is available. Hence, we propose a patch backporting technique that canautomatically transfer patches from the mainline version of Linux into older stable versions. |
[PLDI2021] |
|
Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing |
| Guixin Ye, Zhanyong Tang, Shin Hwei Tan, Dingyi Fang, Xiaoyang Sun, Lizhong Bian, Songfang Huang, Haibo Wang, Zheng Wang |
| (One-line Abstract) We present COMFORT, a new compiler fuzzing framework for detecting JS engine bugs and behaviors that deviate from the ECMAScript standard. COMFORT leverages the recent advance in deep learning-based language models to automatically generate JS test code. |
|
[ICSE2021-JSEET] (Winner of the World Teacher Day Challenge co-organized by GitHub) |
|
GitHub-OSS Fixit: Fixing bugs at scale in a Software Engineering Course |
| Shin Hwei Tan, Chunfeng Hu, Ziqiang Li, Xiaowen Zhang, Ying Zhou |
| (One-line Abstract) We present GitHub-OSS Fixit, a team-based course project where we taught students how to apply Software Engineering concepts in fixing bugs in open-source projects in GitHub. |
[TIFS2020] |
|
Combining Graph-Based Learning With Automated Data Collection for Code Vulnerability Detection |
| Huanting Wang , Guixin Ye , Zhanyong Tang , Shin Hwei Tan, Songfang Huang,
Dingyi Fang, Yansong Feng, Lizhong Bian, Zheng Wang |
| (One-line Abstract) We present FUNDED, a novel learning framework for building vulnerability detection models that leverages the advances in graph neural networks (GNNs) to develop a novel
graph-based learning method to capture and reason about the program’s control, data, and call dependencies. |
[TOSEM2020, Journal First ICSE 2021] |
|
Automated Patch Transplantation |
| Ridwan Salihin Shariffdeen, Shin Hwei Tan*, Mingyuan Gao, Abhik Roychoudhury |
| (One-line Abstract) We present PatchWeave, a technique that automatically extracts patches and transplants them to another target program that fails on the same test case |
[ICSE2020] |
|
Collaborative Bug Finding for Android Apps |
| Shin Hwei Tan, Ziqiang Li |
| (One-line Abstract) We propose collaborative bug finding, a novel form of testing that exploits the
similarities between Android apps for crafting test scenarios specialized for a given app under test. |
[ICSE2020 Poster] |
|
Bugine: a bug report recommendation system for Android apps |
| Ziqiang Li, Shin Hwei Tan* |
| (One-line Abstract) We present Bugine, a new bug recommendation system that automatically selects relevant bug reports from other applications that have similar bugs. |
[ASE2019] |
|
Automating CUDA Synchronization via Program Transformation |
| Mingyuan Wu, Lingming Zhang, Cong Liu, Shin Hwei Tan, Yuqun Zhang |
| (One-line Abstract) We propose AuCS, the first general framework to automate synchronization for CUDA kernel functions. |
[ICSE2019] |
|
Could I Have a Stack Trace to Examine the Dependency Conflict Issue? |
| Ying Wang, Ming Wen, Rongxin Wu, Zhenwei Liu, Shin Hwei Tan, Zhiliang Zhu, Hai Yu and Shing-Chi Cheung |
| (One-line Abstract) We propose RIDDLE, an automated approach that generates tests and collects crashing stack traces for projects subject to risk of dependency conflicts. |
|
41st International Conference on Software Engineering (ICSE), 2019..
|
[TOSEM 2018,ICSE2019 Journal First] |
|
Test-Equivalence Analysis for Automatic Patch Generation |
| Sergey Mechtaev, Xiang Gao, Shin Hwei Tan, Abhik Roychoudhury |
| (One-line Abstract) We propose two test-equivalence relations based on runtime values and dependencies, respectively, and present an algorithm that performs on-the-fly partitioning of patches into test-equivalence classes. |
|
ACM Transactions on Software Engineering and Methodology, 2018.
|
[ASE 2018] |
|
Android Testing via Synthetic Symbolic Execution |
| Xiang Gao, Shin Hwei Tan, Zhen Dong, Abhik Roychoudhury |
| (One-line Abstract) We propose a dynamic symbolic execution engine for Android apps, without any manual modeling of execution environment |
|
33rd Automated Software Engineering (ASE), 2018.
|
[ICSE 2018] |
|
Repairing crashes in Android apps |
| Shin Hwei Tan, Zhen Dong, Xiang Gao, Abhik Roychoudhury |
| (One-line Abstract) We propose Droix, the first novel Android repair system that could automatically fix crashes in Android apps based on only one single UI sequence as test input. |
|
40th International Conference on Software Engineering (ICSE), 2018.
|
[GI@ICSE 2018] |
|
A spoonful of DevOps helps the GI go down |
| Benoit Baudry, Nicolas Harrand, Eric Schulte, Chris Timperley, Shin Hwei Tan, Marija Selakovic, Emamurho Ugherughe |
| (One-line Abstract) We discuss why we believe that DevOps offers an excellent technical context for easing the adoption of GI techniques by software developers. |
|
4th International Genetic Improvement Workshop
|
[EmSE, Journal First ICSE 2018] |
|
A correlation study between automated program repair and test-suite metrics |
| Jooyong Yi, Shin Hwei Tan, Sergey Mechtaev, Marcel Boehme, Abhik Roychoudhury |
| (One-line Abstract) A study that answers the question "Can traditional test-suite metrics proposed for the
purpose of software testing also be used for the purpose of automated program repair?". |
|
Empirical Software Engineering, Journal First
|
[FSE 2017] |
|
A Feasibility Study of Using Automated Program Repair for Introductory Programming Assignments |
| Jooyong Yi, Umair Z. Ahmed, Amey Karkare, Shin Hwei Tan, Abhik Roychoudhury |
| (One-line Abstract) The first study that investigates the feasibility of applying automated program repair techniques for fixing programming assignments. |
|
ACM SIGSOFT International Symposium on Foundations of Software Engineering
|
[ICSE Poster 2017] |
|
Codeflaws: A Programming Competition
Benchmark for Evaluating
Automated Program Repair Tools |
| Shin Hwei Tan, Jooyong Yi, Yulis, Sergey Mechtaev, Abhik Roychoudhury |
| (One-line Abstract) Codeflaws allows objective evaluation of program repair tools across well-defined defect classes. |
|
|
[FSE 2016] |
|
Anti-patterns in Search-based Program Repair |
| Shin Hwei Tan, Hiroaki Yoshida, Mukul Prasad and Abhik Roychoudhury |
| (One-line Abstract) Enforcing anti-patterns in repair tools produces repairs faster, localizes better, and deletes less. |
|
24th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE), 2016. Acceptance Rate: 27% (74/273)
|
[ICSE 2015] |
|
Relifix: Automated Repair of Software Regressions |
| Shin Hwei Tan, Abhik Roychoudhury |
| (One-line Abstract) First automated repair tool for automatic fixing of software regressions using a novel set of contextual operators from two program versions. |
| 37th International Conference on Software Engineering (ICSE), 2016. Acceptance Rate: 18.5% (84/452)
|
[TOSEM 2015] |
|
Software Change Contracts |
| Jooyong Yi, Dawei Qi, Shin Hwei Tan, Abhik Roychoudhury |
| (One-line Abstract) Change contracts
formally specify the intended effect of program changes. |
| ACM Transactions on Software Engineering and Methodology (TOSEM), 2015
|
[ISSTA 2013] |
|
Expressing and Checking Intended Changes via Software Change Contracts. |
| Jooyong Yi, Dawei Qi, Shin Hwei Tan, Abhik Roychoudhury |
| (One-line Abstract) Change contracts
formally specify the intended effect of program changes. |
| International Symposium on Software Testing and Analysis, (ISSTA), 2013. Acceptance rate: 32/124, 25.8%
|
[ICST 2012] |
|
@tComment: Testing Javadoc Comments to Detect Comment-Code Inconsistencies |
| Shin Hwei Tan, Darko Marinov, Lin Tan, Gary T. Leaven |
| (One-line Abstract) Novel approach that automatically generate tests that check for inconsistencies between Javadoc comments and Java source code. |
| Fifth International Conference on Software Testing, Verification and Validation, (ICST), 2012. Acceptance Rate: 26.9% (39/145).
|
[ICSE 2011] |
|
ReAssert: A Tool for Repairing Broken Unit Tests |
| Brett Daniel, Tihomir Gvero, Vilas Jagannath, Johnston Jiaa, Damion Mitchell, Jurand Nogiec, Shin Hwei Tan, Darko Marinov |
| (One-line Abstract) A tool (Eclipse-plugin) that automatically fixes broken unit tests. |
| 33rd International Conference on Software Engineering, (ICSE Demo), 2011.
|
[Master Thesis] |
|
@tComment: Testing Javadoc Comments to Detect Comment-Code Inconsistencies |
| Shin Hwei Tan |
| Thesis submitted for the degree of Master of Science (MS), Department of Computer Science, University of Illinois at Urbana-Champaign in 2012. Won David J. Kuck Outstanding MS Thesis Award!
|