SENG 371

Software Evolution

Units: 1.5

Hours: 3-2

Introduces problems and solutions of long-term software maintenance/evolution and large-scale, long-lived software systems. Topics include software engineering techniques for programming-in-the-large, programming-in-the-many, legacy software systems, software architecture, software evolution, software maintenance, reverse engineering, program understanding, software visualization, advanced issues in object-oriented programming, design patterns, antipatterns, and client-server computing. Culminates in a team project.

Note:

  • Credit will be granted for only one of SENG 371, SENG 420.

Prerequisites:

Undergraduate course in Software Engineering offered by the Software Engineering in the Faculty of Engineering.

Schedules:
Summer Fall Spring

Note that not all courses are offered in every term. If a course is not offered, the schedule page will alert you that "No classes were found that meet your search criteria."