SlideShare a Scribd company logo
Overview of
Agile
Phuong Pham
A [really] short history of
Software development
processes
traditional approach
to software development
REQUIREMENTS
DESIGN
DEVELOPMENT
TESTING
MAINTENANCE
Waterfall Development is
another name for the more
Waterfall Development
This approach is highly risky, often more costly and
generally less efficient than Agile
approaches
REQUIREMENTS
DESIGN
DEVELOPMENT
TESTING
MAINTENANCE
Takes too long
Changes
Skipped
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…
Iterative
AdaptableRapid
Cooperative
Quality-driven
Not a process, it's a philosophy or set of
values
AGIL
E
Comparison
Crystal
XPScrum
DSDM
FDD
Kanba
n
RUP
RUP
(120+)
XP (13)
Scrum (9)
Kanban
(3)
Do Whatever!! (0)
More
Prescriptive
More Adaptive
and few more…
RUP has over 30 roles, over 20
activities, and over 70 artifacts
more rules to follow
fewer rules to follow
Scrum vs. Waterfall
REQUIREMENTS
DESIGN
DEVELOPMENT
TESTING
MAINTENANCE
Iterative Scrum
Scrum in a nutshell
Scrum Roles
Scrum Roles
Product owner
SCRUM
ROLES
Product owner
• Define the features of the
product
• Makes scope vs. schedule
decisions
• Responsible for achieving
financial goals of the
project
• Prioritize the product
backlog
• Adjust features and
priority every sprint, as
needed
• Accept or reject work
results
Scrum Roles
Scrum master
SCRUM
ROLES
Scrum master
• Responsible for enacting
Scrum values and
practices
• Removes impediments
• Coaches the team to their
best possible
performance
• Helps improve team
productivity in any way
possible
• Enable close cooperation
across all roles and
functions
• Shield the team from
external interference
Scrum Roles
Team
SCRUM
ROLES
Team members
• Share the same norms and rules
• Accountable for the delivery
• The Scrum Team is empowered
• It is working as autonomous as
it is possible
• Self organizing
• The skills within the Scrum team
are balanced
• A Scrum Team is small (7+-2)
and has no sub-teams
• The people within the Scrum
Team work full time in the team
• People are collocated
Scrum roles
Stakeholders
SCRUM
ROLESUsers
Chicken & Pig
Scrum Artifacts
Product Backlog & Sprint Backlog
Burndown chart
Impediment List
Scrum board
Scrum process
PREPARATION
Business case & funding
Vision
Initial product backlog
Initial Release plan
Stakeholder buy-in
Assemble team
Logistics
Scrum Process
Sprint
Planning Meeting
Daily Cycle
Update
product
backlog
Sprint
retrospective
Sprint
review
SCRUM
PROCESS
Product
Increment
Scrum Process
Sprint
Planning
Meeting
SCRUM
PROCESS
Sprint Planning Meeting
Who:
• Team, Scrum master, Product Owner.
Agenda:
• Discuss top priority product backlog
items.
• Team select which to do.
Why:
• Know what will be work on.
• Understand it enough to do it.
 Sprint goal
 Sprint backlog
 Definition of Done
Scrum process
SCRUM
PROCESS
Daily
Cycle
Daily Cycle
Parameter:
• Daily
• Stand up
• Time box: 15 mins maximum
Everyone answers 3 questions:
• What did you do yesterday?
• What will you do today?
• Is there anything obstacles?
 Not a status report for Scrum Master, they
are commitments in front of peers.
 Not for problem solving.
Scrum process
SCRUM
PROCESS Product
Increment
Product Increment
The Increment is
a) the sum of all the
Product Backlog items
completed during a Sprint
and
b) all previous Sprints.
SCRUM
PROCESS
Sprint
review
Sprint Review
• Team presents what it accomplished
during the sprint.
• Typically takes the form of a demo of
new features or underlying
architecture.
• Periodically take a look at what is and
is not working.
• Typically around 30 minutes.
• Done after every sprint.
• Whole team participates.
Scrum Process
SCRUM
PROCESS
Sprint
retrospective
Sprint Retrospective
• Periodically take a look at what is and
is not working
• Typically around 30 minutes
• Done after every sprint
• Whole team participates
Scrum process
SCRUM
PROCESS
Update
product
backlog
Update Product Backlog
• Adjust items
• Re – Prioritize
Scrum Measurement?
 Velocity
 Determines the sum of story points completed ("done") per sprint per
team.
 Benefit: Shows the team's capacity for work on a sprint-by-sprint basis.
 Story cycle time
 Average number of days user stories were in a "committed to done"
state on a sprint-by-sprint basis.
 Benefit: Shows how quickly the team completes user stories.
 Estimation accuracy
 Aggregating story cycle time into story point buckets based on the
completed user story's estimate shown over time (monthly).
 Benefit: Shows the reality of how long it takes to complete a user story
versus what's estimated.
Scrum Measurement?
 Defects per release cycle
 Shows number of defects logged per release cycle, broken down to
defect type (IAT, regression, production, post-release).
 Benefit: Shows overall quality of the team's work.
 Defects per story point
 Shows a ratio of defects to velocity per sprint.
 Benefit: Shows team's average quality per story point.
 Test cases run
 Showing the number of test cases executed per sprint, broken down by
test type (manual/automated). Can be shown against the sprint's total
number of defects to show the test cases' effectiveness.
 Benefit: Shows how much testing is being performed during each sprint.
KanbanJust-in-time
(JIT)
Visualize the
Work
Measure & Manage Flow
Signboard
Limit Work-In-Progress
Visual Card
Kanban
Lean 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…
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
Kanban Board Illustration - I
Kanban Board Illustration - II
Kanban Measurement?
CFD (Cumulative Flow Diagram)
Kanban Measurement
Weekly Velocity Analysis
Thank You

More Related Content

Overview of agile methodology

Editor's Notes

  1. Prescriptive means “more rules to follow” and adaptive means “fewer rules to follow”.