Analytical study of software development process model variants
Software Engineering is a branch of Computer Science that evolved as a result of urgent need to deal with decades of software crisis, characterized by low theoretical knowledge and practice of the construction of error-free and efficient software. The introduction of well-organized scientific, engineering and management strategies in the process of software development no doubt led to major breakthroughs, and solutions to software failures. One of the obvious game-changer in this regard is the evolution of Software Development Life Cycle, also known as Software Process Model for driving the different phases of software construction. A sound understanding of the process model is therefore inevitable, not just for software developers, but also to users and researchers. Such a theoretical cum practical understanding will enhance decisions on which process model is best for a particular job or perspective. This invariably, contributes immensely to the probability of success or failure of the project in question. Thus, the necessity for this research. This work presents an unambiguous expository of selected software development model variants. A total of four process model variants were studied, in a theoretical, visual and analytical manner. The variants were analyzed using strength versus weakness (SVW) tabular scenario. This work was concluded by presenting guides towards choice of these models. This research is expected to be a useful reference to software practitioners and researchers.