Course Schedule

The following order of topics is tentative, and may be subject to change. All changes will be posted on the Announcements page.


• Overview of Software Engineering

• Software Development Processes

• Agile Methodologies: Extreme Programming and Scrum

• Requirements Capture

• Developing Software Specifications

• System Architecture and Design

• Modeling Systems and Objects

• Testing and Validation

• Professional Ethics in Software Engineering

• Other topics as time permits (design patterns, refactoring, formal methods)


We gratefully acknowledge the assistance of Phil Lewis, Rob Kelly, Annie Liu, Scott Stoller, and Amanda Stent.