Skip to main content

Investigating the Applicability of the Laws of Software Evolution: A Metrics Based Study

  • Conference paper
Evaluation of Novel Approaches to Software Engineering (ENASE 2013)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 417))

Abstract

The study aims at investigating empirically the applicability of Lehman’s laws of software evolution. We used a synthetic metric (Quality Assurance Indicator), which captures in an integrated way various object-oriented software attributes. The goal was to explore if the metric can be used to support the applicability of Lehman’s laws of software evolution. We focused on five laws: continuing change, increasing complexity, self-regulation, continuing growth anddeclining quality. We performed an empirical analysis using historical data collected on two open source (Java) software systems. Empirical results provide evidence that the considered Lehman’s laws are supported by the collected data and the metric.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Xie, G., Chen, J., Neamtiu, I.: Towards a better understanding of software evolution: An empirical study on open source software. In: ICSM 2009, pp. 51–60 (2009)

    Google Scholar 

  2. Sommerville, I.: Software engineering, 9th edn. Addison Wesley (2010)

    Google Scholar 

  3. Parnas, P.L.: Software aging. In: Proceedings of the 16th ICSE, pp. 279–287 (1994)

    Google Scholar 

  4. Lehman, M.M., Ramil, J.F., Wernick, P.D., Perry, D.E., Turski, W.M.: Metrics and laws of software evolution – The nineties view. In: Proceedings of the Fourth International Software Metrics Symposium, pp. 20–32 (1997)

    Google Scholar 

  5. Lehman, M.M.: Laws of software evolution revisited. In: Montangero, C. (ed.) EWSPT 1996. LNCS, vol. 1149, pp. 108–124. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  6. van Gurp, J., Bosch, J.: Design erosion: Problems & causes. Journal of Systems and Software 61(2), 105–119 (2002)

    Article  Google Scholar 

  7. Zhang, H., Kim, S.: Monitoring software quality evolution for defects. IEEE Software 27(4), 58–64 (2010)

    Article  Google Scholar 

  8. Lehman, M.M., Belady, L.A.: Program evolution: Processes of software change. Academic Press (1985)

    Google Scholar 

  9. Lee, Y., Yang, J., Chang, K.H.: Metrics and evolution in open source software. In: Proceedings of the 7th QSIC (2007)

    Google Scholar 

  10. Mens, T., Demeyer, S.: Future trends in software evolution metrics. In: Proceedings of the 4th IWPSE, pp. 83–86 (2001)

    Google Scholar 

  11. Henderson-Sellers, B.: Object-oriented metrics – Measures of complexity. Prentice Hall, New Jersey (1996)

    Google Scholar 

  12. Badri, M., Touré, F.: Empirical analysis for investigating the effect of control flow dependencies on testability of classes. In: 23rd International Conference on Software Engineering and Knowledge Engineering (2011)

    Google Scholar 

  13. Basili, V., Briand, L., Melo, W.L.: A validation of object oriented design metrics as quality indicators. IEEE Transactions on Software Engineering 22(10) (1996)

    Google Scholar 

  14. Briand, L.C., Wüst, J., Daly, J.W., Porter, D.V.: Exploring the relationships between design measures and software quality in object-oriented systems. Journal of Systems and Software, 245–273 (2000)

    Google Scholar 

  15. Dagpinar, M., Jahnke, J.H.: Predicting maintainability with object-oriented metrics – An empirical comparison. In: Proceedings of the 10th Working Conference on Reverse Engineering, pp. 155–164 (2003)

    Google Scholar 

  16. Eski, S., Buzluca, F.: An empirical study on object-oriented metrics and software evolution in order to reduce testing costs by predicting change-prone classes. In: 2011 IEEE 4th Int. Conference on Software Testing, V&V Workshops, pp. 566–571 (2011)

    Google Scholar 

  17. Fenton, N.E., Pfleeger, S.L.: Software metrics: A rigorous & practical approach, 2nd edn. PWS Publishing Company (1997)

    Google Scholar 

  18. Murgia, A., Concas, G., Pinna, S., Tonelli, R., Turnu, I.: Empirical study of software quality evolution in open source projects using agile practices. In: CoRR, Vol. abs/0905.3287 (2009)

    Google Scholar 

  19. Singh, Y., Kaur, A., Malhotra, R.: Empirical validation of object-oriented metrics for predicting fault proneness models. Software Quality Journal 18(1), 3–35 (2010)

    Article  Google Scholar 

  20. Subramanyan, R., Krishnan, M.S.: Empirical analysis of CK metrics for object-oriented design complexity: Implications for software defects. IEEE Transactions on Software Engineering 29(4), 297–310 (2003)

    Article  Google Scholar 

  21. Zhou, Y., Leung, H.: Empirical analysis of object-oriented design metrics for predicting high and low severity faults. IEEE Transactions on Software Engineering 32(10), 771–789 (2006)

    Article  Google Scholar 

  22. Badri, M., Badri, L., Touré, F.: Empirical analysis of object-oriented design metrics: Towards a new metric using control flow paths and probabilities. Journal of Object Technology 8(6), 123–142 (2009)

    Article  Google Scholar 

  23. Badri, M., Touré, F.: Evaluating the effect of control flow on the unit testing effort of classes: An empirical analysis. Advances in Software Engineering Journal (2012)

    Google Scholar 

  24. Badri, M., Drouin, N., Touré, F.: On Understanding Software Quality Evolution from a Defect Perspective: A Case Study on an Open Source Software System. In: Proceedings of the IEEE International Conference on Computer Systems and Industrial Informatics, Sharjah, UAE, December 18-20 (2012)

    Google Scholar 

  25. Drouin, N., Badri, M., Touré, F.: Metrics and Software Quality Evolution: A Case Study on Open Source Software. In: Proceedings of the 5th International Conference on Computer Science and Information Technology, Hong Kong, December 29-30 (2012)

    Google Scholar 

  26. Nagappan, N., Ball, T., Zeller, A.: Mining metrics to predict component failures. In: Proceedings of the 28th International Conference on Software Engineering (ICSE 2006), pp. 452–461. ACM (2006)

    Google Scholar 

  27. Ambu, W., Concas, G., Marchesi, M., Pinna, S.: Studying the evolution of quality metrics in an agile/Distributed project. In: Abrahamsson, P., Marchesi, M., Succi, G. (eds.) XP 2006. LNCS, vol. 4044, pp. 85–93. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  28. Lehman, M.M.: On understanding laws, evolution, and conservation in the large-program life cycle. Journal of Systems and Software 1(3), 213–221 (1980)

    MathSciNet  Google Scholar 

  29. Jermakovics, A., Scotto, M., Succi, G.: Visual identification of software evolution patterns. In: 9th International Workshop on Principles of Software Evolution (IWPSE 2007): in Conjunction with the 6th ESEC/FSE Joint Meeting, pp. 27–30 (2007)

    Google Scholar 

  30. Mens, T., Fernandez-Ramil, J., Degrandsart, S.: The Evolution of Eclipse. In: IEEE ICSM, pp. 386–395 (2008)

    Google Scholar 

  31. Yu, L., Ramaswamy, S., Nail, A.: Using bug reports as a software quality measure. In: Proceedings of the 16th ICIQ (2011)

    Google Scholar 

  32. Aggarwal, K.K., Singh, Y., Kaur, A., Lalhotra, R.: Empirical analysis for investigating the effect of object-oriented metrics on fault proneness: A replicated case study. Software Process: Improvement and Practice 16(1) (2009)

    Google Scholar 

  33. Fernandez-Ramil, J., Lozano, A., Wermelinger, M., Capiluppi, A.: Empirical studies of Open-Source Evolution. In: Mens, T., Demeyer, S. (eds.) Software Evolution, pp. 263–288. Springer, Berlin (2008)

    Chapter  Google Scholar 

  34. Chidamber, S.R., Kemerer, C.F.: A metric suite for object-oriented design. IEEE Transactions on Software Engineering 20(6), 476–493 (1994)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Drouin, N., Badri, M. (2013). Investigating the Applicability of the Laws of Software Evolution: A Metrics Based Study. In: Filipe, J., Maciaszek, L.A. (eds) Evaluation of Novel Approaches to Software Engineering. ENASE 2013. Communications in Computer and Information Science, vol 417. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-54092-9_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-54092-9_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-54091-2

  • Online ISBN: 978-3-642-54092-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics