Students will acquire key competences needed to analyze complex software systems and improve their maintenance and evolution. The first part of the course is focused on the study of techniques related to reverse engineering, defect prediction and analysis, and the mining and analysis of structured and unstructured data in software repositories. In the second part, students will apply the acquired expertise in the context of a software analytics project. A solid basis in object-oriented programming and software engineering is required.
The course is not offered in the academic year 2017/18