Waterfall Process Model
Waterfall model is recognized as Classic Life CycleModel or Linear Sequential Model. This was the firststepwise sequential model given in 1970 by Winston W.Royce. Because of the cascading effect from one phase toanother this model is known as the waterfall model. Themodel formed the basis for most software developmentstandards and consists of the following phases: Requirementsspecification, Design, Coding, Testing and Debugging,Installation and Maintenance.
V Software Process Model
V Model is considered to be the extension of thewaterfall model. After moving in the linear fashion theprocess steps are bent upward after the coding phase. Fortop-down SE (i.e., forward engineering), the process startson the upper left and goes to the upper right. For bottom-up(i.e., reverse engineering), it starts on the upper right andgoes to the upper left. It is commonly used to identify therelationship between the development phase and the testingphase. V- Model is shown in figure given below. The modelfollows a well structured method in which each phase isimplemented by the detailed documentation of the previousphase .V- Model consists of number of phases. At the left sideof the model, verifications phases are there, coding is at thebottom and validation phases are at the right side of the V.
Incremental Development Model
“The incremental model delivers software in small,usable pieces, called “increments. In general, eachincrement builds on those that have already been delivered.”(Roger S. Pressman).Waterfall model of the software development requires itsusers to commit the requirement phase before the designbegins and the designer to commit specific design strategiesto commit design before implementation. Changes to therequirements require rework on requirements, design andimplementation . Keeping these weaknesses of thewaterfall in view incremental development model wasdeveloped. It sets off with an initial planning and ends withdeployment with the cyclic connections in between.As calendar time progresses, Incremental model applieslinear sequences in a staggered fashion. Each linearsequence delivers an increment of the software. Allrequirements are determined initially and individualincrements are allocated with subsets of requirements. Theincrements are developed in sequential series, with eachincremental release adding functionality. The incrementalapproach lessens overall effort leading to the earlier deliveryof initial system to the customer. Typically, there is moreeffort in requirements analysis and design, and less forcoding and integration due to which the overall schedulemay lengthen.
The goal of a prototyping-based development process isto overcome the limitations of the waterfall model. Thebasic idea was producing a throwaway prototype to help inunderstanding the requirements instead of freezing therequirements before any design or coding can proceed. Theprototype is produced on the basis of currently available setof requirements. The prototype helps customer to get thereal look and feel of the system, enabling them to betterunderstand what they actually want, leading more requiredfeatures of the system and less frequent changes . Figure2.7 given below shows the prototyping paradigm . Theparadigm begins with requirement gathering. Overallobjectives of the system are defined in the meeting of developers and customers, identifying the mainrequirements for the system leading to a quick design. Thisquick design represents the aspects of the system that arevisible to the users. The design leads to a prototype of thesystem. The prototype is given to customer/user forevaluation. After exploring the prototype customer/userprovides developers with their feedback i.e. what is correct,what needs to be modified, what is missing, what is notneeded, etc. Based on the feedback, the prototype ismodified to incorporate some of the suggested changes thatcan be done easily, and then the users and the clients areagain allowed to use the system. Iteration occurs as theprototype is tuned to satisfy the needs of the customer, whileat the same time enabling the developer to better understandwhat needs to be done.
Spiral Model  is an evolutionary development model,originally proposed by Boehm. It is said to be the risk drivenmodel combining iterative nature of prototype model andsystematic aspects of linear sequential model. It canaccommodate other models as special cases and providesguidance to determine which combination of models bestfits a given situation. The spiral model has evolved throughpractical experience after implementation of complexgovernment projects with new innovations in waterfallmodel in several years. The radial dimension modelrepresents the growing cost required in bring about the stepsto date; the angular dimension track the evolution made incompleting each cycle of the spiral. It is called risk-drivenbecause it identifies areas of uncertainties that are sources of project risk and structures activities based on the risks. Thedevelopment proceeds in repeating cycles of determiningobjectives, evaluating alternatives, prototyping anddeveloping, and then planning the next cycle. Each cycleinvolves a progression that addresses the same sequence of steps for each portion of the product and for each level of elaboration. Development builds on top of the results of previous spirals.Each cycle of the spiral commence with the recognition of
The intention i.e. (performance, functionality, ability toaccommodate change, etc.);
The unconventional resources i.e. (design A, design B,reuse, buy, etc.);
The constriction i.e. (cost, schedule, interface, etc.).
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 8, No. 9, December 201047http://sites.google.com/site/ijcsis/ISSN 1947-5500