Test Metrics for Maintainability of Software: A Case Study on Searching and Sorting Programs

Rajani Dixit *, Brij Bhushan **
*-** Department of Computer Science and System Studies, University of Mewar, Rajasthan, India.
Periodicity:January - March'2020
DOI : https://doi.org/10.26634/jse.14.3.17226

Abstract

The main goal of software engineering is to develop an economical high- quality software product. The quality of a software product plays a critical role in decision making and impact the success of a business. To make a software product qualitative attributes need to be identified and then correlated to its quantitative measures. Hence a software metric values specify the structural complexity of a software product. In this research paper, six metric values such as Line of Codes (LOC), Cyclomatic Complexity (MVG), Lines of Comment (COM), Number of Methods (NOM), Coupling Between Objects (CBO) and Halstead Volume (HV) have been applied to investigate java-based two searching and five sorting programs. Three software estimation tools have been applied to them to obtain a conclusion on their implementation pertaining to referenced metrics. Additionally, a maintainability Index metric has been determined from the base metric to demonstrate comparative maintainability of the source code. This relative study demonstrates the analysis of the result for the same programs. Correctness, Fault-proneness, Modularity and threats of Validity are also discussed in this study.

Keywords

Software Engineering, Line of Code, Cyclomatic Complexity, Halstead Volume.

How to Cite this Article?

Dixit, R., and Bhushan, B. (2020). Test Metrics for Maintainability of Software: A Case Study on Searching and Sorting Programs. i-manager's Journal on Software Engineering, 14(3), 29-36. https://doi.org/10.26634/jse.14.3.17226

References

[1]. Akiyama, F. (1971, August). An example of software system debugging. In IFIP Congress (1) (Vol. 71, pp. 353- 359).
[2]. Albrecht, A.J. (1979). Measuring application development productivity. In Proceedings of Joint Share, Guide, and IBM Applications Development Symposium.
[3]. Ambu, W., Concas, G., Marchesi, M., & Pinna, S. (2006, June). Studying the evolution of quality metrics in an agile/distributed project. In International Conference on Extreme Programming and Agile Processes in Software Engineering (pp. 85-93). Berlin, Heidelberg: Springer.
[4]. Chidamber, S. R., & Kemerer, C. F. (1994). A metric suite for object-oriented design. In IEEE Transactions on Software Engineering, 20(6), 476-493.
[5]. Dagpinar, M., & Jahnke, J. H. (2003). Predicting maintainability with object-oriented metrics – An empirical comparison. In Proceedings of the 10th Working Conference on Reverse Engineering (WCRE '03) (pp. 155- 164).
[6]. Fenton, N. E., & Pfleeger S. L. (1996). Software Metrics: A Rigorous and Practical Approach (2nd Edition), International Thomson Computer Press.
[7]. Fraser, S., Beck, K., Booch, G., Coplien, J., Johnson, R., & Opdyke, B. (1997). Beyond the hype (panel) do patterns and frameworks reduce discovery costs?. ACM SIGPLAN Notices, 32(10), 342-344.
[8]. Halstead, M. H. (1977). Elements of Software Science (Vol. 7, pp. 127). New York: Elsevier.
[9]. Harrison, R., Counsell S., & Nithi, R. (1998). Coupling metrics for object-oriented design, In Proceedings of Fifth International Software Metrics (pp. 150-157). IEEE.
[10]. ISO/IEC (2011). Systems and Software Engineeering - Systems and Software Quality Requirements and Evaluation (SQuaRE) (ISO/IEC 25010). Retrieved from https://www.iso. org/obp/ui#iso:std:iso-iec:25010:ed-1:v1:en
[11]. Lee, Y., Yang, J., & Chang, K. H. (2007, October). Metrics and evolution in open source software. In Seventh International Conference on Quality Software (QSIC 2007) (pp. 191-197). IEEE.
[12]. Lorenz, M., & Kidd, J. (1994). Object-oriented software metrics: A practical guide. Prentice-Hall, Inc.
[13]. McCabe, T. J. (1976). A complexity measure. IEEE Transactions on software Engineering, 4, 308-320.
[14]. Murgia, A., Concas, G., Pinna, S., Tonelli, R., & Turnu, I. (2009, May). Empirical study of software quality evolution in open source projects using agile practices. In Proceedings of the 1st International Symposium on Emerging Trends in Software Metrics.
[15]. Nagappan, N., Ball, T., & Zeller, A. (2006, May). Mining metrics to predict component failures. In th Proceedings of the 28 International Conference on Software Engineering (pp. 452-461).
[16].Oman, P., & Hagemeister, J. (1992, January). Metrics for assessing a software system's maintainability. In Proceedings Conference on Software Maintenance (pp. 337-338). IEEE Computer Society.
[17]. Pascarella, L., Bruntink, M., & Bacchelli, A. (2019). Classifying code comments in Java software systems. Empirical Software Engineering, 24(3), 1499-1537.
[18].Quality_Business, (2020). Wikipedia. https://en. wikipedia.org/wiki/quality_(business)
[19]. Szulewski, P. A., Sodano, N. M., Rosner, A. J., & DeWolf, J. B. (1984). Automating Software Design Metrics (RADCTR- 84-27). Rome, NY: Rome Air Development Center.
[20]. Xie, G., Chen, J., & Neamtiu, I. (2009, September). Towards a better understanding of software evolution: An empirical study on open source software. In 2009 IEEE International Conference on Software Maintenance (pp. 51-60). IEEE.
[21]. Yu, L., Ramaswamy, S., & Nair, A. (2013). Using bug reports as a software quality measure. In Proceedings of the16th International Conference on Information Quality (ICIQ '11) (pp. 277-286).
[22]. Zhang, H., & Kim, S. (2010). Monitoring software quality evolution for defects. IEEE Software, 27(4), 58-64.
If you have access to this article please login to view the article or kindly login to purchase the article

Purchase Instant Access

Single Article

North Americas,UK,
Middle East,Europe
India Rest of world
USD EUR INR USD-ROW
Pdf 35 35 200 20
Online 35 35 200 15
Pdf & Online 35 35 400 25

Options for accessing this content:
  • If you would like institutional access to this content, please recommend the title to your librarian.
    Library Recommendation Form
  • If you already have i-manager's user account: Login above and proceed to purchase the article.
  • New Users: Please register, then proceed to purchase the article.