Abstract:
Producing high-quality software within budget constraints and on a tight schedule is a crucial aspect of software projects. Much like the challenges faced in software development, software testing processes are prone to issues related to time and cost. As a result, accurately predicting effort in software testing is essential to mitigate these challenges and facilitate the efficient completion of testing. While there has been extensive research on testing effort estimation using conventional methods like UCP and TPA, the adoption of machine learning techniques is infrequent. Additionally, these traditional UCP and TPA methods lack support from contemporary techniques. In this research, we built an effort estimation model employing machine learning techniques, specifically support vector regression (SVR) and decision tree regression (DTR). Additionally, we incorporated an optimization technique—the Grey Wolf Optimizer (GWO) meta-heuristic algorithm to improve our model performance. To generate datasets based on TPA characteristics and principles, the study used questionnaires. We also used accuracy, MSE, and RMSE metrics to evaluate the model's performance. The evaluation revealed that the DTR model outperformed the SVR model in terms of accuracy, RMSE, and MSE. Specifically, the DTR model achieved values of 98%, 0.0034, and 0.0003, respectively, compared to 94%, 0.0521, and 0.0027 for the SVR model with the respect to accuracy, RMSE, and MSE. After applying the optimizer (GWO), the DTR model further outperforms the SVR model, achieving values of 99%, 0.0065, and 0.0000111, respectively, compared to 97%, 0.0730, and 0.0053 for the SVR model with the respect to accuracy, RMSE, and MSE. Future research directions include developing models that integrate TPA and FPA, supported by machine learning algorithms, to estimate effort across all levels of testing. Increasing the number of datasets, which is important to develop a model using deep learning, helps to fill the gap of study scarcity in this field.