Open Access

ARTICLE

Selection and Optimization of Software Development Life Cycles Using a Genetic Algorithm

Fatimah O. Albalawi, Mashael S. Maashi*
Department of Software Engineering, College of Computer and Information Sciences, King Saud University, Riyadh, 11451, KSA
* Corresponding Author: Mashael S. Maashi. Email:
(This article belongs to this Special Issue: Computational Intelligence for Internet of Medical Things and Big Data Analytics)

Intelligent Automation & Soft Computing 2021, 28(1), 39-52. https://doi.org/10.32604/iasc.2021.015657

Received 01 December 2020; Accepted 17 January 2021; Issue published 17 March 2021

Abstract

In the software field, a large number of projects fail, and billions of dollars are spent on these failed projects. Many software projects are also produced with poor quality or they do not exactly meet customers’ expectations. Moreover, these projects may exceed project budget and/or time. The complexity of managing software development projects and the poor selection of software development life cycle (SDLC) models are among the top reasons for such failure. Various SDLC models are available, but no model is considered the best or worst. In this work, we propose a new methodology that solves the SDLC optimization problem using a genetic algorithm. The methodology selects the best SDLC and optimizes the completion time of the selected model. This study aims to help project managers in a software development organization select the proper SDLC model for their projects and optimize the selected model by minimizing the project completion time. The proposed SDLC model selection approach is based on a selection matrix that consists of a set of selection criteria and information related to the project’s nature given by the project managers. Our methodology optimizes the selected SDLC model by reducing the project completion time and assigning duration for each phase. Several experiments were conducted to obtain the optimal completion time for the selected SDLC models. These experiments showed that our algorithm can optimally minimize the completion time of a given project and assign a duration for each phase. Experimental results showed that our methodology can reduce the completion time of a given project and produce realistic and optimal completion times for different SDLC models.

Keywords

Genetic algorithm; software development process; software development life cycle; SDLC; software project manager; optimization; evolutionary algorithms; search-based software engineering; SBSE; optimization problems

Cite This Article

F. O. Albalawi and M. S. Maashi, "Selection and optimization of software development life cycles using a genetic algorithm," Intelligent Automation & Soft Computing, vol. 28, no.1, pp. 39–52, 2021.

Citations




This work is licensed under a Creative Commons Attribution 4.0 International License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
  • 1310

    View

  • 893

    Download

  • 1

    Like

Share Link

WeChat scan