CS 3240 - Spring 2024

Advanced Software Development Techniques

aka Software Engineering
Our course is structured around understanding the different aspects of the software development lifecycle. During this course, students will learn to elicit and model software requirements, choose from various design options for a solution, implement a large software system in teams using a modified Scrum methodology, perform quality assurance, and learn about ethical and professional issues, such as diversity issues, how to handle data responsibly, and software licensing.

Online Coursepack Gradescope Piazza Canvas GitHub

Lecture and Lab Sessions

Lecture 001 - Tuesdays and Thursdays @ 11:00 AM-12:15 PM in Rice 130 w/ Prof. Sherriff
Lecture 002 - Tuesdays and Thursdays @ 12:30-1:45 PM in Rice 130 w/ Prof. Elbaum
Labs - Individual Team Meetings with TAs on Sundays or Mondays (Determined by Teams + TA)

Staff Information

Instructor: Prof. Sebastian Elbaum
Office: Rice 423
Office Hours: Tuesdays from 11:00AM-12:30PM & Thursdays 3:00PM-4:30PM
Email: selbaum@virginia.edu
Website: https://www.cs.virginia.edu/~se4ja/

Instructor: Prof. Mark Sherriff
Office: Rice 400
Office Hours: Mondays 9:00-10:30 AM & Thursdays 12:30-2:00 PM
Email: sherriff@virginia.edu
Website: http://marksherriff.com

Teaching Assistants: Ausaf Ali, Thomas Arnold, Brian Baugher, Benny Bigler-Wang, Daniel Biondolillo, William Bradford, Ethan Buckner, Ji Chen, Esther Cowan, Krish Dhansinghani, Sebastian Fugle, Nishita Ghanate, Nikhita Guntu, Cherry Guo, Ethan Haller, Dylan Herbig, Peter Kim, Russell Lee, Sarah Liu, Param Patel, Ankit Poudyal, Ajwa Shahid,