SDLC Strategies - Part 2
SDLC Strategies - Part 2
METHODS &
APPROACHES
SDLC PHASE 1
SDLC METHODOLOGIES
Development methodologies
equip teams with the guiding
principles and processes they
need to build a product. A
methodology defines how every
element of the product will be
delivered—this includes the
practices and philosophies that
product teams, particularly the
development team, need to
follow.
System Development Methods
Waterfall model
Agile model
Scrum
Prototyping
Rapid Application Development
(RAD)
System Development Methods
System development can follow various methods, each with distinct
characteristics. The choice of method depends on the system’s objectives
and requirements.
Most of these methodologies and frameworks aren’t meant to be
standalone, all-in-one prescriptive handbooks with a compendium of granular
practices for teams to follow. Teams usually work with a combination of these
principles depending on what the organization and the product need.
Though the approach might differ between models, each methodology has
the goal of enabling the development team to deliver high-quality software in
a cost-effective and quick manner.
Waterfall Model
The Waterfall model is a traditional system development method.
https://www.youtube.com/watch?v=Y_A0E1ToC_I
https://www.youtube.com/watch?v=vkccoUNthEI
Agile Model
The Agile model emphasizes iterative development and rapid release cycles,
making it ideal for projects with frequently changing requirements.
Agile development involves self-managed, cross-functional teams that
collaborate to develop solutions iteratively.
Agile offers flexibility, allowing changes to be made easily throughout the
development process. It’s particularly useful for projects requiring rapid
market adaptation.
However, Agile requires continuous customer feedback and frequent
involvement in the process.
Agile Model
Agile Pros:
Capable of accommodating new changes or enhancements occurring during the
development phase without a budget constraint
Engages projects managers and business stakeholders and gets their feedback
consistently throughout the software development process
Fast development and testing allow for the recognition of existing gaps in the
requirements or technologies being used. This makes easy to find alternative courses of
action
Helps development teams identify and address minor issues before becoming
problematic
Saves a great amount of cost and time thanks to the less documentation.
DISADVANTAGES
Extreme programming needs regular reviews and meetings between the
stakeholders which leads to more time consumption.
Prototyping
Prototyping is the process of creating an incomplete model of the future full-
featured system, which can be used to let the users have a first idea of the
completed program or allow the clients to evaluate the program.
The process of prototyping involves the following steps :
iv) Revise and Enhance the Prototype : Using the feedback both the
specifications and the prototype can be improved. If changes are introduced
then a repetition of steps 3 and 4 may be needed.
Prototyping
ADVANTAGES:
Reduced Time and Costs : Prototyping can improve the quality of
requirements and specifications provided to developers. Early determination
of what the user really wants can result in faster and less expensive software.