(Undergraduate) Research Opportunity
If you are interested in a summer research internship with our lab, please apply through UROP at UCI. Below, you’ll find a glimpse of the projects I am interested in.
Facilitating Human-AI collaboration in software engineering / software engineering education
The primary objective of this research is to examine the influence of emerging AI tools - Co-pilot, Midjourney, and ChatGPT - on the software development lifecycle. By conducting an in-depth analysis of their current application and identifying potential challenges, we aim to glean valuable insights. Ultimately, our vision is to design tools that facilitate the efficient utilization of these AI technologies in software engineering, benefitting practitioners, students, and instructors alike.
Research skills: Qualitative & qauntitative research methods
Technical skills: R or Python for qauntitative analysis
Reading: Diary Study and Copilot in reading list
Debugging complex systems
Reading and debugging code written by others (or by oneself from a distant past) can be a frustrating task. I would like to understand the strategies developers use to debug complex systems. Why do our current debuggers fail to support them? Furthermore, how can we design tools to assist them?
Research and technical skills: Unknown (we will figure it out)
Reading: Debugging book, The dichotomy of debugging behavior
Writing testing should be easy and fun
Testing is fun! Oh, wait, scratch that. Testing is often perceived as boring, and many developers dislike writing unit tests. How can we eliminate the tedious aspects, such as setting up the testing environment and writing mock objects, so that we can concentrate on the essential parts: verifying program outcomes? How can we create a testing process that is enjoyable, straightforward, and seamlessly integrated into the development process?
Research and technical skills: Unknown (we will figure it out)
Reading: How Developers Engineer Test Cases: An Observational Study and How (Much) Do Developers Test?