Volume 2, Spl. Issue 2 (2015) e-ISSN: 1694-2329 | p-ISSN: 1694-2345 A Comparison Between Evolutionary and Prototype Model Aditi Thakur Department of Computer Science, Baddi University of Emerging Sciences and Technology ABSTRACT: In this paper, I have examined a number of methods for describing or modelinghow software systems are developed. It begins with background and definitions of traditionalsoftware life cycle models that dominate most textbook discussions and current software development practices. Software systems come and go through a series of passages that account for their inception, initial development, productive operation, upkeep, and retirement from one generation to another.This research paper is 1. INTRODUCTION In incremental model the whole requirement is divided into various builds. Multiple development cycles take place here, makingthe life cyclea “multi-waterfall” cycle. Cycles are divided up into smaller, more easily managed modules. Each modulepasses through the requirements, design, implementation and testing phases. A working version of software is produced during the first module, so you have working software early on during the software life cycle. Each subsequent release of the module adds function to the previous release. The process continues till the complete system is achieved. Incremental model in software engineering is a one which combines the elements of waterfall model which are then based on the existing research article and analysis of increment model. Keywords: Software Management Processes, SoftwareDevelopment, Development Models, Software Development LifeCycle, Comparison between five models of Software Engineering. applied in an iterative manner. It basically delivers a series of releases called increments which provide progressively more functionality for the client as each increment is delivered. The incremental build model is a method of software development where the product is designed, implemented and tested incrementally (a little more is added each time) until the product is finished. It involves both development and maintenance. The product is defined as finished when it satisfies all of its requirements. This model combines the elements of the waterfall model with the iterative philosophy of prototyping. 2. INCREMENTAL MODEL: In incremental model the whole requirement is divided into various builds. Multiple development cycles take place here, making the life cycle a “multi-waterfall” cycle. Cycles are divided up into smaller, more easily managed modules. Each module passes through the requirements, design, implementation and testing phases. A working version of software is produced during the first module, so you have working software early on during the software life cycle. Each subsequent release of the module adds function to the previous release. Incremental model in software engineering is a one which combines the elements of waterfall model which are then applied in an iterative manner. It basically delivers a series of releases called increments which provide progressively more functionality for the client as each increment is delivered. In this each successive version of product is fully functioning software capable of performing more useful work then the previous version. In this initial product model or skeleton is refined into increasing levels of capability by adding new functionalities in successive version. The incremental process models are effective the incremental build model is a method of software development where the product is designed, implemented and tested incrementally until the product is finished. It involves both development and maintenance. The product is defined as finished when it satisfies all of its requirements. prototyping. Referring to the fig. here, the incremental model applies linear sequences in a staggered fashion as calendar time progresses. The incremental model combines elements of the linear sequential model with the iterative philosophy of Incremental development deals with delivering the system broken down into increments with each increment delivering part of the required functionality, rather than a single delivery date. User requirements are prioritized and the highest priority requirements are included in early increments. Each linear sequence produces a deliverable “increment” of the software. For example, word-processing software developed using the incremental paradigm might deliver basic file management, editing and document production capabilities in the second increment; spelling and grammar checking in the third increment; and advanced page layout capability in the fourth increment. When an incremental model is used, the first increment is often a core product. That is, basic requirements are addressed, but many supplementary features (some known, 57 BUEST, Baddi RIEECE -2015 Volume 2, Spl. Issue 2 (2015) e-ISSN: 1694-2329 | p-ISSN: 1694-2345 others unknown) remain undelivered. As a result of use and/or evaluation, a plan is developed for the next increment. The plan addresses the modification of the core product to better meet the needs of the customer and the delivery of additional features and functionality. Once the development of an increment is underway, the requirements are frozen though requirements so that later increments can continue to evolve. Customer value can be delivered with each increment so system functionality is available earlier in the development process. Early increments act as a prototype to help draw out requirements for later increments. This therefore results in a lower risk of overall project failure.Although this model lacks process visibility and offers poor structure to the project because of the ad-hoc manner of development, the Author would recommend this model over the Waterfall method. The Author prefers this model because of the “Throw-away prototyping” feature of this model. 1.2 DIAGRAM OF INCREMENTAL LIFE CYCLE MODEL:- This model combines the elements of the waterfall model with the iterative philosophy of prototyping.Increment process model are effective in situations where requirements are defined precisely and there is no BUEST, Baddi RIEECE-2015 confusion about the functionality of the final product. In this after every cycle, a useable product is given to customer. These models are popular particularly when we have to quickly deliver a limited functionality system. 58 Volume 2, Spl. Issue 2 (2015) Incremental development slices the system functionality into increments (portions). In each increment, a slice of functionality is delivered through cross-discipline work, from the requirements to the deployment. The unified process groups increments/iterations into phases: inception, elaboration, construction, and transition.Any difficulty in design, coding and testing a modification should signal the need for redesign or re-coding. Modifications should fit easily into isolated and easy-tofind modules. If they do not, some redesign is possibly needed. As from the diagram you can see that there are 5 phases (tasks) which are carried out in each increment. The first increment is often a core product where the basic requirements are addressed and the supplementary features are added in the next increments. The core product is used and evaluated by the client. Once the core product is evaluated by the client there is plan development for the next increment. Thus in every increment the needs of the client are kept in mind and more features and functions are added and the core product is updated. This process continues till the complete product is produced.The increments earlier to the main increment are called as e-ISSN: 1694-2329 | p-ISSN: 1694-2345 IT’S BASICALLY: Then apply waterfall model into each increment. The system put into production when first increment is delivered. As time passes additional increments are completed and added to working system. Phases on each increment are sequential. Divide overall projects into number of increments 1.3 DIAGRAM (INCREMENTAL BUILD MODEL “stripped down” versions of the final product. These increments form a base for customer evaluation. On this basis client can suggest new requirements if required.If there are less number of employees to work on theproject. Incremental development model is very useful to complete the project before the deadline. In a project early increments can be done with less number of people. In case if the core product is well-defined and understood more employees can be added if needed in the future increments. One of the benefits of Incremental process model is that it can be planned to manage technical risks. 1.3.1 MERITS: Initial product delivery is faster. Lower initial delivery cost. Core product is developed first i.e. main functionality is added in the first increment. After each iteration, regression testing should be conducted. During this testing, faulty elements of the software can be quickly identified because few changes are made within any single iteration. With each release a new feature is added to the product. Customer can respond to feature and review the product. Risk of changing requirement is reduced Work load is less. Prototypes are very visual, hence no ambiguities Generates working software quickly and early during the software life cycle. 59 It is easier to test and debug during a smaller iteration.In this model customer can respond to each built. Lowers initial delivery cost. Easier to manage risk because risky pieces are identified and handled during it’d iteration. Happier customers since you help them define requirements Flexibility in modifying requirements. 1.3.2 DEMERITS: It is difficult to divide the problem into several functional units which can be incrementally implemented and delivered. This model is used especially when customer prefers to receive the product is increments to be able to start using different features. Needs good planning and design. BUEST, Baddi RIEECE -2015 Volume 2, Spl. Issue 2 (2015) e-ISSN: 1694-2329 | p-ISSN: 1694-2345 Needs a clear and complete definition of the whole system before it can be broken down and built incrementally. Total cost is higher than waterfall. Requires good analysis. Resulting cost may exceed the cost of the organization. Each phase of an iteration is rigid and do not overlap each other. 1.4 WHEN TO USE INCREMENTAL MODEL:2. SPIRAL MODEL The spiral model is a risk-driven process model generator for software projects. Based on the unique risk patterns of a given project, the spiral model guides a team to adopt elements of one or more process models, such as incremental, waterfall, or evolutionary prototyping. [1] The Spiral Life Cycle Model is a type of iterative software development model which is generally implemented in high risk projects. It was first proposed by Boehm. In this system development method, we combine the features of both, waterfall model and prototype model. In Spiral model we can arrange all the activities in the form of a spiral. Spiral model is also called as meta-model because in a way it comprises of other models of SDLC. Both waterfall and prototype models are used in it. [2] The spiral model, also known as the spiral lifecycle model, is a systems development lifecycle (SDLC) model used in information technology (IT). This model of development combines the features of the prototyping model and the waterfall model. The spiral model is favored for large, expensive, and complicated projects. [3] Each loop of spiral model represents a phase of software process. This model is much more flexible than any other model, since exact number of phases through which project is developed is not fixed in this model. The radial dimension of model represents cumulative costs. Each path around spiral is indicative and increased costs. Angular dimension represent progress made in completing each cycle. Each loop of spiral from X-axis clockwise through angel 360 which represents one phase. BUEST, Baddi RIEECE-2015 This model can be used when the requirements of the complete system are clearly defined and understood. Major requirements must be defined; however, some details can evolve with time. There is a need to get a product to the market early. A new technology is being used Resources with needed skill set are not available There are some high risk features and goals. One phase is split roughly into four sectors of major activities: PLANNING: - Determination of objective, constraints and alternatives. RISK ANALYSIS: - Analyze alternative and attempt to identify and resolve risk involved. DEVELOPMENT: - Product development and testing product. ASSESSMENT: - Customer evaluation. [4] The spiral model follows creation of a series of prototypes for refining the understanding of the requirements. The kind of approach is best suited to projects that are not at all clearly defined and a clear solution is yet to be arrived at. This model provides an opportunity to build various prototypes to understand the problem better and slowly arrive at a solution using the prototypes iteratively. The project starts with prototypes and ends with prototypes being developed into fully functional systems. It allows for a lot of flexibility from a customer and changing requirements perspective. [5] 2.1 Use of the QuadrantsFirst quadrant (Objective Setting):-During the first quadrant, it is needed to identify the objectives of the phase. Examine the risks associated with these objectives. Second Quadrant (Risk Assessment and Reduction):- 60 Volume 2, Spl. Issue 2 (2015) e-ISSN: 1694-2329 | p-ISSN: 1694-2345 Detailed analysis is carried outfor each identified project risk. Steps are taken to reduce the risks. For example, if there is a risk that the requirements are inappropriate, a prototype system may be developed. Skills required, to evaluate and review project from time to time, need expertise. Rules and protocols should be followed properly to effectively implement this model. Doing so, through-out the span of project is tough. It is not suitable for low risk projects. Amount of documentation required in intermediate stages makes management of project very complex affair.[10] Third Quadrant (Development and Validation): Develop and validate the next level of the product after resolving the identified risks. Fourth Quadrant (Review and Planning): Review the results achieved so far with customer and plan the next iteration around spiral. Progressively more complete version of software gets built with each iteration around spiral. [6] the the the the 2.3 Merits of Spiral model: High amount of risk analysis hence, avoidance of Risk is enhanced. Good for large and mission-critical projects. Strong approval and documentation control. Additional Functionality can be added at a later date. Software is produced early in the software life cycle. [7] It is suitable for high risk projects, where business needs may be unstable. Project estimates in terms of schedule, cost etc become more and more realistic as the project moves forward and loops in spiral get completed. Changes can be introduced later in the life cycle as well. And coping with these changes isn’t a very big headache for the project manager. Spiral Life Cycle Model is one of the most flexible SDLC models in place. Development phases can be determined by the project manager, according to the complexity of project.[8] 2.4 Demerits of Spiral model: 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.[9] Cost involved in this model is usually high. It is a complicated approach especially for projects with a clear SRS. 61 3. When to use Spiral model When costs and risk evaluation is important For medium to high-risk projects Long-term project commitment unwise because of potential changes to economic priorities Users are unsure of their needs Requirements are complex New product line Significant changes are expected (research and exploration).[11] 4. CONCLUSION AND FUTURE WORK There are many existing models for developing systems for different sizes of projects and requirements. 2. These models were established between 1970 and 1999. 3. Waterfall model and spiral model are used commonly in developing systems. 4. Each model has advantages and disadvantages for the development of systems, so each model tries to eliminate the disadvantages of the previous model. 1. Finally, some topics can be suggested for future works: 1. Suggesting a model to simulate advantages that are found in different models to software process management. 2. Making a comparison between the suggested model and the previous software processes management models. 3. Applying the suggested model to many projects to ensure of its suitability and documentation to explain its mechanical work. [12] REFERENCES 1. en.wikipedia.org/wiki/spiral_model. 2.www.answer4u.com/2011/12/spiralmodel. 3.searchsoftwarequality.techtarger.com/definition/spiral_model. 4.3rd edition k.k.agrawal,yogeshsingh(new age international publisher). 5.careeride.com/testing-spiralmodel-model.aspx. 6.Spiral atic.mil/cgi_bin/getTRDoc?AP=ADA382590. 7. istbexamcertification.com. 8.ianswer4u.com. 9. istbexamcertification.com. 10. ianswer4u.com. 11. istbexamcertification.com. 12.www.ijcsi.org/papers/7-5-94. BUEST, Baddi RIEECE -2015
© Copyright 2026 Paperzz