Software maintenance costs
William R. Herrin · ACM SIGCSE Bulletin · 1985
This paper discusses a technique used to introduce junior students to the quantitative impact of maintenance on a data processing department's budget.A mathematical model is developed to demonstrate the relation among critical variables.Some aspects of the model are explored for the student and then the student is guided to further exploration of the model through sets of exercises.The purpose of this paper is to describe a technique which introduces undergraduate students to the financial impact of software maintenance.It is used in a junior level course in project managenlent and control.A prime objective of this course is to help the student develop an increased awareness of quantitative effects of data processing procedures on the finances of a company.The students will have had an elementary course in Quantitative Business Analysis and math courses through college algebra --few will have had calculus.By this time, the students have taken 20 -24 quarter hours of programming and 8 -12 quarter hours of courses in analysis and design.It is inevitable that they will have encountered the conventional wisdom propositions concerning the high cost of software maintenance.It is probable that the student will neither hBve investigated the validity of tile conventional wisdom propositions nor have subjected them to any sort of critical quantitative analysis.This material is introduced about a third of the way through the course.The principle that software should be developed to satisfy a business need is well understood by this point in the course.Also understood is the principle that an enlightened management would have approved development of the software only if a prior analysis projected that a contribution to company profits would result.Presentation to the student involves first, development of a model to evaluate the impact of maintenance cost on the total software budget of a data processing department.After this model is presented and explored the student works assigned problems to reinforce understanding of these concepts.Some problems explore further the meaning of this model.Others encourage the student to extend the model.