This is a paper I wrote for my Managing Software Development course at CMU. The topic was of my own choice since I faced several challenges when working on software maintenance and evolution tasks, and was curious to know what the literature said about these challenges, how to classify them and how to deal with them.

Download paper here