COMPARISON OF VARIOUS SDLC MODELS SADAF ATEEQ M.TECH in dept of CSE from INTEGRAL UNIVERSITY MR. MOHAMMAD SHUAIB Department of CSE from INTEGRAL UNIVERSITY ABSTRACT There are various SDLC (Software Development Life Cycle Models) having its own properties, advantage and limitation. SDLC models are very important for developing the software in systematic and disciplined manner. SDLC model gives a theoretical guideline regarding development of the software. The concept of System Life Cycle Model came into existence that emphasized on the need to follow some structured approach towards building new or improved system. According to requirement software industry people use different models to develop different software. None of the model is capable to address the issues of client satisfaction. We need to understand which SDLC would generate most successful result when employed. Employing proper SDLC allows the project managers to regulate whole development strategy of the software. For software development we need to compare the various models of SDLC. Comparing SDLC model is such a difficult task as there is no mathematical theorem or physical device available. The essence of this paper is to analyze some methodologies that could result in successful comparison of the SDLC models. KEYWORDS: - SDLC, water fall model, spiral model, prototype model, iterative model Introduction A Software consists of related documents, programs and procedure that contain a collection that has been established to be a part of software engineering procedures. Software development is a risky proposition. Many projects fail, at great expense. The development methodologies described here represent ways to manage that risk[1]. Moreover, the aim of software engineering is to create a suitable work that construct project of high quality[2].to increase the effectiveness of any project various types of SDLC models has been introduced like waterfall model, Prototype Model, Spiral Model etc. each model has its own advantage and limitations. Water fall model:- The Waterfall Model was first Process Model to be introduced. It is also referred to as a 176
linear-sequential life cycle model. each phase must be completed before the next phase can begin and there is no overlapping in the phases.[3] Advantage:- Simple and easy to understand and use Easy to manage due to the rigidity of the model. each phase has specific deliverables and a review process. Phases are processed and completed one at a time. Works well for smaller projects where requirements are very well understood. Clearly defined stages. Well understood milestones. Easy to arrange tasks. Process and results are well documented Limitation:- No working software is produced until late during the life cycle. Fig1:- waterfall model 177 High amounts of risk and uncertainty. Not a good model for complex and object-oriented projects. Poor model for long and ongoing projects. Not suitable for the projects where requirements are at a moderate to high risk of changing. So risk and uncertainty is high with this process model. It is difficult to measure progress within stages. Cannot accommodate changing requirements. No working software is produced until late in the life cycle. Adjusting scope during the life cycle can end a project.
Spiral model:- The spiral model is similar to the incremental model, with more emphases placed on risk analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation[4] Fig 2:- spiral model Advantage:- High amount of risk analysis hence, avoidance of Risk is enhanced. Good for large and missioncritical projects. Strong approval and documentation control. Additional Functionality can be added at a later date. Limitation:- Can be a costly model to use. Risk analysis requires highly specific expertise. Project s success is highly dependent on the risk analysis phase. Doesn t work well for smaller projects.[ 3] prototype model: In this model prototype is built as per the client requirements. A prototype model is not a standalone, complete development methodology, but rather an approach to handle selected part of a larger, more traditional development methodology. 178
Fig3:- prototype model Advantage:- 1) Users are actively involved in the development 2) When prototype Model is shown to the user, he gets a proper clarity about his requirements. And feel the functionality of the software, so can suggest the changes and modifications. 3) It reduces risk of failure, as potential risks can be identified early and steps can be taken to remove that risk. 4) The customer does not need to wait long for working software. Disadvantages:- 1) Wastage of Time and money to build prototype, if client not satisfied. 2) Too many changes can disturb the rhythm of the developer team. 3) Long term procedure. 4) It follows the Quick and dirty approach- the prototype is through away after showing to the client. [5] Iterative and incremental model: - In this model all the activities are repeatable. Multiple activities run parallel. The phases of waterfall model are employed in such a manner that the result of the increment is used back as the input for the next increment. Advantages 1) After using first iteration model, user can give their suggestion and demand for change. 2) It is flexible to the customer's requirements and easy to manage model. 3) This model is used when requirements are clear to some extend 179
but project scope requires pure linear approach. 4) Testing and debugging during smaller iteration is easy. Disadvantages 1) Each phase of an iteration is very rigid and do not overlap each other. 2) Mapping requirements to increments may not be easy so managing documents are very difficult. 3) During development process changes are being done at first iteration. As if continuous to change and it never finished. 4) More management attention is required due to frequently changes in requirements. [5] Fig 4: iterative and increamental model Features /models WATERFALL MODEL SPIRAL MODEL PROTOTYPE MODEL ITERATIVE MODEL Understanding requirements/requirement specification Beginneing Beginneing Not well understood at begineeing Well understood at begineeing Duration long long long Not very long cost low expensive high medium Cost control yes Almost yes no no 180
Documentation and training required vital yes weak yes Guarentee of success less high good high Initial product feel no no yes no Client satisfaction low ------ high high Risk involvement High Very low low medium User invovement low high high high flexibility Rigid flexible flexible Less flexible Simplicity Simple Intermedite Simple Intermediate Integrity and security Least High Weak Robust Maintenance Least glamorous Typical routine maintenance REFERENCE:- [1] Comparing Software Development Life Cycles by Jim Hurst [2] Nabil Mohammed Ali Munassar1 and A. Govardhan2 a comparison between five models of SDLC models IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010. [3]http://www.tutorialspoint.com/sdlc/ sdlc_waterfall_model.htm [4] http://istqbexamcertification.com [5] Naresh Kumar, A. S. Zadgaonkar, Abhinav Shukla Evolving a New Software Development Life Cycle Model SDLC-2013 with Client Satisfaction, International Journal of Soft Computing and Engineering (IJSCE) ISSN: 2231-2307, Volume-3, Issue-1, March 2013. [6] Apoorva Mishra and deepty dubey assistant professor A Comparative Study of Different Software Comparison of various SDLC Models [5,6,7,8] 181 Routine maintenance Overlapping phases No overlapping Yes Yes No Implementation Easy Complex Easy Easy Promoted maintainability Development Life Cycle Models in Different Scenarios International Journal of Advance Research in Computer Science and Management Studies volume 1,Issue 5, October 2013. [7] seema, sona malhotra kurukshetra university, analysis and tabular comparison of popular SDLC models International journal of advances in computing and information technology. [8]radhika D almani saurashtra university gujrat comparison of different SDLC Models international journal of computer application and information technology vol 2, issue 1 jan2013.