ABSTRACT
Software testing plays a crucial role in software quality assurance. It is, however, a time and resource consuming process. It is, therefore, important to predict as soon as possible the effort required to test software, so that activities can be planned and resources can be optimally allocated. Test code size, in terms of Test Lines Of Code (TLOC), is an important testing effort indicator used in many empirical studies. In this paper, we investigate empirically the early prediction of TLOC for object-oriented software using use case metrics. We used different machine learning algorithms (linear regression, k-NN, Naïve Bayes, C4.5, Random Forest, and Multilayer Perceptron) to build the prediction models. We performed an empirical study using data collected from five Java projects. The use case metrics have been compared to the well-known Use Case Points (UCP) method. Results show that the use case metrics-based approach gives a more accurate prediction of TLOC than the UCP method.
- Badri, M., Toure, F., Empirical Analysis of Object-Oriented Design Metrics for Predicting Unit Testing Effort of Classes. Journal of Software Engineering and Applications, 5 (7), July 2012.Google ScholarCross Ref
- Bruntink, M., Van Deursen, A., Predicting class testability using object-oriented metrics. in Proceedings of the 4th IEEE International Workshop on Source Code Analysis and Manipulation (SCAM 2004), pp. 136--145, September 2004. Google ScholarDigital Library
- Bruntink, M., van Deursen, A., An empirical study into class testability. Journal of Systems and Software, 79 (9), 2006. Google ScholarDigital Library
- Singh, Y., Kaur, A., Malhota, R., Predicting testability effort using artificial neural network. in Proceedings of the World Congress on Engineering and Computer Science, USA, 2008.Google Scholar
- Singh, Y., Saha, A., Predicting testability of eclipse, a case study. Journal of Software Engineering, 4 (2), 2010.Google ScholarCross Ref
- Zhou, Y., Leung, H., Song, Q., Zhao, J., Lu, H., Chen, L. and Xu, B., An in-depth investigation into the relationships between structural metrics and unit testability in OOS. Information Sciences, 55 (12), Science China, 2012.Google Scholar
- Jacobson, I., Christerson, M., Jonson, P., Overgaard, G., Object-Oriented Software Engineering, A Use Case Driven Approach, Addison-Wesley, 1993. Google Scholar
- Almeida, É.R.C., Abreu, B.T., Moraes, R., An Alternative Approach to Test Effort Estimation Based on Use Cases. in Proceedings of the International Conference on Software Testing, Verification and Validation. IEEE CS, 2009. Google ScholarDigital Library
- Chaudhary, P., Yadav, C.S., An Approach for calculating the effort needed on testing Projects. International Journal of Advanced Research in Computer Engineering & Technology, 1 (1), March 2012.Google Scholar
- Nagheshwaran, S., Test Effort Estimation Using Use Case Points. in Quality Week 2001, San Francisco, USA, 2001.Google Scholar
- Xiaochun, Z., Bo, Z., Fan, W., Chen Lu, Q.Y., Estimate Test Execution Effort at an Early Stage, An Empirical Study. in International Conference on Cyber World. IEEE CS, 2008. Google ScholarDigital Library
- Yi, Q., Bo, Z., Xiaochum, Z., Early Estimate the Size of Test Suites from Use Cases. in Proceedings of the 15th Asia-Pacific Software Engineering Conference, IEEE CS, 2008. Google ScholarDigital Library
- Ochodek, M., Nawrocki, J., Kwarciak, K., Simplifying effort estimation based on Use Case Points. Information and Software Technology, 53, pp. 200--213, 2011 Google ScholarDigital Library
- Badri, M., Badri, L., Flageol, W., On the Relationship between Use Cases and Test Suites Size, An Exploratory Study. ACM SIGSOFT Software Engineering Notes, 38 (4), July 2013. Google ScholarDigital Library
- Badri, M., Badri, L., Flageol, W., Predicting the size of test suites from use cases, An empirical exploration. H. Yenigün, C. Yilmaz, and A. Ulrich (Eds.), ICTSS 2013, LNCS 8254, pp. 114--132, November 2013.Google Scholar
- Badri, L., Badri, M., Toure, F., Exploring empirically the relationship between lack of cohesion and testability in object-oriented systems. in Kim, T.-H., Kim, H.-K., Khan, M.K., et al. (eds.) ASEA 2010. CCIS, vol. 117, pp. 78--92. Springer, Heidelberg, 2010.Google Scholar
- Badri, L., Badri, M., Toure, F., An empirical analysis of lack of cohesion metrics for predicting testability of classes. International Journal of Software Engineering and Its Applications, 5 (2), 2011.Google Scholar
- Gupta, V., Aggarwal, K.K., Singh, Y., A Fuzzy Approach for Integrated Measure of Object-Oriented Software Testability. Journal of Computer Science, 1 (2), 2005.Google Scholar
- Singh, Y., Kaur, A., Malhotra, R., Empirical validation of object-oriented metrics for predicting fault proneness models. Software Quality Journal, 18 (1), pp. 3--35, 2009. Google ScholarDigital Library
- Baudry, B., Le Traon, B., Sunyé, G., Testability analysis of a UML class diagram. in Proceedings of the 9th International Software Metrics Symposium. IEEE CS, 2003. Google ScholarDigital Library
- Baudry, B., Le Traon, Y., Sunyé, G., Jézéquel, J.M., Measuring and improving design patterns testability. in Proceedings of the 9th International Software Metrics Symposium (METRICS 2003). IEEE CS, 2003. Google ScholarDigital Library
- Baudry, B., Le Traon, Y., Sunyé, G., Improving the testability of UML class diagrams. in Proceedings of the International Workshop on Testability Analysis, Rennes, France, 2004.Google ScholarCross Ref
- Khan, R.A., Mustafa, K., Metric based testability model for object-oriented design (MTMOOD). ACM SIGSOFT Software Engineering Notes, 34 (2), 2009. Google ScholarDigital Library
- Le Traon, Y., Ouabdesselam, F., Robach, C., Analyzing testability on data flow designs. in Proceedings of the 11th International Symposium on Software Reliability Engineering (ISSRE 2000), pp. 162--173, October 2000. Google ScholarDigital Library
- Fan, W., Xiaohu, Y., Xiaochun, Z., Lu, C., Extended Use Case Points Method for Software Cost Estimation. in International Conference on Computational Intelligence and Software Engineering, 2009.Google Scholar
- Karner, G., Resource Estimation for Objectory Projects, Objective systems, 1993.Google Scholar
- Mohagheghi, P., Anda, B., Conradi, R., Effort Estimation of Use Cases for Incremental Large-Scale Software Development. in Proceedings of the International Conference on Software Engineering, ICSE'05, May 15-21, St. Louis Missouri, USA, 2005. Google ScholarDigital Library
- Robiolo, G., Orosco, R., Employing use cases to early estimate effort with simpler metrics. Innovations in Systems and Software Engineering, 4, 2008.Google Scholar
- Robiolo, G., Badano, C., Orosco, R., Transactions and Paths, two use case based metrics which improve the early effort estimation. in Proceedings of the Third International Symposium on Empirical Software Engineering and Measurement. IEEE CS, 2009. Google ScholarDigital Library
- Larman, C., Applying UML and Design Patterns, An introduction to object-oriented analysis and design and the unified process. Prentice Hall, 2004. Google ScholarDigital Library
- Bou Nassif, A., Capretz, L.F., Ho, D., Software effort estimation in the early stages of the software life cycle using a cascade correlation neural network model. 13th ACIS Int. Conference on Software Engineering, Artificial intelligence, Networking and Parallel/distributed Computing, IEEE, 2012. Google ScholarDigital Library
- Bou Nassif, A., Capretz, L.F., Ho, D., Calibrating Use Case Points, ICSE Companion'14, May 31-June 7, Hyderabad, India - Copyright ACM, 2014. Google ScholarDigital Library
- Carroll, E.R., Estimating Software Based on Use Case Points. OOPSLA'05, San Diego, California, USA, October 16-20, 2005. Google ScholarDigital Library
- Diev, S., Software estimation in the maintenance context. ACM SIGSOFT Software Engineering Notes, 31 (2), March 2006. Google ScholarDigital Library
- Wilson DR, Martinez TR, Improved heterogeneous distance functions. JAIR, 6(1), pp. 1--34, 1977. Google ScholarDigital Library
- Quinlan JR (1993) C4.5, Programs for machine learning. Morgan Kaufmann Publishers, New York. Google ScholarDigital Library
- Investigating the Accuracy of Test Code Size Prediction using Use Case Metrics and Machine Learning Algorithms: An Empirical Study
Recommendations
Source code size prediction using use case metrics: an empirical comparison with use case points
Software source code size, in terms of source lines of code (SLOC), is an important parameter of many parametric software development effort estimation methods. In this paper, we investigate empirically the early prediction of SLOC for object-oriented ...
Are Slice-Based Cohesion Metrics Actually Useful in Effort-Aware Post-Release Fault-Proneness Prediction? An Empirical Study
Background. Slice-based cohesion metrics leverage program slices with respect to the output variables of a module to quantify the strength of functional relatedness of the elements within the module. Although slice-based cohesion metrics have been ...
On the relationship between use cases and test suites size: an exploratory study
Software testing, which plays a crucial role in software quality assurance, is a time and resource consuming process. It is, therefore, necessary to estimate as soon as possible the effort required to test software, so that activities can be planned and ...
Comments