AuthorsA. Karahasanovic and R. Thomas
EditorsS. Mann
TitleDifficulties Experienced by Students in Maintaining Object-Oriented Systems: an Empirical Study
Publication TypeProceedings, refereed
Year of Publication2007
Conference NameAustralasian Computing Education Conference ACE 2007
Date PublishedDecember 2006
PublisherAustralian Computer Society Inc., Vol 66
ISBN Number1-920-68247-3

It is widely accepted that software maintenance absorbs a significant amount of the effort expended in software development. Proper training of both university students and professional developers is required in order to improve software maintenance. Understanding cognitive difficulties the students have while maintaining objectoriented systems is a prerequisite for improving their university education and preparing them for jobs in industry. The goal of the experiment reported in this paper is to explore the difficulties of students who maintain an unfamiliar object-oriented system. The subjects were 34 students in their third year of study in computer science. They used a professional Java tool to perform several maintenance tasks on a medium-size Java application system in a seven-hour long experiment. The major difficulties were related to understanding program logic, algorithms, finding change impacts, and inheritance of the functionality. Based on these results we suggest teaching the basics of impact analysis and introducing examples of modifying larger object-oriented programs in courses on object-oriented programming.

Citation KeyKarahasanovic.2007.1