Software Engineering (CSE 403/Winter 2023)

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.



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


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.


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 in-person. 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.


Grades will be based on a group project, in-class exercises, assignments, and participation:

Late policy

Assignments must be submitted on Canvas by the due date and time. Unless otherwise noted, all times are given in PDT (Pacific Time). The submission site remains open for 24 hours after the deadline. Assignments submitted within 24 hours after the deadline will incur a 20% penalty. Assignments will not be accepted after the submission site is closed.

You can find the general course policies here.

Course material