0% found this document useful (0 votes)
4 views12 pages

Evolutionary Software Process Models

Evolutionary software process models focus on incremental development through repeated cycles, allowing for user feedback and evolving requirements. The Spiral Model, a key type, emphasizes risk management and consists of planning, risk analysis, engineering, and evaluation phases. While it offers advantages like early risk identification and continuous user involvement, it can be costly and complex to manage.

Uploaded by

wazirnaseem393
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views12 pages

Evolutionary Software Process Models

Evolutionary software process models focus on incremental development through repeated cycles, allowing for user feedback and evolving requirements. The Spiral Model, a key type, emphasizes risk management and consists of planning, risk analysis, engineering, and evaluation phases. While it offers advantages like early risk identification and continuous user involvement, it can be costly and complex to manage.

Uploaded by

wazirnaseem393
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

SOFTWARE ENGINEERING

LECTURE 05
EVOLUTIONARY SOFTWARE
PROCESS MODELS
INSTRUCTOR: ENGR. FAHAD REHMAN
ENGR.FAHAD97@[Link]
EVOLUTIONARY SOFTWARE PROCESS
MODELS

• Evolutionary models are software development


approaches in which the system is developed
incrementally through repeated cycles (iterations).
• Each version of the software evolves by incorporating
user feedback, purifying requirements, and enhancing
functionality.
• The development proceeds from a simple initial
version to a more complex and complete system.
WHY EVOLUTIONARY MODELS ARE
USED

• Requirements are unclear or constantly changing.


• Users prefer to see working versions early.
• Complex systems need continuous validation.
• Risk reduction is required through early feedback
MAIN TYPES OF EVOLUTIONARY
MODELS

• Prototyping Model
• Spiral Model
• Incremental Model
• Iterative Model
SPIRAL MODEL
SPIRAL MODEL
• The Spiral Model is a risk-driven software development
process model that combines elements of waterfall and
prototyping.
• Development proceeds in a series of spirals (iterations).
• Each spiral consists of planning, risk analysis, engineering,
and evaluation.
• The model emphasizes early identification and reduction of
project risks.
Why It Is Called “Spiral”
• The process is drawn as a spiral starting from the center
and moving outward.
Each loop (spiral cycle) represents a phase, and its radius
increases to show project growth.
The spiral shows that development is:
SPIRAL MODEL
PHASES OF THE SPIRAL MODEL
Each loop of the spiral has four quadrants:
Planning (Objectives Determination)
• Define goals, requirements, constraints.
• Determine alternatives (approaches, technologies).
• Estimate cost and schedule.
Risk Analysis (Risk Identification and Resolution)
• This is the core feature of the Spiral Model.
• Identify all possible risks (technical, cost, schedule, user acceptance).
• Analyze and prioritize them.
• Build prototypes or perform simulations to reduce risks.
PHASES OF THE SPIRAL MODEL
Engineering (Development and Testing)
• Develop the system or a part of it.
• Produce design documentation.
• Implement code, integrate modules.
• Conduct testing at each iteration.
Evaluation (Customer Review)
• Present the prototype or deliverables to the customer.
• Get feedback.
• Decide whether to move to the next spiral or stop the project.
WHEN TO USE SPIRAL MODEL
• Project is large and complex.
• Requirements are unclear or evolving.
• High-risk projects where early risk discovery is critical.
• You have stakeholders who want continuous refinement.
• Long-term, expensive projects (e.g., defense, banking,
aerospace).
ADVANTAGES & DISADVANTAGES
Advantages
• Early risk identification and reduction.
• Continuous user involvement improves product quality.
• Flexible to requirement changes.
• Better for large, high-budget projects.
• Prototyping improves requirement understanding.

Disadvantages
• Can become expensive due to repeated cycles.
• Requires expertise in risk analysis.
• Not suitable for small projects.
• Hard to manage if risks are not well analyzed.
• Time-consuming due to many iterations.
Questions

You might also like