Comparing uniform and flexible policies for software maintenance and replacement

The importance of software maintenance in managing the life-cycle costs of a system cannot be overemphasized. Beyond a point, however, it is better to replace a system rather than maintain it. We derive model and operating policy that reduces the sum of maintenance and replacement costs in the useful life of a software system. The main goal is to compare uniform (occurring at fixed time intervals) versus flexible (occurring at varying, planned time intervals) polices for maintenance and replacement. The model draws from the empirical works of earlier researchers to consider 1) inclusion of user requests for maintenance, 2) scale economies in software maintenance, 3) efficiencies derived from replacing old software technology with new software technology, and 4) the impact of software reuse on replacement and maintenance. Results from our model show that the traditional practice of maintaining or replacing a software system at uniform time intervals may not be optimal. We also find that an increase in software reuse leads to more frequent replacement, but the number of maintenance activities is not significantly impacted.

[1]  Tridas Mukhopadhyay,et al.  A cost analysis of the software dilemma: to maintain or to replace , 1989, [1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume III: Decision Support and Knowledge Based Systems Track.

[2]  Dorine C. Andrews,et al.  FUSION: integrating IE, CASE, and JAD: a handbook for reengineering the systems organization , 1993 .

[3]  Carma L. McClure,et al.  Managing Software Development and Maintenance , 1986, IEEE Transactions on Reliability.

[4]  Alessandro Bianchi,et al.  Evaluating software degradation through entropy , 2001, Proceedings Seventh International Software Metrics Symposium.

[5]  Meir M. Lehman,et al.  On understanding laws, evolution, and conservation in the large-program life cycle , 1984, J. Syst. Softw..

[6]  Rajiv D. Banker,et al.  Software complexity and maintenance costs , 1993, CACM.

[7]  John B. Munson Software Maintainability: A Practical Concern for Life-Cycle Costs , 1981, Computer.

[8]  Barry Boehm The Economics of Software Maintenance , 1983 .

[9]  JF Ramil,et al.  The In uence of Global Factors On Software System Evolution , 1999 .

[10]  Watts S. Humphrey,et al.  Managing the software process , 1989, The SEI series in software engineering.

[11]  Hyunsoo Kim,et al.  The software maintenance project effort estimation model based on function points , 2003, J. Softw. Maintenance Res. Pract..

[12]  Siu Leung Chung,et al.  An Economic Model to Estimate Software Rewriting and Replacement Times , 1996, IEEE Trans. Software Eng..

[13]  Hsiang-Jui Kung Quantitative method to determine software maintenance life cycle , 2004, 20th IEEE International Conference on Software Maintenance, 2004. Proceedings..

[14]  Vijay K. Vaishnavi,et al.  Predicting Maintenance Performance Using Object-Oriented Design Complexity Metrics , 2003, IEEE Trans. Software Eng..

[15]  Jeffrey S. Poulin,et al.  Measuring software reuse - principles, practices, and economic models , 1996 .

[16]  T. Morton,et al.  Capacity Expansion and Replacement in Growing Markets with Uncertain Technological Breakthroughs , 1998 .

[17]  Joseph M. Mellichamp,et al.  Software Development Cost Estimation Using Function Points , 1994, IEEE Trans. Software Eng..

[18]  Harry M. Sneed,et al.  A cost model for software maintenance & evolution , 2004, 20th IEEE International Conference on Software Maintenance, 2004. Proceedings..

[19]  Giuliano Antoniol,et al.  Assessing staffing needs for a software maintenance project through queuing simulation , 2004, IEEE Transactions on Software Engineering.

[20]  Paul W. Oman,et al.  Using metrics to evaluate software system maintainability , 1994, Computer.

[21]  Carl K. Chang,et al.  Event-Based Traceability for Managing Evolutionary Change , 2003, IEEE Trans. Software Eng..

[22]  Kamran Moinzadeh,et al.  Analysis of maintenance policies for M machines with deteriorating performance , 2000 .

[23]  Rajiv D. Banker,et al.  A Field Study of Scale Economies in Software Maintenance , 1997 .

[24]  Jeff Sutherland,et al.  Business objects in corporate information systems , 1995, CSUR.

[25]  Anthony Pengelly Performance of effort estimating techniques in current development environments , 1995, Softw. Eng. J..

[26]  Robert L. Glass,et al.  Software Maintenance Guidebook , 1981 .

[27]  Walt Scacchi,et al.  Understanding Software Maintenance Work , 1987, IEEE Transactions on Software Engineering.

[28]  Rajiv D. Banker,et al.  Scale Economies in New Software Development , 2013, IEEE Transactions on Software Engineering.

[29]  E. Burton Swanson,et al.  The dimensions of maintenance , 1976, ICSE '76.

[30]  Rex Eugene Pereira A model of factors affecting an information system's change in state , 2001, J. Softw. Maintenance Res. Pract..

[31]  R. Bellman Equipment Replacement Policy , 1955 .

[32]  Michael R. Lyu,et al.  A Unified Scheme of Some Nonhomogenous Poisson Process Models for Software Reliability Estimation , 2003, IEEE Trans. Software Eng..

[33]  David Gefen,et al.  The non-homogeneous maintenance periods: a case study of software modifications , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[34]  Mikio Aoyama,et al.  Metrics and analysis of software architecture evolution with discontinuity , 2002, IWPSE '02.

[35]  E. Burch,et al.  Modeling software maintenance requests: a case study , 1997, 1997 Proceedings International Conference on Software Maintenance.

[36]  Paolo Donzelli,et al.  Tailoring the software maintenance process to better support complex systems evolution projects , 2003, J. Softw. Maintenance Res. Pract..

[37]  Meng-Hua Ye Optimal replacement policy with stochastic maintenance and operation costs , 1990 .

[38]  M A Branch,et al.  Software maintenance management , 1986 .

[39]  Gordon B. Davis,et al.  Software Development Practices, Software Complexity, and Software Maintenance Performance: a Field Study , 1998 .

[40]  Tom Mens,et al.  A survey of software refactoring , 2004, IEEE Transactions on Software Engineering.

[41]  Paolo Nesi,et al.  Estimation and Prediction Metrics for Adaptive Maintenance Effort of Object-Oriented Systems , 2001, IEEE Trans. Software Eng..

[42]  Fatemeh Zahedi,et al.  Policy analysis for warranty, maintenance, and upgrade of software systems , 2001, J. Softw. Maintenance Res. Pract..

[43]  Victor R. Basili,et al.  Understanding and predicting the process of software maintenance releases , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[44]  Tetsuo Tamai,et al.  Software lifetime and its evolution process over generations , 1992, Proceedings Conference on Software Maintenance 1992.

[45]  Chih-Hung Tsai,et al.  Two alternative imperfect multiaction maintenance models , 2003 .

[46]  Lerina Aversano,et al.  An assessment strategy for identifying legacy system evolution requirements in eBusiness context , 2004, J. Softw. Maintenance Res. Pract..

[47]  J. McCall Maintenance Policies for Stochastically Failing Equipment: A Survey , 1965 .

[48]  Girish Parikh,et al.  Techniques of program and system maintenance , 1980 .

[49]  Dennis G. Kafura,et al.  The Use of Software Complexity Metrics in Software Maintenance , 1987, IEEE Transactions on Software Engineering.

[50]  K. A model for equipment replacement due to technological obsolescence * , 2003 .

[51]  Maya Daneva,et al.  Measuring reuse of SAP requirements: a model-based approach , 1999, SSR '99.

[52]  Norman F. Schneidewind,et al.  The State of Software Maintenance , 1987, IEEE Transactions on Software Engineering.

[53]  L. B.S. Raccoon A learning curve primer for software engineers , 1996, SOEN.

[54]  Richard C. Holt,et al.  Predicting change propagation in software systems , 2004, 20th IEEE International Conference on Software Maintenance, 2004. Proceedings..

[55]  Yong Tan,et al.  Economic control and inspection policies for high-speed unreliable production systems , 2005 .