K. Gallagher, Mark E. Fioravanti, Suzanne Kozaitis
{"title":"Teaching Software Maintenance","authors":"K. Gallagher, Mark E. Fioravanti, Suzanne Kozaitis","doi":"10.1109/ICSME.2019.00054","DOIUrl":null,"url":null,"abstract":"This paper outlines the content and techniques used to teach software maintenance to American university sophomores (second year students) who have had 3 semesters of programming. The course uses an introductory text that is geared to the maturity of the audience. By turning the project of the introductory course into a large software evolution exercise, the major topics of software engineering can still be easily introduced and examined. We present the course organization, evaluation rubrics, and student and instructor experiences from six offerings of the course to demonstrate that treating the project in an introductory course as a software evolution exercise on a large, mature system is a viable alternative to the usual (greenfield) approaches. As an added benefit, meaningful contributions to the open source community can be made.","PeriodicalId":106748,"journal":{"name":"2019 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 IEEE International Conference on Software Maintenance and Evolution (ICSME)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSME.2019.00054","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
This paper outlines the content and techniques used to teach software maintenance to American university sophomores (second year students) who have had 3 semesters of programming. The course uses an introductory text that is geared to the maturity of the audience. By turning the project of the introductory course into a large software evolution exercise, the major topics of software engineering can still be easily introduced and examined. We present the course organization, evaluation rubrics, and student and instructor experiences from six offerings of the course to demonstrate that treating the project in an introductory course as a software evolution exercise on a large, mature system is a viable alternative to the usual (greenfield) approaches. As an added benefit, meaningful contributions to the open source community can be made.