Research Fellow
School of Computing
National University of Singapore
ridwan@comp.nus.edu.sg | |
Location |
Programming Languages & Software Engineering Lab (COM3 02-20) |
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!
[APR'23] | |
![]() | Program Repair Competition |
![]() | Ridwan Shariffdeen, Martin Mirchev, Abhik Roychoudhury |
(One-line Abstract) proposing a competition to shape the next-generation repair | |
2023 IEEE/ACM International Workshop on Automated Program Repair (APR) | |
[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 | |
[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 ![]() ![]() ![]() | |
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 ![]() ![]() ![]() | |
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 |
09/09/2023 | Invited to serve on the program committee for the demo track at SANER’24 News |
29/07/2023 | Invited to serve on the program committee for the technical track at SEAMS’24 News |
26/07/2023 | Invited to serve on the program committee for the technical track at ISEC’24 News |
11/07/2023 | Invited to serve on the program committee for the technical track at FSE’24 News |
23/06/2023 | Invited to serve on the program committee of SDD@FSE’23 |
23/05/2023 | I have given a talk on automated program repair at Oracle Labs in Brisbane, Australia |
18/05/2023 | I will be co-chairing the software engineering track at MerCon’23 |
18/05/2023 | Invited to serve on the program committee of Fuzzing@ISSTA’23 |
01/03/2023 | Our paper on Program Repair Competition has been accepted at ICSE'23 APR Workshop |
20/01/2023 | Our framework for automated program repair has been accepted at ICSE'23 Demo Track |
10/01/2023 | Invited to serve on the program committee of SCORED@CCS’23 |
26/12/2022 | I have given a talk on software vulnerability repair at National Institute of Technology, Warangal, India |
17/12/2022 | Invited to serve on the program committee of APR@ICSE’23 |
16/12/2022 | I have given a talk on coevolution for program repair at PLSE Seminar in NUS |
19/11/2022 | Invited to join The ACM TOSEM Board of Distinguished Reviewers |
19/10/2022 | I successfully defended my PhD thesis "Software Vulnerability Repair" |
01/09/2022 | Joined as a Research Fellow at Secure Software Research Group , SoC, NUS |
17/05/2022 | Invited to serve on the program committee in ISEC'23 |
17/05/2022 | Invited to serve on the program committee in SCORED@CCS'22 |
18/12/2021 | Selected participant for the 10th Global Young Scientists Summit (GYSS 2022) |
see all updates |