Teaching
GenAI for Software Development - CSCI 420/520 (Cross Listed)
Under-graduate
Spring 2025: Instructor
- This course provides students with the foundational and technical skills needed to develop and apply Deep Learning (DL)-based tools, especially Generative AI methods, to enhance software development tasks like code generation and documentation. In the core module, CSCI 420, students explore recent advancements, gaining hands-on experience and theoretical knowledge in this fast-evolving field. By the end, students in CSCI 420 will understand Generative AI for software development, while those in CSCI 520 will also be skilled in critically evaluating research and proposing innovative solutions to advance Generative AI in this domain.
AI for S/W Eng - CSCI 680 01
Graduate
Fall 2024: Instructor
- This course is designed to equip students with an understanding of how recent advancements in Artificial Intelligence (AI) are leading to innovative automated practices in the realm of software engineering. Participants will investigate the usage of AI techniques to foster and automate software engineering processes while understanding their transformative impact on software development. Finally, students will be introduced to the core concepts of conducting research at the intersection of AI and Software Engineering (AI4SE).
Resilience of LLMs for Software Engineering - CSCI 790 04
Graduate
Fall 2024: Instructor
- This course integrates elements from the AI for Software Engineering course (CSCI 680 01) with more advanced concepts in software engineering and AI. Students in this reading class will explore foundational questions on leveraging AI-driven methods for large code models and examine additional extra-functional aspects, such as resilience and robustness.