0% found this document useful (0 votes)
6 views

Week 2 - SDLC Models

The document outlines various Software Development Life Cycle (SDLC) models including the V-Shaped, Prototype, Spiral, Iterative/Incremental, and Agile models, detailing their pros and cons. Each model is suited for different project types and complexities, with Agile emphasizing flexibility and customer satisfaction. Key Agile methodologies such as Scrum and Extreme Programming are also mentioned.

Uploaded by

sefuhasani2003
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Week 2 - SDLC Models

The document outlines various Software Development Life Cycle (SDLC) models including the V-Shaped, Prototype, Spiral, Iterative/Incremental, and Agile models, detailing their pros and cons. Each model is suited for different project types and complexities, with Agile emphasizing flexibility and customer satisfaction. Key Agile methodologies such as Scrum and Extreme Programming are also mentioned.

Uploaded by

sefuhasani2003
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 19

Application Software Development

Week 2 - SDLC Models


V-Shaped Model
• Also known as the Verification and Validation model, this is
an extension of the Waterfall model.
• It emphasizes testing and validation and requires each stage
of development to be associated with a corresponding
testing phase.
• Pros:
– Since each development stage has a corresponding testing stage,
there is much emphasis on rigorous testing and validation
– Tracking progress is easier
– Best for small and medium-scale development
• Cons:
– Lacks flexibility and adaptation, similar to
Waterfall
– Does not accommodate changes well
– You will have to wait for the development of each
stage to be complete to start testing
Prototype Model
• In this model, a prototype of the end product is first
created, tested, and refined as necessary.
• It is especially useful when the client’s requirements are
not clear or well-understood at the outset.
• Pros:
– Provides a working model early in the process, helping to
clarify requirements and expectations
– A prototype model is a good choice if a developer is not
certain about an algorithm’s capability or compatibility
• Cons:
– Risk of focusing too much on the prototype
without sufficient attention to the entire system.
This can lead to overlooking better design
solutions.
– Developing multiple prototypes can be time-
consuming and pricey, particularly if it requires
many iterations.
Spiral Model
• This model combines elements of the design
and prototyping phases in an iterative,
spiraling manner, allowing for more flexibility
and control.
• It’s particularly suited for large, complex, and
expensive projects. It focuses on risk reduction
at each iteration.
• Pros:
– High degree of flexibility and control
– Good for managing risks in complex and large
projects
• Cons:
– Requires a lot of planning and management
– Costly and time-consuming
Iterative / Incremental Model
• In this model, the software is developed and
delivered in pieces or increments.
• After each increment, the software is tested
and reviewed, and the feedback is used to
develop subsequent increments.
• Pros:
– Progressive elaboration of the product
– Feedback can be incorporated with each
increment
– Changing requirements and scope is
comparatively less expensive
– Testing and debugging are easier during short
iterations
• Cons:
– Requires careful planning to ensure increments
are meaningful
– Initial delivery might not have full functionality
– Should be continuously managed
Agile Model
• Agile development is a software development
methodology that emphasizes iterative progress,
collaboration, flexibility, and continuous feedback.
• It involves breaking down work into small,
manageable tasks, and delivering functional
software regularly that adapts quickly to changes.
• This results in faster delivery, improved product
quality, and higher customer satisfaction.
• Pros:
– High flexibility and adaptability
– Emphasizes customer satisfaction and team
collaboration
– Quick delivery of features
• Cons:
– Can be difficult to estimate project duration and
cost.
– Requires high customer and team involvement.
Key Agile Methodologies
• There are different types of agile methodologies, each with its own
approach to managing work, improving collaboration, and
delivering high-quality software.
• Here’s a quick list of the key Agile Methodologies:
– Scrum
– Extreme Programming (XP)
– Adaptive Software Development (ASD)
– Dynamic Systems Development Method (DSDM)
– Feature-Driven Development (FDD)
– Kanban
– Behavior Driven Development (BDD)

You might also like