CS 5369M - Software Evolution and Maintenance

Course Description:

Software evolution and maintenance is one of the most important and complex activities in software engineering. Programmers rarely build software from scratch but often modify existing software to fix defects or add new features. This course studies the fundamentals of cutting-edge techniques and tools for software evolution and maintenance.


CS 3358 with a grade of C or higher.

Course Objectives:

Students will be able to:

  • describe the laws of software evolution

  • explain and compare evolution and maintenance models

  • analyze impact of software changes

  • apply various refactoring techniques

  • perform individual and team projects

Course Notes:

New course effective Fall 2016.