An Excursion to Software Development Life Cycle Models

Unnati S. Shah, Devesh C. Jinwala, Sankita J. Patel · ACM SIGSOFT Software Engineering Notes · 2016

Software Engineering provides a standard way to develop and maintain a complex software. Industry uses software development Life Cycles (SDLC) to develop a software. SDLC plays an important role as it helps to define the software requirements, model the software component, reduce development and maintenance cost and finally provides manageable software. There exist numerous SDLC models viz. Waterfall, Incremental, Rapid, Agile, Hybrid etc. After a comprehensive study and analysis of existing SDLC models, I observe all models are complementary, not competitive. I divide all models into three broad categories viz. Traditional models, Agile models and Hybrid models. The main objective of the paper is to give a quick review of SDLC models and an effective answer to the most confusing question arise in software engineering practice "how to select an efficient SDLC model for practice?" Many factors viz. nature of requirements, the size of software development team, project size, customer interaction etc. have an effect on selection criteria. This paper presents a brief insight into each model and its comparative analysis. The analysis helps to understand the basic characteristics of each model and its applicability. Furthermore, the analysis helps software manager to select the appropriate model for practice

Read the paper · More papers on PaperTik