The document provides an overview of agile methodology compared to traditional waterfall methodology. Waterfall development completes each phase sequentially before moving to the next, which can be risky and inefficient. Agile is iterative and adaptable, prioritizing working software over documentation. Scrum is an agile framework that uses short sprints, daily stand-ups, and backlogs to deliver working software frequently. Kanban also uses iterative development but visualizes workflows on boards to limit work in progress and optimize lead times.
5. Waterfall Development (contd..)
You complete one phase (e.g. design) before moving on to
the next phase (e.g. development)
You rarely aim to re-visit a ‘phase’ once it’s
completed. That means, you better get whatever
you’re doing right the first time!
6. This approach is highly risky, often more costly and
generally less efficient than Agile approaches
REQUIREMEN
TS
DESIGN
DEVELOPMEN
T
TESTING
MAINTENANC
E
Takes too
long
Change
s
Skippe
d
● You don’t realize any value until the end of
the project
● You leave the testing until the end
● You don’t seek approval from the
stakeholders until late in the day
But…
9. Individuals and interactions over processes and
tools
Working software over comprehensive
documentation
Customer collaboration over contract negotiation
Responding to change over
following a plan
Agile Manifesto
12. ScrumA light-weight agile process tool
Split your organization
into small, cross-functional, self-
organizing teams.
Split your work into a list of small, concrete deliverables. Sort
the list by priority and estimate the relative effort of each item.
Scrum Team
Scrum Master
Product/ Project
Owner
13. Split time into short fixed-length iterations/ sprints (usually 2 – 4
weeks), with potentially shippable code demonstrated after each
iteration.
Scrum (contd..)
January May
Optimize the release plan and update priorities in
collaboration with the customer, based on insights gained by inspecting the
release after each iteration.
Optimize the process by having a retrospective after each
iteration.
16. Things we do in Scrum
The project/ product is described as a list of features: the backlog.
The features are described in terms of user stories.
The scrum team estimates the work associated with each story.
Features in the backlog are ranked in order of importance.
Result: a ranked and weighted list of product features, a
roadmap.
Daily scrum meeting to discuss What did you do y’day? What will
you do today? Any obstacles?
a.k.a Scrum terminologies
17. Scrum Artifacts
Iteration/ Sprint 1 Iteration/ Sprint 2
Sample Userstory
Efforts
10hrsEfforts: 2hrs IA, 6hrs Development, 2hrs Testing
The total effort each iteration can
accommodate leads to number
of user story per iteration
One release may contains number of iterations
Release
18. Scrum planning example
Iteration cycle of 3 weeks
Working hours per day is 8 120hrs
Total hours of work iteration
can accommodate
8hrs x 5days x 3weeks =
Product backlog of 20 stories
Each story effort is 10 hrs
Iteration backlog or number of stories per iteration
12 user story/BackLog
19. Scrum in a nutshell
So instead of a large group spending a long time building a
big thing, we have a small team spending a short time
building a small thing.
But integrating regularly to see the whole.
21. KanbanLean approach to agile development
Similar to Scrum in the sense that you focus on features as
opposed to groups of features – however Lean takes
this one step further again.
You select, plan, develop, test and deploy one
feature (in its simplest form) before you select, plan,
develop, test and deploy the next feature.
Aim is to eliminate ‘waste’ wherever possible…
22. Kanban (contd…)
Visualize the workflow
Limit WIP (work in progress)
• Split the work into pieces, write each item
on a card and put on the wall
• Use named columns to illustrate where
each item is in the workflow
• Assign explicit limits to how many items may be in progress at each stage
Measure the lead time (average time to complete one
item, sometimes called “cycle time”)
• Optimize the process to make lead time as small and predictable as possible