CSCI 8980 Automated Software Engineering


Instructor

Mattia Fazzini
Assistant Professor
Department of Computer Science & Engineering
University of Minnesota

Time and Location

Class
Time: M,W 4 - 5:15 PM
Location: Amundson Hall 104
Office Hours
Time: M,W 5:15 - 6:15 PM
Location: Keller Hall 6-189

Overview

Software is present in many facets of our lives. It is in the things we use every day (e.g., smartphones, laptops, and cars) and it is also part of the infrastructure of our society (e.g., schools, hospitals, and airports). It is indeed not easy to think about a device, system, or organization that provides some complex functionality and does not rely on software. This situation also means that we are increasingly dependent on software and it is, therefore, vital to ensure that the software we use works as expected. This course provides in-depth knowledge on how to do so through automated software engineering techniques. Specifically, the course will cover state-of-the-art testing and maintenance techniques and show how these techniques can automate tasks such as test input generation, fault localization, bug report analysis, and program repair.

Course Objectives

  • Study about automated techniques to cope with software bugs
  • Gain research experience

Grading

  • Setup assignment (1%)
  • Paper critiques (20%)
  • Paper presentation (15%)
  • Class participation (9%)
  • Project (55%)

Paper Critiques

Information on how to read a research paper here and write critique using this template

Paper Presentations

The presentation should go beyond the content of the papers themselves. For example, as part of your presentation, you can prepare a hands-on activity that demonstrates the key concept in the paper, show relevant videos, and/or develop thought-provoking questions.
Presentations will be scored based on the following criteria.
  • Presentation materials (40%)
    • How well did you structure, organize, and design your materials?
  • Presentation of the content (40%)
    • Did you accurately and effectively communicate the most interesting ideas in the paper?
  • Value added to the content (20%)
    • Did you offer insights, activities, content, or anything else that went beyond the content of the paper?

Project

The project will build on top of an exsisting technique/tool. At most two students can work together. I will propose some project ideas but you have the freedom to propose your own.

Schedule

Policy Statements

Read more here