Student projects are not throwaways: teaching practical software maintenance in a software engineering course

  • Authors:
  • Claudia Szabo

  • Affiliations:
  • The University of Adelaide, Adelaide, Australia

  • Venue:
  • Proceedings of the 45th ACM technical symposium on Computer science education
  • Year:
  • 2014

Quantified Score

Hi-index 0.00

Visualization

Abstract

Teaching software engineering through group-based project work supported by theory lectures is effective, as recognized by both academia and industry. However, exposing students to practical software maintenance is often overlooked in favor of building software from scratch under the guidance of a lecturer or client. The developed software is usually delivered to the lecturer/client and no maintenance efforts are further required. In contrast, industry projects require fresh graduates to perform maintenance exercises and very rarely to build software from scratch. To address this issue, existing software maintenance assignments usually focus on small codebases of very good quality, in which artificial issues are introduced. In this paper, we propose to enhance a group-based project course with a software maintenance assignment that uses a medium-sized, student-produced codebase with real software bugs. Our analysis shows the effectiveness of our approach and highlights future avenues for improvement.