Jooyong Yi, Assistant Professor at UNIST
## Jooyong Yi #### Assistant Professor #### [Department of Computer Science and Engineering](http://cse.unist.ac.kr/) #### [UNIST](https://www.unist.ac.kr/) #### South Korea #### Location: Building 106, Room 401-6 #### E-mail: jooyong at unist.ac.kr
[[Research Interests](#research-interests)] [[Selected Publications](#selected-publications)] [[Recent Professional Activities](#recent-professional-activities)] [[Current Students](#current-students)] [[Alumni](#alumni)] [[Research Projects](#research-projects)] [[Courses](#courses)] ## Research Interests

I am most interested in reasoning about computer programs for practical purposes. Among many practical applications of program reasoning, I am currently focusing on _**program repair**_ whereby correct program behavior is inferred, based on which the buggy program is automatically fixed through program synthesis and other means. Program repair can ultimately free millions of software developers from debugging tasks which often become a bottleneck in software development. Apart from practical importance, building software that can modify or build itself is also intellectually intriguing. Here is one last comment. These days, more and more software bugs are found by publicly available bug detection tools, and many of these bugs are related to software security. If we cannot fix them fast enough, is it good news or bad news?

#### Below are research areas I have been working on: - [Program repair](http://program-repair.org/) [TOSEM22, IST22, EMSE18, FSE17, ICSE16, ICSE15] - [Program specification and verification](https://en.wikipedia.org/wiki/Design_by_contract) [TOSEM15, ISSTA13, AOSD13, ASEJ12, IST10, ASE06]
## Publications [[DBLP](http://dblp.uni-trier.de/pers/hd/y/Yi:Jooyong)] [[Google Scholar](https://scholar.google.com.sg/citations?user=oJ9PTZIAAAAJ&hl=en&oi=ao)] ### Selected Publications - [TOSEM22] [Verifix: Verified Repair of Programming Assignments](papers/TOSEM22.pdf) [![tool](images/github-6-16.png)](https://github.com/zhiyufan/Verifix) - [IST22] [Speeding up Constraint-Based Program Repair Using a Search-Based Technique](papers/IST22.pdf) [![tool](images/github-6-16.png)](https://github.com/jyi/fangelix) - [EMSE18] [A Correlation Study between Automated Program Repair and Test-Suite Metrics](papers/EMSE18.pdf) - [FSE17] [A Feasibility Study of Using Automated Program Repair for Introductory Programming Assignments](papers/FSE17.pdf) [![tool](images/github-6-16.png)](https://github.com/jyi/ITSP) - [ICSE16] [Angelix: Scalable Multiline Program Patch Synthesis via Symbolic Analysis](papers/ICSE16.pdf) [![tool](images/github-6-16.png)](https://github.com/mechtaev/angelix) - [ICSE15] [DirectFix: Looking for Simple Program Repairs](papers/ICSE15.pdf) - [TOSEM15] [Software Change Contracts](papers/TOSEM15.pdf) - [ISSTA13] [Expressing and Checking Intended Changes via Software Change Contracts](papers/ISSTA13.pdf) - [AOSD13] [Past Expression: Encapsulating Pre-states at Post-conditions by Means of AOP](papers/AOSD13.pdf) - [ASEJ12] [Efficient and Formal Generalized Symbolic Execution](papers/ASEJ12.pdf) - [IST10] [Filtering False Alarms of Buffer Overflow Analysis Using SMT Solvers](papers/IST10.pdf) - [ASE06] [Bogor/Kiasan: A k-bounded Symbolic Execution for Checking Strong Heap Properties of Open Systems](papers/ASE06.pdf) ## Recent Professional Activities - PC member - [APR 2023](http://program-repair.org/workshop-2023/) - [ESEC/FSE 2022](https://2022.esec-fse.org) - [ICSE 2022 (SRC track)](https://conf.researchr.org/track/icse-2022/icse-2022-src---acm-student-research-competition) - [ICSE 2021](https://conf.researchr.org/home/icse-2021) - [ICSE 2020 (NIER track)](https://conf.researchr.org/track/icse-2020/icse-2020-New-Ideas-and-Emerging-Results) - [ISSTA 2019](https://conf.researchr.org/home/issta-2019) - [ESEC/FSE 2018](https://conf.researchr.org/home/fse-2018) - OC member - [APSEC 2023](https://conf.researchr.org/home/apsec-2023) - [NII Shonan meeting on JML](http://www.nii.ac.jp/shonan/blog/2012/04/27/the-java-modeling-language-jml/) ## Current Students - Satbek Abdyldayev - YoungJae Kim - Seungheon Han - Khamit Askar - [Nguyễn Gia Phong](https://cnx.srht.site/) - Trung Truong ## Alumni - Eui Bin Bae (Master 2022) - Md. Mazba Ur Rahman (Master 2022) ## Research Projects - _Patch Validation Technique for Automated Program Repair (자동 프로그램 수정을 위한 패치 적합성 확인 기술 개발)_ funded by [MSIT](https://www.msit.go.kr/eng/index.do) (2023.3--2026.2) - _[Software Disaster Research Center (소프트웨어재난 연구센터)](https://staar-en.knu.ac.kr/)_ funded by [MSIT](https://www.msit.go.kr/eng/index.do) (2021.3--2028.2) - _Automatic Software Error Repair by Combining Code Analysis and Error Mining (코드 분석과 오류 마이닝이 결합된 SW 오류 자동 수정 기술 개발)_ funded by [MSIT](https://www.msit.go.kr/eng/index.do) (2021.4--2024.12) - _Speeding up Automated Program Repair (자동 프로그램 수정의 속도 향상 기법 연구)_ funded by [MSIT](https://www.msit.go.kr/eng/index.do) (2020.6--2021.5) - _Toward Automated Debugging with a Single Test (단일 테스트 자동 디버깅을 위한 기반 다지기)_ funded by [MSIT](https://www.msit.go.kr/eng/index.do) (2021.3--2023.2) - _High-Speed Automated Fixes_ funded by Meta (2019.5--2020.4) ## Courses - CSE364 Software Engineering (2020 Fall, 2022 Spring) - CSE271 Principles of Programming Languages (2019 Spring, 2020 Spring) - CSE411 Introduction to Compilers (2021 Fall, [2023 Spring](lectures/CSE411/syllabus.html)) - CSE524 Advanced Software Engineering (2020 Fall, 2022 Fall) - CSE552 Program Analysis (2021 Spring) - CSE482 Program Analysis and Synthesis (2019 Fall) - CSE332 Theory of Computation (2021 Fall) - CSE241 Object-Oriented Programming (2019 Fall)