Abstract

Effort estimation is the most critical activity for the success of overall solution delivery in software engineering projects. In this context, the paper’s main contributions to the literature on software effort estimation are twofold. First, this paper examines the application of meta-heuristic algorithms to have a logical and acceptable parametric model for software effort estimation. Secondly, to unravel the benefits of nature-inspired meta-heuristic algorithms usage in optimizing Deep Learning (DL) architectures for software effort estimation, this paper presents a Deep Neural Network (DNN) model for software effort estimation based on meta-heuristic algorithms. In this paper, Grey Wolf Optimizer (GWO) and StrawBerry (SB) meta-heuristic algorithms are applied for having a logical and acceptable parametric model for software effort estimation. To validate the performances of these two algorithms, a set of nine benchmark functions having wide dimensions is applied. Results from GWO and SB algorithms are compared with five other meta-heuristic algorithms used in literature for software effort estimation. Experimental results showed that the GWO has comprehensive superiority in terms of accuracy in estimation. The proposed DNN model (GWDNNSB) using meta-heuristic algorithms for initial weights and learning rate selection, produced better results compared to existing work on using DNN for software effort estimation.

Highlights

  • Software project development is comprised of a different set of activities from requirement gathering to testing and maintenance; that need to be carried out in a specified time and budget [1]

  • Actualefforti − Estimatefforti Actualefforti b: MEAN MAGNITUDE OF RELATIVE ERROR (MMRE) Mean Magnitude of Relative Error (MMRE) measure is used for assessing software estimation technique performance

  • The values of MRE is calculated for each software project instance

Read more

Summary

Introduction

Software project development is comprised of a different set of activities from requirement gathering to testing and maintenance; that need to be carried out in a specified time and budget [1]. Software engineering is based on logical and analytical work. Compared to other kinds of engineering projects, software development is more complex because of the high rate of change in customer requirements and rapid advancement in technology. For effective software project management, it becomes a challenge to achieve specific objectives while satisfying a range of constraints [2]. The rapid trend in hardware advancement created a situation where the hardware is cheap as compared to the programmer. No matter how fast the hardware is, for tangible performance improvement, it is required to opti-

Methods
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

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.