Ridwan Shariffdeen

Dr. Ridwan Shariffdeen

CEO & Co-Founder, AutoCodeRover
Research Fellow, School of Computing, National University of Singapore

Email shariffdeenr@acm.org
Location
Programming Languages & Software Engineering Lab (COM3 02-20)
ORCID iD iconORCID   scopus iconScopus scopus iconDBLP ResearchR   Web of Science   Scholar  
Twitter   LinkedIn   Github  

I am a Research Fellow at Secure Software Research Group, Department of Computer Science at School of Computing, National University of Singapore, where I am advised by Abhik Roychoudhury. The current focus of my research is on automated program repair, software security and software engineering automation. I obtained my PhD in Computer Science from the same group, during which my focus was on repairing software vulnerabilities using program synthesis, code transplantation and concolic repair.

Previously, I received a Bachelor of Science(BSc) Honors (Hons) degree from the Computer Science & Engineering Department at University of Moratuwa, Sri Lanka. During my bachelor degree I researched on automated solutions to proactively scale cloud resources. I've also worked as a Senior Software Engineer (Cloud/Security) at OrangeHRM on HR Tech where my focus was on System Security and Automation Technology.

Thanks to the support of my research mentors, I was fortunate to begin working on research early in my undergraduate career. I’m happy to help ambitious undergraduate students interested in software engineering get started with research, please feel free to email me!

Recent and Ongoing Activities
Recent updates

16/12/2024 Our paper on supply chain protection using program analysis has been accepted to ICSE-SEIP News
27/11/2024 I have given a talk on Autonomous Program Improvement at AI Wednesday organized by GovTechSG News
21/11/2024 Our paper on vulnerability repair using concolic execution has been accepted to TOSEM News
28/10/2024 A paper on static analysis driven program repair has been accepted to TOSEM
16/09/2024 Secured NUS DeGap Funding (co-PI) for our enterprise efforts on AutoCodeRover
02/03/2024 Recognized as a distinguished reviewer by ACM TOSEM
14/02/2024 I will be co-chairing the software engineering and cloud computing track at MerCon’24
08/02/2024 I have given a talk on Trustworthy Systems with Artificial Intelligence at APR Workshop in NUS
15/01/2024 Our paper on usage and perceptions of LLMs in a SE project has been accepted to LLM4Code'24
13/01/2024 A new data-set to study bugs in PHP applications has been accepted at MSR'24
see all updates

Featured Publications
[ICSE-SEIP'25]
Supply Chain Protection via Program Analysis
Ridwan Shariffdeen, Behnaz Hassanshahi, Martin Mirchev, Ali El Husseini, Abhik Roychoudhury
(One-line Abstract) an inter-package analysis technique to detect malicious packages in the Python ecosystem
47th International Conference on Software Engineering (ICSE), Software Engineering in Practice track (SEIP)
[TOSEM'25]
Vulnerability Repair via Concolic Execution and Code Mutations
Ridwan Shariffdeen, Christopher Timperley, Yannic Noller, Claire Le Goues, Abhik Roychoudhury
(One-line Abstract) Combination of semantic repair and search-based repair for security vulnerabilities
ACM Transactions on Software Engineering and Methodology (TOSEM)
[APR'24]
Program Repair Competition 2024
Ridwan Shariffdeen, Yannic Noller, Martin Mirchev, Haifeng Ruan Xiang Gao, Andreea Costea, Gregory J Duck, Abhik Roychoudhury
(One-line Abstract) summary and results of the first international program repair competition
2024 IEEE/ACM International Workshop on Automated Program Repair (APR)
  
[ICST'24]
Evolutionary Testing for Program Repair
Haifeng Ruan, Hoang Lam Nguyen, Ridwan Shariffdeen, Yannic Noller and Abhik Roychoudhury
(One-line Abstract) a co-evolution approach that generates tests and repairs in a unified workflow using EvoSuite
17th IEEE International Conference on Software Testing, Verification and Validation (ICST) 2024
[ICSE'23]
Cerberus: A Program Repair Framework
Ridwan Shariffdeen, Martin Mirchev, Yannic Noller, Abhik Roychoudhury
(One-line Abstract) a language agnostic platform for automated program repair
IEEE/ACM International Conference on Software Engineering (ICSE) 2023, Tool Demonstrations track
Note: Our framework including the tools and benchmarks is open sourced at Github
  
[ICSE'22]
Trust Enhancement Issues in Program Repair
Yannic Noller, Ridwan Shariffdeen, Xiang Gao, Abhik Roychoudhury
(One-line Abstract) A systematic evaluation if state of the art APR can meet developer expectations
IEEE/ACM 44th International Conference on Software Engineering (ICSE) 2022
Note: Our artifact @ 10.5281/zenodo.5908381, was evaluated as Available , Functional and Reusable .
[ISSTA'21]
Automated Patch Backporting in Linux (Experience Paper)
Ridwan Shariffdeen, Xiang Gao, Gregory J Duck, Shin Hwei Tan, Julia Lawall, Abhik Roychoudhury
(One-line Abstract) Patch backporting technique that can automatically transfer patches from the mainline version of Linux into older stable versions
30th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA) 2021, 12 pages
Note: Our artifact @ 10.5281/zenodo.4764704, was evaluated as Available , Functional and Reusable .
Note: FixMorph tool is now open-sourced in Github
Note: Our data, empirical evaluation, and replication package are available @ fixmorph.github.io
🏆 Award: Our artifact was awarded the "Distinguished Artifact Award" at ISSTA'21
  
[PLDI'21]
Concolic Program Repair
Ridwan Shariffdeen, Yannic Noller, Lars Grunske, Abhik Roychoudhury
(One-line Abstract) Detecting and discarding over-fitting patches via systematic co-exploration of the patch space and input space
42nd ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) 2021, 16 pages
Note: Our artifact @ 10.5281/zenodo.4668317, was evaluated as Available , Functional and Reusable .
Note: CPR tool is now open-sourced in Github
Note: Our data, empirical evaluation, and replication package are available @ cpr-tool.github.io
  
[TOSEM'21]
Automated Patch Transplantation
Ridwan Shariffdeen, Shin Hwei Tan, Mingyuan Gao, Abhik Roychoudhury
(One-line Abstract) Identifying patch insertion points, as well as namespaces translation across programs via symbolic execution
ACM Transactions on Software Engineering and Methodology (TOSEM), 30(1), pages 1-36, 2021.
Note: Selected as journal-first contribution to be presented at ICSE'21
Note: PatchWeave tool is now open-sourced in Github
Note: Our data, empirical evaluation, and replication package are available @ patchweave.github.io
  
see all publications