Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 22

Agile Vs Waterfall

Know the Difference Between Methodologies

Presentation Created by
Sam
What is Waterfall methodology?

 Waterfall Model methodology which is also known as Liner Sequential Life


Cycle Model. Waterfall Model followed in the sequential order, and so project
development team only moves to next phase of development or testing if the
previous step completed successfully.
What is the Agile methodology?

 Agile methodology is a practice that helps continuous iteration of development


and testing in the software development process. In this model, development
and testing activities are concurrent, unlike the Waterfall model. This process
allows more communication between customers, developers, managers, and
testers.
 Waterfall vs Agile Key Difference

• Waterfall is a Liner Sequential Life Cycle Model whereas Agile is a continuous iteration of
development and testing in the software development process.
• In Agile vs Waterfall difference, the Agile methodology is known for its flexibility whereas Waterfall
is a structured software development methodology.
• Comparing the Waterfall methodology vs Agile which follows an incremental approach whereas
the Waterfall is a sequential design process.
• Agile performs testing concurrently with software development whereas in Waterfall methodology
testing comes after the “Build” phase.
• Agile allows changes in project development requirement whereas Waterfall has no scope of
changing the requirements once the project development starts.
Advantages of Waterfall Model

• It is one the easiest model to manage. Because of its nature, each phase has
specific deliverables and a review process.
• It works well for smaller size projects where requirements are easily
understandable.
• Faster delivery of the project
• Process and results are well documented.
• Easily adaptable method for shifting teams
• This project management methodology is beneficial to manage dependencies.
Advantages of the Agile Model

• It is focused client process. So, it makes sure that the client is continuously
involved during every stage.
• Agile teams are extremely motivated and self-organized so it likely to provide a
better result from the development projects.
• Agile software development method assures that quality of the development is
maintained
• The process is completely based on the incremental progress. Therefore, the
client and team know exactly what is complete and what is not. This reduces
risk in the development process.
Limitations of Waterfall Model

• It is not an ideal model for a large size project


• If the requirement is not clear at the beginning, it is a less effective method.
• Very difficult to move back to makes changes in the previous phases.
• The testing process starts once development is over. Hence, it has high chances
of bugs to be found later in development where they are expensive to fix.
Limitations of Agile Model

• It is not useful method for small development projects.


• It requires an expert to take important decisions in the meeting.
• Cost of implementing an agile method is little more compared to other
development methodologies.
• The project can easily go off track if the project manager is not clear what
outcome he/she wants.
Difference between Agile and Waterfall Model

Agile Waterfall
It separates the project development lifecycle into sprints. Software development process is divided into distinct
phases.
It follows an incremental approach Waterfall methodology is a sequential design process.

Agile methodology is known for its flexibility.


Waterfall is a structured software development methodology
so most times it can be quite rigid.

Agile can be considered as a collection of many different Software development will be completed as one single
projects. project.
Agile is quite a flexible method which allows changes to be There is no scope of changing the requirements once the
made in the project development requirements even if the project development starts.
initial planning has been completed.

Test plan is reviewed after each sprint


The test plan is rarely discussed during the test phase.
Difference between Agile and Waterfall Model
Agile Waterfall

Agile methodology, follow an iterative development All the project development phases like designing,
approach because of this planning, development, prototyping development, testing, etc. are completed once in the
and other software development phases may appear more Waterfall model.
than once.

Agile development is a process in which the requirements The method is ideal for projects which have definite
are expected to change and evolve. requirements and changes not at all expected.

In Agile methodology, testing is performed concurrently In this methodology, the “Testing” phase comes after the
with software development. “Build” phase

Agile introduces a product mindset where the software This model shows a project mindset and places its focus
product satisfies needs of its end customers and changes completely on accomplishing the project.
itself as per the customer’s demands.
Difference between Agile and Waterfall Model

Agile Waterfall

Agile methodology works exceptionally well with Time & Reduces risk in the firm fixed price contracts by getting risk
Materials or non-fixed funding. It may increase stress in agreement at the beginning of the process.
fixed-price scenarios.

Prefers small but dedicated teams with a high degree of Team coordination/synchronization is very limited.
coordination and synchronization.

Products owner with team prepares requirements just about Business analysis prepares requirements before the
every day during a project. beginning of the project.

Test team can take part in the requirements change without It is difficult for the test to initiate any change in
problems. requirements.

Description of project details can be altered anytime during Detail description needs to implement waterfall software
the SDLC process. development approach.
Agile Vs Waterfall: Pros & Cons

 Agile projects are typically cheaper and can be delivered quickly. They


offer greater flexibility, but also produce less predictable results due to
the uncertainty and unclear nature of many of the project characteristics.

 Waterfall projects are typically more expensive and take longer to


deliver. They are also less flexible. However, due to the certainty and rigor
waterfall forces teams to employ, resulting products are typically of a
higher quality and are more likely to be considered complete.
Agile Vs Scrum
Difference Between Agile Methodology & Scrum
What Is Agile Methodology?

 Agile methodology is a practice that helps continuous iteration of development


and testing in the SDLC process. Agile breaks the product into smaller builds.
 In this methodology, development and testing activities are concurrent, unlike
other software development methodologies. It also encourages teamwork and
face-to-face communication. Business, stakeholders, and developers and
clients must work together to develop a product.
Difference between Agile and Scrum Methodology

Agile Scrum
Agile is a development methodology based on iterative and Scrum is one of the implementations of agile methodology.
incremental approach. In which incremental builds are delivered to the customer in
every two to three weeks’ time.

Agile software development has been widely seen as highly Scrum is ideally used in the project where the requirement is
suited to environments which have small but expert project rapidly changing.
development team

In the Agile process, the leadership plays a vital role. Scrum fosters a self-organizing, cross-functional team.

Compared to Scrum it is a more rigid method. So there is The biggest advantage of Scrum is its flexibility as it
not much room for frequent changes. quickly reacts to changes.

Agile involves collaborations and face-to-face interactions In Scrum, collaboration is achieved in daily stand up
between the members of various cross-functional teams. meeting with a fixed role assigned to scrum master, product
owner, and team members.
Difference between Agile and Scrum Methodology

Agile Scrum
Agile can require lots of up-front development process and Not too many changes needed while implementing scrum
organizational change. process.

The agile method needs frequent delivery to the end user for In the scrum, after each sprint, a build is delivered to the
their feedback. client for their feedback.

In this method, each step of development like requirements, A demonstration of the functionality is provided at the end
analysis, design, are continually monitored during the of every sprint. So that regular feedback can be taken before
lifecycle. next sprint.

Project head takes cares of all the tasks in the agile method. There is no team leader, so the entire team addresses the
issues or problems.

The Agile method encourages feedback during the process Daily sprint meeting is conducted to review and feedback to
from the end user. In this way, the end product will be more decide future progress of the project.
useful.
Difference between Agile and Scrum Methodology
Agile Scrum
Deliver and update the software on a regular basis. When the team is done with the current sprint activities, the
next sprint can be planned.

Design and execution should be kept simple. Design and execution can be innovative and experimental.

In the Agile method, the priority is always to satisfy the Empirical Process Control
customer by providing continuous delivery of valuable is a core philosophy of Scrum based process.
software.

Working software is the most elementary measure of


progress.
Working software is not an elementary measure.

It is best to have face-to-face communication, and techniques Scrum team focus to deliver maximum business value, from
like these should be used to get as close to this goal as beginning early in the project and continuing throughout.
possible.
Following are Agile principles

 Welcome changing requirements, even late in development. Agile processes


allow change according to customer’s competitive advantage.
 Business people and developers will work daily throughout the project.
 Attention to technical excellence and right design enhances agility
 Agile team, work on to become more effective, for that they adjust its behavior
according to the project.
Following are scrum principles

 -Self-organization: This results in healthier shared ownership among the team


members. It is also an innovative and creative environment which is conductive to
growth.
 Collaboration: Collaboration is another essential principle which focuses
collaborative work. 1. awareness 2. articulation, and 3. appropriation. It also
considers project management as a shared value-creation process with teams
working together to offer the highest value.
 -Time-boxing: This principle defines how time is a limiting constraint in Scrum
method. An important element of time-boxed elements are Daily Sprint planning
and Review Meetings.
 Iterative Development: This principle emphasizes how to manage changes better
and build products which satisfy customer needs. It also defines the organization’s
responsibilities regarding iterative development.
KEY DIFFERENCE
• Agile is a continuous iteration of development and testing in the software development
process whereas Scrum is an Agile process to focus on delivering the business value in
the shortest time.
• Agile methodology delivers the software on a regular basis for feedback while Scrum
delivers the software after each sprint.
• In the Agile process, leadership plays a vital role; on the other hand, Scrum fosters a
self-organizing, cross-functional team.
• Agile involves collaborations and face-to-face interactions between the members of
various cross-functional teams whereas Scrum collaboration is achieved in daily stand
up meetings.
• In Agile process design and execution should be kept simple whereas in Scrum process
design and execution can be innovative and experimental.

You might also like