Abstract
The number of software systems under development and maintenance is rapidly increasing. The quality of a system’s source code tends to decrease during its lifetime which is a problem because maintaining low quality code consumes a big portion of the available efforts. In this research we investigated one aspect of code change, the version control commit operations (add, update, delete). We studied the impact of these operations on the maintainability of the code. We calculated the ISO/IEC 9126 quality attributes for thousands of revisions of an industrial and three open-source software systems. We also collected the cardinality of each version control operation type for every investigated revision. Based on these data, we identified that operation Add has a rather positive, while operation Update has a rather negative effect on the quality. On the other hand, for operation Delete we could not find a clear connection to quality change.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Atkins, D.L., Ball, T., Graves, T.L., Mockus, A.: Using Version Control Data to Evaluate the Impact of Software Tools: A Case Study of the Version Editor. IEEE Transactions on Software Engineering 28(7), 625–637 (2002)
Bakota, T., Hegedűs, P., Körtvélyesi, P., Ferenc, R., Gyimóthy, T.: A Probabilistic Software Quality Model. In: Proceedings of the 27th IEEE International Conference on Software Maintenance (ICSM 2011), pp. 368–377. IEEE Computer Society, Williamsburg (2011)
Bakota, T., Hegedus, P., Ladányi, G., Körtvélyesi, P., Ferenc, R., Gyimóthy, T.: A Cost Model Based on Software Maintainability. In: Proceedings of the 28th IEEE International Conference on Software Maintenance (ICSM 2012), pp. 316–325. IEEE Computer Society, Riva del Garda (2012)
Bernstein, A., Bachmann, A.: When Process Data Quality Affects the Number of Bugs: Correlations in Software Engineering Datasets. In: Proceedings of the 7th IEEE Working Conference on Mining Software Repositories, MSR 2010, pp. 62–71 (2010)
Fluri, B., Wursch, M., Gall, H.C.: Do Code and Comments Co-evolve? On the Relation between Source Code and Comment Changes. In: 14th Working Conference on Reverse Engineering, WCRE 2007, pp. 70–79. IEEE (2007)
Gall, H., Jazayeri, M., Krajewski, J.: CVS Release History Data for Detecting Logical Couplings. In: Proceedings of the Sixth International Workshop on Principles of Software Evolution, pp. 13–23. IEEE (2003)
Hayes, J.H., Patel, S.C., Zhao, L.: A Metrics-Based Software Maintenance Effort Model. In: Proceedings of the Eighth Euromicro Working Conference on Software Maintenance and Reengineering (CSMR 2004), pp. 254–260. IEEE Computer Society, Washington, DC (2004)
Hindle, A., German, D.M., Holt, R.: What Do Large Commits Tell Us?: a Taxonomical Study of Large Commits. In: Proceedings of the 2008 International Working Conference on Mining Software Repositories, MSR 2008, pp. 99–108. ACM, New York (2008)
Hollander, M., Wolfe, D.A.: Nonparametric Statistical Methods, 2nd edn. Wiley-Interscience (January 1999)
ISO/IEC: ISO/IEC 9126. Software Engineering – Product quality 6.5. ISO/IEC (2001)
Koch, S., Neumann, C.: Exploring the Effects of Process Characteristics on Product Quality in Open Source Software Development. Journal of Database Management 19(2), 31 (2008)
Mockus, A., Weiss, D.M., Zhang, P.: Understanding and Predicting Effort in Software Projects. In: Proceedings of the 25th International Conference on Software Engineering (ICSE 2003), pp. 274–284. IEEE Computer Society, Washington, DC (2003)
Moser, R., Pedrycz, W., Sillitti, A., Succi, G.: A Model to Identify Refactoring Effort during Maintenance by Mining Source Code Repositories. In: Jedlitschka, A., Salo, O. (eds.) PROFES 2008. LNCS, vol. 5089, pp. 360–370. Springer, Heidelberg (2008)
Parnas, D.L.: Software Aging. In: Proceedings of the 16th International Conference on Software Engineering, ICSE 1994, pp. 279–287. IEEE Computer Society Press, Los Alamitos (1994)
Peters, R., Zaidman, A.: Evaluating the Lifespan of Code Smells using Software Repository Mining. In: Proceedings of the 2012 16th European Conference on Software Maintenance and Reengineering, CSMR 2012, pp. 411–416. IEEE Computer Society, Washington, DC (2012)
Pratap, A., Chaudhary, R., Yadav, K.: Estimation of software maintainability using fuzzy logic technique. In: 2014 International Conference on Issues and Challenges in Intelligent Computing Techniques (ICICT), pp. 486–492 (February 2014)
R Core Team: R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria (2013), http://www.R-project.org/
Ratzinger, J., Sigmund, T., Vorburger, P., Gall, H.: Mining Software Evolution to Predict Refactoring. In: Proceedings of the First International Symposium on Empirical Software Engineering and Measurement, ESEM 2007, pp. 354–363. IEEE Computer Society, Washington, DC (2007)
Schofield, C., Tansey, B., Xing, Z., Stroulia, E.: Digging the Development Dust for Refactorings. In: Proceedings of the 14th IEEE International Conference on Program Comprehension, ICPC 2006, pp. 23–34. IEEE Computer Society, Washington, DC (2006)
Stroggylos, K., Spinellis, D.: Refactoring–Does It Improve Software Quality? In: Fifth International Workshop on Software Quality, WoSQ 2007: ICSE Workshops 2007, p. 10. IEEE (2007)
Tóth, G., Végh, Á.Z., Beszédes, Á., Schrettner, L., Gergely, T., Gyimóthy, T.: Adjusting Effort Estimation Using Micro-Productivity Profiles. In: Proceedings of the 12th Symposium on Programming Languages and Software Tools (SPLST 2011), pp. 207–218 (October 2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Faragó, C., Hegedũs, P., Ferenc, R. (2014). The Impact of Version Control Operations on the Quality Change of the Source Code. In: Murgante, B., et al. Computational Science and Its Applications – ICCSA 2014. ICCSA 2014. Lecture Notes in Computer Science, vol 8583. Springer, Cham. https://doi.org/10.1007/978-3-319-09156-3_26
Download citation
DOI: https://doi.org/10.1007/978-3-319-09156-3_26
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-09155-6
Online ISBN: 978-3-319-09156-3
eBook Packages: Computer ScienceComputer Science (R0)