On the Benefits of Planning and Grouping Software Maintenance Requests

Despite its unquestionable importance, software maintenance usually has a negative image among software developers and even project managers. As a result, it is common to consider maintenance requests as short-term tasks that should be implemented as quick as possible to have a minimal impact for end-users. In order to promote software maintenance to a first-class software development activity, we first define in this paper a light weighted process -- called PASM (Process for Arranging Software Maintenance Requests) -- for handling maintenance as software projects. Next, we describe an in-depth evaluation of the benefits achieved by the PASM process at a real software development organization. For this purpose, we rely on a set of clustering analysis techniques in order to better understand and compare the requests handled before and after the adoption of the proposed process. Our results indicate that the number of projects created to handle maintenance requests has increased almost three times after this organization has adopted the PASM process. Furthermore, we also concluded that projects based on the PASM present a better balance between the various software engineering activities. For example, after adopting PASM the developers have dedicated more time to analysis and validation and less time to implementation and codification tasks.

[1]  D.A. Menasce,et al.  Scaling for e-business , 2000, Proceedings 8th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (Cat. No.PR00728).

[2]  David Collier-Brown,et al.  You don't know jack about software maintenance , 2009, Commun. ACM.

[3]  L. Erlikh,et al.  Leveraging legacy system dollars for e-business , 2000 .

[4]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[5]  Virgílio A. F. Almeida,et al.  A characterization of broadband user behavior and their e-business activities , 2004, PERV.

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

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

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

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

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

[11]  Hans van Vliet,et al.  Software maintenance from a service perspective , 2000 .

[12]  H.-J. Kung,et al.  Software Maintenance Life Cycle Model , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[13]  Suresh P. Sethi,et al.  Optimal policies for the sizing and timing of software maintenance projects , 2006, Eur. J. Oper. Res..

[14]  Ian Sommerville,et al.  Software Engineering (7th Edition) , 2004 .

[15]  John A. Hartigan,et al.  Clustering Algorithms , 1975 .

[16]  George Neville-Neil,et al.  The Meaning of Maintenance , 2009, ACM Queue.

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

[18]  Mario Piattini,et al.  Using a qualitative research method for building a software maintenance methodology , 2002, Softw. Pract. Exp..

[19]  Daniel A. Menascé,et al.  Scaling for E-Business: Technologies, Models, Performance, and Capacity Planning , 2000 .

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

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

[22]  Mario Gerardo Piattini Velthuis,et al.  MANTOOL: a tool for supporting the software maintenance process , 2001 .

[23]  Virgílio A. F. Almeida,et al.  A methodology for workload characterization of E-commerce sites , 1999, EC '99.

[24]  Yong Tan,et al.  Comparing uniform and flexible policies for software maintenance and replacement , 2005, IEEE Transactions on Software Engineering.