Skip to main content

Fall Course Registration open now. Register today to get the courses you need!

ICS 470T Software Engineering

This course focuses on the theory and practice of effectively and efficiently building software systems that satisfy the requirements placed upon them by customers. This course gives an overview of the software life-cycle, and introduces various process models used to develop software. Other topics include system verification and validation, software project management and software inspection.


Special information

Note: Students are responsible to both be aware of and abide by prerequisites for ICS courses for which they enroll, and will be administratively dropped from a course if they have not met prerequisites.
4 Undergraduate credits

Effective May 10, 2003 to present

Learning outcomes


  • Elucidate requirements.
  • Select an architecture for a software system.
  • Design a software system to fulfill elicited requirements.
  • Select an appropriate process model for a project.
  • Determine an adequate test and verification structure.
  • Manage a software project including estimating effort time and resources needed.
  • Manage the software lifecycle either in waterfall or agile model.
  • Quantify and manage risk.