2. Brought to you by:
Courtney Fradreck Taga
(230350)
Dennis U. Ifu (230533)
Presenters
3. Contents of our Presantation.
1. Define and Explain the Software Development Lifecycle
(SDLC) and its phases.
2. Define Software Development Methodologies (SDM)
3. Discuss the different methodologies and show visuals
to better present each methodologies
4. Compare and Contrast Waterfall and Agile Model
4. The Software Development Lifecycle
(SDLC) is a systematic process for
planning, creating, testing, deploying, and
maintaining software applications or
systems. It provides a framework for
software development teams to follow and
ensures that the development process is
well-organized, controlled, and
predictable. The specific phases and
activities within the SDLC can vary based
on the development methodology being
used, but the following are common
phases in most SDLC models:
What is the Software Development Lifecycle?
6. Phases
Each phases above was clearly explained
during the presentation, but for more
information you can watch this video:
https://youtu.be/Fi3_BjVzpqk?si=yFz3Gw_
204n03XIS
8. What are Software Development Methodoloies
• Software development methodologies are structured approaches to a
software development project that can improve efficiency, quality,
and collaboration.
• They are important because they help developers plan, organize,
execute, and deliver software products that meet the needs and
expectations of the clients and users.
• They also improve efficiency, quality, and collaboration in the software
development process.
9. Overview of Software Developmet Methodologies
1. Waterfall Model
2. Agile Model: Scrum, Kanban, XP
3. Prototyping Model The Spiral Model
4. Rapid Application Development Model
5. Iterative and Incremental Process Model
10. Overview of Software Developmet Methodologies
This is a traditional and linear
methodology that follows a
sequential order of phases, such as
requirements, design,
implementation, testing, and
maintenance. Each phase depends
on the completion and approval of
the previous one. This methodology
is suitable for well-defined and stable
projects, but not for dynamic and
complex ones.
Waterfall Model
11. Pros and Cons of the Waterfall Model.
• Requirement is clear before development starts
• Each phase is completed in specified period of time after that it moves to the
next phase
• As it’s a linear model, its easier to implement.
• The amount of resources required to implement this model are minimal
• Each phase proper documentation is followed for the quality of development.
Pros
Cons
• The problems with one phase are never completely solved during that phase
and in fact many problems regarding a particular phase arise after the phase is
signed off, this results in badly structured system.
• If client want the requirements to be changed, it will not be implemented in the
current development process.
In spite of the cons, the many pros of this model ensure that it remains one of the
most popular models used in the field of software development.
13. Agile Model: Scrum, Kanban, XP:
This is a methodology that values flexibility,
collaboration, and customer satisfaction. The agile
model is based on the principles of the Agile
Manifesto, which emphasize adaptive planning,
iterative development, continuous improvement, and
stakeholder involvement. The agile model has several
frameworks, such as Scrum, Kanban, and XP, that
provide specific practices and roles for implementing
the agile principles. The agile model is suitable for
projects that have changing and evolving
requirements and need frequent feedback and
delivery.
14. Agile project management infographics
Agile
1
2
3
4
5
6 7 Insert text insert text
Insert text insert text
Launch
7
Insert text insert text
Insert text insert text
Review
6
Insert text insert text
Insert text insert text
Deploy
5
Identifying and fixing
defects or bugs.
Test
4
The actual coding or
programming begins.
Develop
3
The system architecture
is designed.
Design
2
Project goals, timelines.
Scope and rersouces
are defined
Plan
1
15. What
Agile
is not.
What is Agile? (youtube.com)
To understand what is Agile and What it means to be
agile you can watch the video below:
16. For more info on Agile, you can
watch the following vidoes
Agile vs Waterfall: Choosing Your Methodology –
YouTube
Scrum vs Kanban - What's the Difference? + FREE
CHEAT SHEET (youtube.com)
(1) Agile Cartoons - YouTube
17. OSDM Continued
This is a methodology that combines the
iterative and incremental approach with the risk
analysis and evaluation of the waterfall model.
The software development process is
represented as a spiral, with each loop
consisting of four stages: planning, risk analysis,
engineering, and evaluation. The spiral model is
suitable for large and complex projects that
involve high risks and uncertainties.
Prototyping Model
The Spiral Model
18. OSDM Continued
Rapid Application
Development Model:
This is a methodology that focuses on
delivering software products and
features quickly and efficiently, using
techniques such as prototyping,
timeboxing, and user involvement.
The software development process
consists of four phases: requirements
planning, user design, construction,
and cutover. The rapid application
development model is suitable for
projects that have clear and well-
defined requirements and need fast
delivery.
19. Iterative and Incremental Process Model
Follow the link below to understand more about the methodologies. For more info, click here
This is a methodology that
divides the software development
process into smaller and
manageable iterations, each of
which produces a working version
of the software. The iterations are
repeated until the final product
meets the desired requirements
and quality. This methodology
allows for feedback, changes,
and improvements along the way.
20. Summary
SDLC
SDM
Agile
SDLC
SDLC is a general term that describes the
process of creating software,,
SDM
while software development methodology
is a specific way of implementing the
SDLC.
Agile
There are different types of software
development methodologies, such as
waterfall, agile, scrum, and so on. Each
methodology has its own advantages and
disadvantages, depending on the nature
and scope of the project.