Course Introduction

Artificial intelligence is reshaping modern software systems, with generative AI models increasingly integrated to provide intelligent functionality. This course explores emerging software engineering methods and practices for designing, developing, and operating AI-integrated software. Topics include recent advances in software quality assurance and maintenance techniques (such as testing, debugging, security, efficiency optimization, and DevOps) for agentic systems. We will also discuss testing and debugging techniques for AI libraries and compilers, as well as the broader ecosystem supporting AI-integrated software.

This course aims to offer an overall picture of software engineering for generative AI. It will be in seminar format, focusing on cutting-edge research papers and semester-long projects. It covers a wide range of topics including (1) basis for SE and GenAI, (2) quality assurance for agents, (3) quality assurance for AI infrastructure, (4) quality assurance for domain-specific AI-powered software, (5) non-functional property in AI-powered software. The goal of this course is to get students familiar with the SE-for-AI area and also the research process.

  • Instructor: Yiling Lou (yilingl@illinois.edu)
  • Class Time: Mon/Wed 09:30AM - 10:45AM (Central Time)
  • Office Hours: Mon/Wed 10:45AM - 11:45AM (Central Time)
  • Location: Siebel Center for Comp Sci 0218
  • Forum/project Submissions:: Campuswire (Create an account with netid@illinois.edu email address, you should already have access; join before your first class as all notifications will be there; ask questions on Campuswire and email the instructor for private issues.)

Grading

  • Class Participation (15%): The course is centering on discussion. This item would be evaluated on the class attendance and discussion participation (e.g., ask or answer questions). Please read at least the primary papers before each class to ensure engagement in class.
  • Paper Presentation (25%): Each student is required to present one paper and lead its discussion. (1) Register the preference for topics and papers (select at least five topics) in Campuswire "Assignment" before Jan. 30th. (2) Prepare slides for presentation by yourself rather than directly using original author slides. Upload the initial version of slides to Campuswire a week before the presentation slot to get feedback comments. Upload the final version of slides to Campuswire 24h before the presentation slot. (3) Lead the discussion of the paper and answer questions from audience. Prepare some good questions to initiate the discussion.
  • Course Project (60%): The semester-long course project is based on groups (2-3 students per group). There is a list of candidate topics for reference in Campuswire. In addition, proposing your own topic is allowed, but meet with the instructor to discuss the proposal before Feb. 10th. There are three check points for the course project as follows. The deliverables of each stage include both the report and presentation. Detailed/deadlines for each phase are in the schedule section below.
    • Proposal report and presentation (5%): 1-page .txt proposal (due 02/26) and 5 min presentation (02/23).
    • Midterm report and presentation (20%): 3-page PDF report (due 04/13) and 10 min presentation (04/06, 04/08).
    • Final report and presentation (35%): 5-page PDF report (due 05/13) and 12 min presentation (05/04, 05/06).

Tentative Schedule

Date Topics Notes
01/21 Wed Course Introduction Presenter: Yiling
01/26 Mon SE Basis Presenter: Yiling
01/28 Wed SE Basis Presenter: Yiling
02/02 Mon SE Basis Presenter: Yiling
02/04 Wed GenAI Basis Presenter: Yiling
02/09 Mon LLM Agents: Memory
02/11 Wed LLM Agents: Action
02/16 Mon LLM Agents: Multi-Agent System
02/18 Wed LLM Agents: Application
02/23 Mon Proposal Presentation
02/25 Wed Understanding Bugs in Agents
03/02 Mon Testing for Agents (1): Benchmark
03/04 Wed Testing for Agents (2): Vulnerability Detection
03/09 Mon Debugging for Agents (1)
03/11 Wed Debugging for Agents (2)
03/23 Mon Agent Observability
03/25 Wed Self-Improving Agents
03/30 Mon Build/Deploy Agents in Practice
04/01 Wed Testing & Debugging AI Program
04/06 Mon Midterm Presentation
04/08 Wed Midterm Presentation
04/13 Mon Testing & Debugging AI Libraries
04/15 Wed Testing & Debugging AI Compilers
04/20 Mon Testing & Debugging AI Software: ADS
04/22 Wed Testing & Debugging AI Software: Embodied AI
04/27 Mon Non-functional Property in GenAI (1)
04/29 Wed Non-functional Property in GenAI (2)
05/04 Mon Final Project Presentation
05/06 Wed Final Project Presentation