0% found this document useful (0 votes)
165 views6 pages

Waterfall Vs Agile

Download as docx, pdf, or txt
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 6

Waterfall Model

In "The Waterfall" approach, the whole process of software development is divided into separate phases.
In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase
sequentially.
When to use the waterfall model

 When the requirements are very well known, clear and fixed.
 Product definition is stable.
 Technology is understood.
 There are no ambiguous requirements
 Ample resources with required expertise are available freely
 The project is short.

Cost of fixing bugs in different phases of SDLC

The cost of fixing bugs in the real world

A real-world example of catching a bug in production is the Samsung Note 7 fiasco. Experts speculate
that one of the problems with the Note 7 phones involved its battery management system. This system
monitors electric current and stops the charging process when the battery is full. A fault in this system
could lead the battery to overcharge, become unstable, and eventually explode.

This bug fix cost Samsung nearly $17 billion. Had the company caught the issue earlier, they could have
saved a lot of money and headaches, as well as their reputation.

Advantages and Disadvantages of Waterfall-Model

Advantages Dis-Advantages
 Simple and easy to understand and use  High amounts of risk and uncertainty.

Before the next phase of development, Error can be fixed only during the phase
each phase must be completed
 Clearly defined stages.  No working software is produced until late
during the life cycle.

Suited for smaller projects where It is not desirable for complex project where
requirements are well defined requirement changes frequently
The Agile Development Methodology

The Agile development methodology takes a collaborative approach to software development where
requirements and solutions evolve through iterations.

The Agile development:

1. Establish a few initial requirements


2. Design
3. Develop
4. Test
5. Deploy
6. Evaluate the resulting micro outcome (ie a product feature)
7. Collect feedback on what’s been presented thus far
8. Establish new requirements for next iteration (sprint) based on feedback & repeat the micro
outcome cycles until you achieve the final desired product
Agile Terminology

 Epic

An epic is a large user story.

 Backlog (Product Backlog)

List of the new features, changes to existing features, bug fixes, infrastructure changes or other
activities that a team may deliver in order to achieve a specific outcome.

 Iteration (Sprint)

A timebox during which development takes place. The duration may vary from project to project
and is usually fixed.

 Scrum

A process framework used to manage product development and other knowledge work.

 Product Owner

Person responsible for making sure the team delivers the desired outcome.

 Scrum Master

Person responsible for ensuring the team lives agile values and principles and follows the
practices that the team agreed they would use.

 Sprint

A repeatable fixed time-box during which a "Done" product of the highest possible value is
created. Usually 2 to 4 weeks.

 Sprint Planning

An event that occurs at the beginning of a sprint where the team determines the product backlog
items they will work on during that sprint.

 Retrospective

The team meets regularly to reflect on the most significant events that occurred since the previous
such meeting, and identify opportunities for improvement.

 Scrum of Scrums

A technique to scale Scrum up to large groups (over a dozen people), consisting of dividing the
groups into Agile teams of 5-10.
Team / Roles

Waterfall Agile
Product Owner Product Owner
   
Project Manager / Team Lead Scrum Master
   
Software Developers
Software Testers Development team
User Acceptance Testers
Waterfall Model Agile Model
Planning – Waterfall model requires planning for Planning in Agile projects is generally on a short term
long term which requires complete clarity in since the work product is delivered in 2 to 4 weeks
requirements
   
Waterfall projects are driven from the top of a Teams are self governing in an Agile project
projects hierarchy
   
Sequential planning with clearly defined milestone Planning in Agile projects is iterative in nature and
details and predictability are characteristics of adapts to changing requirements
Waterfall projects
   
There is no much dependency on the end users There is significant dependency on the users, all the
during the development and other intermediate way through the lifetime of the project
phases
   
Complete requirements are clearly documented to Requirements continue to develop over the lifetime
begin with of the project and are defined when they are
needed, i.e, just in time
   
Team members with different roles have different Equal responsibility is shared between the roles
responsibility levels
   
Quality Control activities like Testing are performed Quality Control activities are performed throughout
towards the end of the project the project
   
Delivery of the project at the end is characterized by Working product features are delivered in each
a big bang event sprint of the project

You might also like