CPEN 321

Software Engineering

Engineering practices for the development of non-trivial software-intensive systems including specification, software design, implementation, verification and validation. Iterative development. Recognized standards, guidelines and models.

4 credits

Course Outline

  • Overview of Software Engineering
  • Software Process
  • Agile Software Development
  • Requirements Engineering
  • Software Modeling and Analysis
  • Software Architecture
  • Software Construction
  • Software Quality and Testing
  • Software Management
  • Software Evolution and Maintenance
  • Advanced Software Engineering Topics


Software Engineering (9th  ed.), Sommerville, 2011, Pearson Education

Credit will only be given for one of CPSC 310 or CPEN 321.


CPEN 322 – Software Construction II

More Information

UBC Course Page