Software Engineering (CSE 403/Spring 2021)

Software engineering goes well beyond programming. It includes processes from defining a product to shipping and maintaining that product. Software engineering requires strong technical skills, but also strong teamwork and communication skills. Get ready to learn software engineering principles first hand, improve your technical skills, and ship a product.


  • Lectures: Mon/Wed/Fri 12:30pm--1:20pm
  • Team meetings: Tue 1:30pm--2:20pm
  • Project meetings: Thu 1:30pm--2:20pm


Please send all general inquiries to cse403-staff(at)

  • Instructor: René Just (rjust(at); OH: after class and by appointment)
  • TA: Brendan Wallace (bwbw(at); OH: by appointment)
  • TA: Anny Kong (yk57(at); OH: by appointment)
  • TA: Ben Kushigian (benku(at); OH: by appointment)
  • TA: Leo Liao (yuanliao(at); OH: by appointment)
  • TA: Wilson Tang (wtang06(at); OH: by appointment)


Course project


Course description

In this course, students learn and gain practical experience with software engineering principles, techniques, and tools. Topics in this course include requirements analysis, specification, design, abstraction, programming style, testing, maintenance, communication, teamwork, and software project management. The practical experience centers on a quarter-long team project, in which a software development project is carried through all the stages of the software life cycle. Particular emphasis is placed on communication skills and on developing maintainable software. In-class activities further provide a hands-on experience in using state-of-the-art techniques and tools.


  • CSE 331
  • CSE 332

Course format

The class meets three times a week for lectures. Additionally, individual groups meet twice a week during section (Tuesday and Thursday) for team and project meetings. All class meetings are virtual on Zoom. Classroom material is enhanced with assigned readings, in-class activities, and in-class exercises. A major component of the course is teamwork on a group project. Individual contributions include reading assignments, peer review, and participation.


This course is scheduled to run (mostly) synchronously at your scheduled class time via Zoom. These Zoom class sessions may be recorded. The recording will capture the instructor's screen and any presenter's audio -- that is, it will not capture students' video. The recording will not capture group activities (e.g., breakout rooms). The recordings will only be accessible to students enrolled in the course to review materials. These recordings will not be shared with or accessible to the public.


Grades will be based on a group project, in-class exercises, assignments, and participation:
  • 55%: Group project
  • 35%: In-class exercises and assignments
  • 10%: Participation

Late policy

Assignments must be turned in by the due date and time on Canvas. Assignments will not be accepted late. You can find the general course policies here.

Course material