2. Types of software life cycle model
Classic Waterfall model
Iterative Lifecycle model
Evolutionary modelPrototyping model
Spiral model
3. Evolutionary Model
This life cycle model is sometimes referred to as the successive versions model or the
incremental model.
In this life cycle model, first a simple working system implementing only a few basic
features is built and delivered to the customer.
It is sometime referred to as design a little, build a little, test a little, deploy a little
model.
6. It is very useful in a large project where you can easily find a module for step by
step implementation. The evolutionary model is used when the users need to start
using the many features instead of waiting for the complete software.
Evolutionary Model
The evolutionary model is also very useful in object-oriented software
development because all the development is divided into different
units.
7.
8. •In the incremental life cycle model, the requirements of the software are first
broken down into several modules.
•The development team first develops the core modules of the system.
•Once the initial core features are developed, these are refined into increasing
levels of capability by adding new functionalities in successive versions.
•Each incremental version is usually developed using an iterative waterfall model of
development.
•Each delivered version of the software incorporates additional features over the
previous version and also refines the features that were already delivered to the
customer.
Evolutionary Model
9. Advantages
•The big advantage of the evolutionary model is that the user has checked
every stage during the development and it is helpful in achieving customer
confidence.
•There are fewer chances of errors because all the modules are well seen.
•It helps to reduce the risk of software projects.
•Minimize serious problems during testing.
10. Disadvantages
•The delivery of full software can be late due to different changes by customers
during development.
•It is difficult to divide the problem into several parts, that would be acceptable
to the customer which can be incrementally implemented and delivered.
12. Applicability of the evolutionary model
•The evolutionary model is normally useful for very large products,
where it is easier t o find modules for incremental implementation.
•The evolutionary model is well-suited to use in object-oriented
software development projects.
13. Prototype model
A prototyping model suggest that before carrying out the development
of the actual software, a working prototype of the system should be
built.
A prototype is a toy implementation of thesystem.
Prototype is a working model of software with some limited
functionality.
Prototyping is used to allow the users evaluate thedeveloper
proposals and try them out before implementation.
14. How does the prototype
model look?Requirement analysis
quick
design
Build
prototype
Customer
evaluation of
prototype
Refine requirements
according to the
customer suggestion
Design
Implement Test Maintain
16. Steps of the prototype model
Requirements gathering and Analysis:
A prototype model begins with requirements analysis, andthe
requirements of the system are define in detail. The user is interviewed
in order to know the requirements of the system.
Quick design:
When requirements are known, a quick design for thesystem is created. It
is not a detailed design , it includes the important aspects of the
system, which gives an idea of the system to the user.
17. Build prototype:
Information gathering from quick design is modified to forma
prototype .It represents a ‘rough’ design of the requiredsystem.
Customer evaluation of prototype:
The build prototype is presented to the customer for his/her
evaluation.
Prototype refinement:
Once the user evaluate the prototype, it is refined according to the
requirements When the user is satisfied to the developed prototype, a final
system is developed based on the final prototype , which is developed by the
iterative method means we design the system according to the final prototype ,
after that implement , test the product to find the error and at last we maintain
the system.
18. Need of the prototype model:-
Prototype provides a method to examine designproblems and
evaluating solutions.
“…Prototypes are not self explanatory….Clarifying what aspects of a
prototype correspond to the eventualartifact─ and what don’t─ is a
key part of successfulprototyping.”
The development of the prototype model is expensive but is a good
model because it satisfy all the requirements of the customers.
19. Advantages of the prototype model:-
It provides a working model to the user early in the process,
enabling early assessment and increasing the user confidence.
The developer gains the experience and insight by developing aprototype ,
thereby resulting Ibetter implementation of the requirements.
It helps in reducing the risk associated to the project.
The prototyping model serves to clarify requirements , which are not clear,
hence ambiguity and improving communication between developer and user.
20. There is a great involvement of the users in software
development. Hence the requirements of the users aremet
to the greatestextent.
Advantages of the prototype model:-
21. Disadvantages of the prototype model
If the user is not satisfied with developed prototype, then a new
prototype is developed . This process goes on until a perfect prototype
evolves. Thus this model is time consuming and expensive.
The developer loses focus of the real purpose of the prototype and
compromises on the quality of theproduct.
22. Disadvantages of the prototype model
Prototype model can lead to the false expectations. It often creates a
situation where the user believes thatthe development of the system is
finished when it is not.
The primary goal of the prototype model is rapid development. Thus,
the design of the system may suffer as it built in a series of layers
without considering integration of all the othercomponents.
24. SPIRAL MODEL
The spiral model, also known as the spiral lifecycle model, is a systems
development 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.
15
26. Quadrant 1:
Determine objectives and identify alternative solutions
The objectives are investigated, elaborated, and analyzed. Based on
this, the risks involved in meeting the phase objectives are identified. In
this quadrant, alternative solutions possible for the phase under
consideration are proposed.
Quadrant 2:
Identify and resolve risks During the second quadrant, the
alternative solutions are evaluated to select the best possible
solution. To be able to do this, the solutions are evaluated by
developing an appropriate prototype.
27. Quadrant 3:
Review and plan for the next phase
Activities during the third quadrant consist of developing and verifying
the next level of the software. At the end of the third quadrant, the
identified features have been implemented and the next version of the
software is available.
Quadrant 4:
Develop next level of the product
Activities during the fourth quadrant concern reviewing the results of the
stages traversed so far (i.e. the developed version of the software) with
the customer and planning the next iteration of the spiral.
28. SPIRAL MODEL
STEPS IN SPIRAL MODEL:-
Planning and Identification
Risk Analysis
Engineering
Evaluation
16
29. STEPS IN SPIRAL MODEL
Planning and Identification
This phase starts with gathering the business requirements in the baseline spiral.
In the subsequent spirals as the product matures, identification of system
requirements, subsystem requirements and unit requirements are all done in this
phase.
This phase also includes understanding the system requirements by continuous
communication between the customer and the system analyst. At the end of the
spiral, the product is deployed in the identified market.
Determining objectives,alternatives,constraints
Objectives: functionality,performance,hardware/software interface,critical success
factor
Alternatives: build,reuse,buy,sub-contract etc.
Constraints:cost,schedule,interface etc.
17
30. STEPS IN SPIRAL MODEL
Risk Analysis
Study alternatives related to objective and constraints.
Requirements are studied and brain storming sessions are done to
identify the potential risks (lack of experience,new technology,tight
schedules,poor process)
Once the risks are identified , risk mitigation strategy is planned and
finalized
18
31. STEPS IN SPIRAL MODEL
Construct or Engineering
Next level prototype are developed
The Construct phase refers to production of the actual software
product at every spiral.
Typical activities:
o Create a design
o Review design
o Develop code
o Inspect code
o Test product
19
32. STEPS IN SPIRAL MODEL
Evaluation (plan for next phase)
Customers evaluate the software and provide their feedback and approval.
Develop project plan
Develop configuration management plan
Develop test plan
Develop installation plan.
20
35. WHY SPIRAL MODEL INSTEAD OF
WATERFLOW MODEL???
Waterflow model follows certain steps which works in a unidirectional maaner.
This prevents in going back and change something if any problems occur and the
system or software may fail
Does nothing for Risk management
To handle these limitation spiral model was developed.
26
36. SPIRAL MODEL AND WATERFALL
MODEL
SPIRAL MODEL WATERFALL MODEL
1.Spiral model is not suitable for small projects. 1.Waterfall model is suitable for small
projects.
2.Better risk management. 2. High amount of risk and uncertainty.
3. Process is complex. 3. Easy to understand.
4. The process may go indefinitely. 4. Stages are clearly defined.
27
37. SPIRAL MODEL AND WATERFALL
MODEL
Spiral Model Waterfall Model
5. This model is suitable for long and
ongoing projects.
5. This model is not suitable for long and
ongoing projects.
6. Iterations are followed. 6. Iterations are followed.
7. Flexible with user requirements. 7. Requirements once fixed cannot be
modified
8. Refinements are easily possible 8. Refinements are not so easy
9. Phases are repeated itself 9. Phases are processed and completed
one at a time.
28