Abstract
The issue of estimating the size of the software in the first stages of work on the project is important, because the obtained size can be used to predict the cost, duration and labor intensity. The share of web applications among all software projects developed today is significant, as is the popularity of programming languages used in web development. The leader in frequency of use is the PHP language with its numerous frameworks. The purpose of the study is to build a non-linear regression model for estimating the size of web applications created using the Symfony PHP framework, using a normalizing decimal logarithm transformation. To build the model, 50 web application projects were found on the GitHub platform, which were created using the Symfony framework. Using the PhpMetrics tool, the following class diagram metrics for these projects were obtained: the number of classes, the average number of methods per class, the depth of the inheritance tree. This choice of metrics is due to the possibility of obtaining such information about the project under development at the early stages of design and the absence of multicollinearity among the selected metrics. Empirical data were tested for normality. The check showed that the data are non-Gaussian, so they were normalized using a decimal logarithm, an outlier check was performed, the outliers were eliminated, and for the remaining data, a linear regression model was built for the normalized data and a nonlinear one for the original data. For comparison, a linear regression model was also constructed for the empirical data under the assumption of normal distribution. The comparison of the models showed a significant improvement in the quality of estimating the size of web applications created using the Symfony framework when applying non-linear regression analysis.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
More From: Herald of Khmelnytskyi National University. Technical sciences
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.