SlideShare a Scribd company logo
Software Engineering
Software development lifecycle (SDLC)
Osman Kanu
Software Development Life Cycle (SDLC)
• Software development life cycle (SDLC) is a structured process that is
used to design, develop, and test good-quality software.
• Software development life cycle(SDLC), is a methodology that defines the
entire procedure of software development step-by-step.
• The goal of the SDLC life cycle model is to deliver high-quality,
maintainable software that meets the user’s requirements.
• SDLC in software engineering models outlines the plan for each stage so
that each stage of the software development model can perform its task
efficiently to deliver the software at a low cost within a given time frame
that meets users requirements.
Software Development Life Cycle (SDLC)
• SDLC is a process followed for software building within a software
organization. SDLC consists of a precise plan that describes how to develop,
maintain, replace, and enhance specific software.
• The life cycle defines a method for improving the quality of software and the
all-around development process.
Planning and Requirement Analysis
• Planning is a crucial step in everything, just as in software development.
• In this same stage, requirement analysis is also performed by the developers
of the organization.
• This is attained from customer inputs, and sales department/market surveys.
• The information from this analysis forms the building blocks of a basic project.
The quality of the project is a result of planning.
• Thus, in this stage, the basic project is designed with all the available
information.
Defining Requirements
• In this stage, all the requirements for the target software are specified. These
requirements get approval from customers, market analysts, and other
stakeholders.
• This is fulfilled by utilizing SRS (Software Requirement Specification).
• This is a sort of document that specifies all those things that need to be
defined and created during the entire project cycle.
Defining Requirements
• SRS is a reference for software designers to come up with the best architecture
for the software. Hence, with the requirements defined in SRS, multiple
designs for the product architecture are present in the Design Document
Specification (DDS).
• This DDS is assessed by market analysts and stakeholders. After evaluating all
the possible factors, the most practical and logical design is chosen for
development.
Developing Product
• At this stage, the fundamental development of the product starts. For this,
developers use a specific programming code as per the design in the DDS.
• Hence, it is important for the coders to follow the protocols set by the
association. Conventional programming tools like compilers, interpreters,
debuggers, etc. are also put into use at this stage.
• Some popular languages like C/C++, Python, Java, etc. are put into use as per
the software regulations.
Developing Product
• At this stage, the fundamental development of the product starts. For this,
developers use a specific programming code as per the design in the DDS.
• Hence, it is important for the coders to follow the protocols set by the
association. Conventional programming tools like compilers, interpreters,
debuggers, etc. are also put into use at this stage.
• Some popular languages like C/C++, Python, Java, etc. are put into use as per
the software regulations.
Product Testing and Integration
• After the development of the product, testing of the software is necessary to
ensure its smooth execution.
• Although, minimal testing is conducted at every stage of SDLC. Therefore, at
this stage, all the probable flaws are tracked, fixed, and retested.
• Documentation, Training, and Support: Software documentation is an essential
part of the software development life cycle.
• A well-written document acts as a tool and means to information repository
necessary to know about software processes, functions, and maintenance.
• Documentation also provides information about how to use the product.
Deployment and Maintenance of Products
• After detailed testing, the conclusive product is released in phases as per the
organization’s strategy.
• Then it is tested in a real industrial environment. It is important to ensure its
smooth performance.
• If it performs well, the organization sends out the product as a whole.
• After retrieving beneficial feedback, the company releases it as it is or with
auxiliary improvements to make it further helpful for the customers.
What are SDLC models?
• Are frameworks that define the structure, processes, and phases involved in
developing a software product.
• They provide a systematic approach to ensure the software is developed
efficiently, meets quality standards, and satisfies user requirements.
• Why Use SDLC Models?
• Organized Workflow: Ensures the project progresses smoothly through defined
stages.
• Quality Assurance: Incorporates testing and reviews at every stage.
• Risk Management: Identifies potential risks early and addresses them.
• Cost Efficiency: Reduces wastage of resources by detecting issues early.
Waterfall Model
• The waterfall model arranges all the phases sequentially so that each new
phase depends on the outcome of the previous phase.
• Conceptually, the design flows from one phase down to the next, like that of a
waterfall.
Advantages of the Waterfall Model
Simplicity and Structure:
The model is easy to understand and manage due to its linear and structured
approach.
Clear Phases and Milestones:
Each phase has specific deliverables and reviews, making progress measurable.
Well-Documented Process:
Extensive documentation ensures clear communication of requirements and design.
Best for Fixed Requirements:
Ideal for projects with clearly defined and unchanging requirements.
Easy to Manage:
The model is suitable for inexperienced teams due to its straightforward nature.
Disadvantages of the Waterfall Model
Inflexibility:
Changes to requirements are difficult to incorporate once a phase is completed.
Late Testing:
Testing is performed only after implementation, making it hard to address issues
discovered late.
High Risk for Changing Requirements:
Not suitable for projects where requirements may evolve during development.
No Overlapping Phases:
Each phase must be completed fully before moving on, which can delay the overall
project.
Customer Involvement is Limited:
Customers are not engaged after the initial requirements gathering phase, which can lead
to misaligned expectations.
When to Use the Waterfall Model
• The Waterfall model is best suited for:
• Small projects with well-defined and stable requirements.
• Projects with low uncertainty, where all technical and functional aspects are
well understood.
• Government and military projects, where thorough documentation and
structured processes are critical.
• Hardware-related projects, where changes are less frequent compared to
software.
Agile SDLC Model
• The Agile model is a flexible and iterative approach to software development
that focuses on delivering small, working increments of the product frequently.
• Agile emphasizes collaboration, customer feedback, and adaptability to change.
Instead of completing all phases sequentially, Agile teams work in cycles called
iterations or sprints, where each cycle delivers a functional increment of the
software.
Advantages of Agile
Flexibility:
Agile adapts to changing requirements and priorities, even late in the development process.
Customer-Centric:
Continuous customer involvement ensures the product meets user expectations.
Frequent Delivery:
Regular delivery of working increments allows for quicker feedback and deployment.
Reduced Risk:
Regular reviews and incremental development help identify and address risks early.
Team Collaboration:
Agile fosters close communication and collaboration between developers, stakeholders, and
customers.
Focus on Quality:
Continuous testing and integration ensure a higher-quality product.
Disadvantages of Agile
Requires Skilled Teams:
Agile requires experienced developers and strong communication skills within the team.
Scope Creep:
Frequent changes in requirements can lead to uncontrolled scope expansion.
Lack of Predictability:
Without fixed requirements, estimating time and cost can be challenging.
Documentation is Minimal:
Agile prioritizes working software over detailed documentation, which can be
problematic for large teams or future maintenance.
Customer Dependency:
Active involvement of the customer is required, which may not always be feasible.
Not Ideal for Small Teams or Projects:
Agile can introduce unnecessary overhead for small, well-defined projects.
When to Use the Agile Model
The Agile model is best suited for:
Projects with evolving requirements or where the final product vision is
unclear.
Customer-focused products that require frequent feedback and updates.
Large, dynamic teams with good communication and collaboration practices.
Startups and innovative projects where rapid prototyping and delivery are
needed.
Continuous delivery scenarios where software is updated regularly.
Iterative SDLC Model
• The Iterative model is a software development approach that focuses on
breaking down a project into smaller, manageable parts, called iterations.
• Each iteration goes through the core development phases (planning, design,
development, and testing) and delivers a functional version of the product.
• With every iteration, new features are added or existing ones are refined based
on feedback, until the final product is achieved.
Advantages of the Iterative Model
• Early Testing:
Testing is conducted after every iteration, helping to identify and fix issues early in the
development process.
• Progress Visibility:
Each iteration produces a working version of the product, offering stakeholders tangible
progress throughout the project.
• Flexibility:
Requirements can evolve over time, allowing for adjustments and refinements after each
iteration.
• Risk Reduction:
• Risks are identified and mitigated early since development starts with a small portion of
the system.
• Customer Feedback:
Regular feedback from stakeholders ensures the product aligns with their expectations.
Disadvantages of the Iterative Model
• Incomplete Requirements:
Initial requirements might not be comprehensive, leading to potential rework during later
iterations.
• Higher Costs:
Repeated iterations can increase the overall cost of development compared to other models.
• Complex Management:
Managing multiple iterations, tracking changes, and integrating new functionality can be
challenging.
• Overlapping Phases:
Since phases are repeated for each iteration, there may be confusion and inefficiencies if not
managed properly.
• Time-Consuming:
The iterative process may take longer than linear models if too many iterations are required.
When to Use the Iterative Model
The Iterative model is best suited for:
• Projects with evolving requirements, where all requirements are not fully
known at the start.
• Large and complex systems, which can be developed incrementally.
• Projects with higher risk, where early prototypes help reduce uncertainties.
• Customer-focused projects, where frequent feedback is essential.
• Innovative and experimental projects, where requirements might emerge over
time.
Key Difference Between Iterative and Agile
• While both Iterative and Agile models involve incremental development, Agile
emphasizes collaboration, flexibility, and adaptability to customer feedback at
every stage.
• The Iterative model, on the other hand, focuses more on refining prototypes
based on feedback but may not require constant customer involvement like
Agile does.
Q & A
Thank You

More Related Content

PPTX
Software development life cycle
ParikshitTaksande1
 
PPTX
Software Design Architecture SDA SDLC DETAILS
MalikNaeemullah
 
PPSX
Software development life cycle and model
RohanMalik45
 
PPTX
SOFTWARE ENGINEERING_course_material.pptx
saarankumar246
 
PPT
SDLC - Software Development Life Cycle
Saravanan Manoharan
 
PPTX
Software Development Life Cycle
Santhia RK
 
PPTX
Manual Testing Module 3-SDLC.pptx sdlc cycle most important part in manual
anilrathod600628
 
PPT
20IT402 - SOFTWARE ENGINEERING ALL UNITS PPT
GeethaRRaj
 
Software development life cycle
ParikshitTaksande1
 
Software Design Architecture SDA SDLC DETAILS
MalikNaeemullah
 
Software development life cycle and model
RohanMalik45
 
SOFTWARE ENGINEERING_course_material.pptx
saarankumar246
 
SDLC - Software Development Life Cycle
Saravanan Manoharan
 
Software Development Life Cycle
Santhia RK
 
Manual Testing Module 3-SDLC.pptx sdlc cycle most important part in manual
anilrathod600628
 
20IT402 - SOFTWARE ENGINEERING ALL UNITS PPT
GeethaRRaj
 

Similar to SDLC in software engineering models outlines the plan for each stage so that each stage of the software development (20)

PPTX
ecse ppt.pptx
DanyDany88
 
PPTX
ecse ppt.pptx
DanyDany88
 
PDF
Chapter 2
KaiEnTee1
 
PPTX
Elements of computer science engineering
Laxmi139487
 
PPTX
Software development model in computer application
trainingstudents1991
 
PDF
SDLC Models.pdf
Mithilesh Singh
 
PPTX
Lec 3-4.pptx software process and sdlc models
SUJALArora15
 
PPT
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models (1).ppt
nandemprasanna
 
PDF
Lect-4: Software Development Life Cycle Model - SPM
Mubashir Ali
 
PPT
Intoduction to software engineering part 2
Rupesh Vaishnav
 
PPT
what-is-devops.ppt
MohammadSamiuddin10
 
PDF
softwaredevelopmentprocess
AnilGhadge6
 
PPTX
software development life cycle(SDLC)
sanoop s
 
PPTX
Lesson 2 introduction in computing
Professor Thor
 
PPTX
Waterfall-VS-Agile
SaiRamdev3
 
PPTX
Waterfall Model.pptx
MrVinothKumarLAsstPr
 
PPTX
Introduction to Software Engineering Notes.pptx
bscit6
 
PPT
software engerring lecture number 5 .ppt
Duryabhajra
 
PDF
Agile methodologiesvswaterfall
Muthu Natarajan
 
PPTX
development and operations devops UNIT 1.pptx
pavanmovva1
 
ecse ppt.pptx
DanyDany88
 
ecse ppt.pptx
DanyDany88
 
Chapter 2
KaiEnTee1
 
Elements of computer science engineering
Laxmi139487
 
Software development model in computer application
trainingstudents1991
 
SDLC Models.pdf
Mithilesh Singh
 
Lec 3-4.pptx software process and sdlc models
SUJALArora15
 
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models (1).ppt
nandemprasanna
 
Lect-4: Software Development Life Cycle Model - SPM
Mubashir Ali
 
Intoduction to software engineering part 2
Rupesh Vaishnav
 
what-is-devops.ppt
MohammadSamiuddin10
 
softwaredevelopmentprocess
AnilGhadge6
 
software development life cycle(SDLC)
sanoop s
 
Lesson 2 introduction in computing
Professor Thor
 
Waterfall-VS-Agile
SaiRamdev3
 
Waterfall Model.pptx
MrVinothKumarLAsstPr
 
Introduction to Software Engineering Notes.pptx
bscit6
 
software engerring lecture number 5 .ppt
Duryabhajra
 
Agile methodologiesvswaterfall
Muthu Natarajan
 
development and operations devops UNIT 1.pptx
pavanmovva1
 
Ad

Recently uploaded (20)

PPTX
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
PPTX
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
PPTX
oapresentation.pptx
mehatdhavalrajubhai
 
PDF
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
PPTX
Role Of Python In Programing Language.pptx
jaykoshti048
 
PDF
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
PPTX
Presentation about Database and Database Administrator
abhishekchauhan86963
 
PDF
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
PPTX
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
PDF
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
PDF
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
PDF
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 
PDF
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
PDF
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PPTX
Presentation about variables and constant.pptx
kr2589474
 
PPTX
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PPTX
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
PDF
Teaching Reproducibility and Embracing Variability: From Floating-Point Exper...
University of Rennes, INSA Rennes, Inria/IRISA, CNRS
 
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
oapresentation.pptx
mehatdhavalrajubhai
 
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
Role Of Python In Programing Language.pptx
jaykoshti048
 
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
Presentation about Database and Database Administrator
abhishekchauhan86963
 
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Presentation about variables and constant.pptx
kr2589474
 
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
Teaching Reproducibility and Embracing Variability: From Floating-Point Exper...
University of Rennes, INSA Rennes, Inria/IRISA, CNRS
 
Ad

SDLC in software engineering models outlines the plan for each stage so that each stage of the software development

  • 1. Software Engineering Software development lifecycle (SDLC) Osman Kanu
  • 2. Software Development Life Cycle (SDLC) • Software development life cycle (SDLC) is a structured process that is used to design, develop, and test good-quality software. • Software development life cycle(SDLC), is a methodology that defines the entire procedure of software development step-by-step. • The goal of the SDLC life cycle model is to deliver high-quality, maintainable software that meets the user’s requirements. • SDLC in software engineering models outlines the plan for each stage so that each stage of the software development model can perform its task efficiently to deliver the software at a low cost within a given time frame that meets users requirements.
  • 3. Software Development Life Cycle (SDLC) • SDLC is a process followed for software building within a software organization. SDLC consists of a precise plan that describes how to develop, maintain, replace, and enhance specific software. • The life cycle defines a method for improving the quality of software and the all-around development process.
  • 4. Planning and Requirement Analysis • Planning is a crucial step in everything, just as in software development. • In this same stage, requirement analysis is also performed by the developers of the organization. • This is attained from customer inputs, and sales department/market surveys. • The information from this analysis forms the building blocks of a basic project. The quality of the project is a result of planning. • Thus, in this stage, the basic project is designed with all the available information.
  • 5. Defining Requirements • In this stage, all the requirements for the target software are specified. These requirements get approval from customers, market analysts, and other stakeholders. • This is fulfilled by utilizing SRS (Software Requirement Specification). • This is a sort of document that specifies all those things that need to be defined and created during the entire project cycle.
  • 6. Defining Requirements • SRS is a reference for software designers to come up with the best architecture for the software. Hence, with the requirements defined in SRS, multiple designs for the product architecture are present in the Design Document Specification (DDS). • This DDS is assessed by market analysts and stakeholders. After evaluating all the possible factors, the most practical and logical design is chosen for development.
  • 7. Developing Product • At this stage, the fundamental development of the product starts. For this, developers use a specific programming code as per the design in the DDS. • Hence, it is important for the coders to follow the protocols set by the association. Conventional programming tools like compilers, interpreters, debuggers, etc. are also put into use at this stage. • Some popular languages like C/C++, Python, Java, etc. are put into use as per the software regulations.
  • 8. Developing Product • At this stage, the fundamental development of the product starts. For this, developers use a specific programming code as per the design in the DDS. • Hence, it is important for the coders to follow the protocols set by the association. Conventional programming tools like compilers, interpreters, debuggers, etc. are also put into use at this stage. • Some popular languages like C/C++, Python, Java, etc. are put into use as per the software regulations.
  • 9. Product Testing and Integration • After the development of the product, testing of the software is necessary to ensure its smooth execution. • Although, minimal testing is conducted at every stage of SDLC. Therefore, at this stage, all the probable flaws are tracked, fixed, and retested. • Documentation, Training, and Support: Software documentation is an essential part of the software development life cycle. • A well-written document acts as a tool and means to information repository necessary to know about software processes, functions, and maintenance. • Documentation also provides information about how to use the product.
  • 10. Deployment and Maintenance of Products • After detailed testing, the conclusive product is released in phases as per the organization’s strategy. • Then it is tested in a real industrial environment. It is important to ensure its smooth performance. • If it performs well, the organization sends out the product as a whole. • After retrieving beneficial feedback, the company releases it as it is or with auxiliary improvements to make it further helpful for the customers.
  • 11. What are SDLC models? • Are frameworks that define the structure, processes, and phases involved in developing a software product. • They provide a systematic approach to ensure the software is developed efficiently, meets quality standards, and satisfies user requirements. • Why Use SDLC Models? • Organized Workflow: Ensures the project progresses smoothly through defined stages. • Quality Assurance: Incorporates testing and reviews at every stage. • Risk Management: Identifies potential risks early and addresses them. • Cost Efficiency: Reduces wastage of resources by detecting issues early.
  • 12. Waterfall Model • The waterfall model arranges all the phases sequentially so that each new phase depends on the outcome of the previous phase. • Conceptually, the design flows from one phase down to the next, like that of a waterfall.
  • 13. Advantages of the Waterfall Model Simplicity and Structure: The model is easy to understand and manage due to its linear and structured approach. Clear Phases and Milestones: Each phase has specific deliverables and reviews, making progress measurable. Well-Documented Process: Extensive documentation ensures clear communication of requirements and design. Best for Fixed Requirements: Ideal for projects with clearly defined and unchanging requirements. Easy to Manage: The model is suitable for inexperienced teams due to its straightforward nature.
  • 14. Disadvantages of the Waterfall Model Inflexibility: Changes to requirements are difficult to incorporate once a phase is completed. Late Testing: Testing is performed only after implementation, making it hard to address issues discovered late. High Risk for Changing Requirements: Not suitable for projects where requirements may evolve during development. No Overlapping Phases: Each phase must be completed fully before moving on, which can delay the overall project. Customer Involvement is Limited: Customers are not engaged after the initial requirements gathering phase, which can lead to misaligned expectations.
  • 15. When to Use the Waterfall Model • The Waterfall model is best suited for: • Small projects with well-defined and stable requirements. • Projects with low uncertainty, where all technical and functional aspects are well understood. • Government and military projects, where thorough documentation and structured processes are critical. • Hardware-related projects, where changes are less frequent compared to software.
  • 16. Agile SDLC Model • The Agile model is a flexible and iterative approach to software development that focuses on delivering small, working increments of the product frequently. • Agile emphasizes collaboration, customer feedback, and adaptability to change. Instead of completing all phases sequentially, Agile teams work in cycles called iterations or sprints, where each cycle delivers a functional increment of the software.
  • 17. Advantages of Agile Flexibility: Agile adapts to changing requirements and priorities, even late in the development process. Customer-Centric: Continuous customer involvement ensures the product meets user expectations. Frequent Delivery: Regular delivery of working increments allows for quicker feedback and deployment. Reduced Risk: Regular reviews and incremental development help identify and address risks early. Team Collaboration: Agile fosters close communication and collaboration between developers, stakeholders, and customers. Focus on Quality: Continuous testing and integration ensure a higher-quality product.
  • 18. Disadvantages of Agile Requires Skilled Teams: Agile requires experienced developers and strong communication skills within the team. Scope Creep: Frequent changes in requirements can lead to uncontrolled scope expansion. Lack of Predictability: Without fixed requirements, estimating time and cost can be challenging. Documentation is Minimal: Agile prioritizes working software over detailed documentation, which can be problematic for large teams or future maintenance. Customer Dependency: Active involvement of the customer is required, which may not always be feasible. Not Ideal for Small Teams or Projects: Agile can introduce unnecessary overhead for small, well-defined projects.
  • 19. When to Use the Agile Model The Agile model is best suited for: Projects with evolving requirements or where the final product vision is unclear. Customer-focused products that require frequent feedback and updates. Large, dynamic teams with good communication and collaboration practices. Startups and innovative projects where rapid prototyping and delivery are needed. Continuous delivery scenarios where software is updated regularly.
  • 20. Iterative SDLC Model • The Iterative model is a software development approach that focuses on breaking down a project into smaller, manageable parts, called iterations. • Each iteration goes through the core development phases (planning, design, development, and testing) and delivers a functional version of the product. • With every iteration, new features are added or existing ones are refined based on feedback, until the final product is achieved.
  • 21. Advantages of the Iterative Model • Early Testing: Testing is conducted after every iteration, helping to identify and fix issues early in the development process. • Progress Visibility: Each iteration produces a working version of the product, offering stakeholders tangible progress throughout the project. • Flexibility: Requirements can evolve over time, allowing for adjustments and refinements after each iteration. • Risk Reduction: • Risks are identified and mitigated early since development starts with a small portion of the system. • Customer Feedback: Regular feedback from stakeholders ensures the product aligns with their expectations.
  • 22. Disadvantages of the Iterative Model • Incomplete Requirements: Initial requirements might not be comprehensive, leading to potential rework during later iterations. • Higher Costs: Repeated iterations can increase the overall cost of development compared to other models. • Complex Management: Managing multiple iterations, tracking changes, and integrating new functionality can be challenging. • Overlapping Phases: Since phases are repeated for each iteration, there may be confusion and inefficiencies if not managed properly. • Time-Consuming: The iterative process may take longer than linear models if too many iterations are required.
  • 23. When to Use the Iterative Model The Iterative model is best suited for: • Projects with evolving requirements, where all requirements are not fully known at the start. • Large and complex systems, which can be developed incrementally. • Projects with higher risk, where early prototypes help reduce uncertainties. • Customer-focused projects, where frequent feedback is essential. • Innovative and experimental projects, where requirements might emerge over time.
  • 24. Key Difference Between Iterative and Agile • While both Iterative and Agile models involve incremental development, Agile emphasizes collaboration, flexibility, and adaptability to customer feedback at every stage. • The Iterative model, on the other hand, focuses more on refining prototypes based on feedback but may not require constant customer involvement like Agile does.
  • 25. Q & A