Imparting effective software engineering education
ACM SIGSOFT Software Engineering Notes
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
Difficulties experienced by students in maintaining object-oriented systems: an empirical study
ACE '07 Proceedings of the ninth Australasian conference on Computing education - Volume 66
Enhancing software engineering education: a creative approach
Proceedings of the 2008 international workshop on Software Engineering in east and south europe
Change profiles of a reused class framework vs. two of its applications
Information and Software Technology
Proceedings of the 45th ACM technical symposium on Computer science education
Hi-index | 0.00 |
Software engineering typically requires more effort in maintenance than in development time. As such, software engineering education needs to actively include software evolution. Teaching software evolution to undergraduate students usually includes the theoretical aspects, but doesn't normally include the actual implementation. This paper describes the practice of teaching software evolution to undergraduate computing students at Monash University. It demonstrates how the four maintenance activities - corrective, adaptive, perfective and preventative - can be included into the practical component of a software engineering course, providing students with a much more realistic view of software engineering.