Professional Documents
Culture Documents
Overview
Fabrizio Morando
Application Development Manager
Working software
Working software
Working software allows product to be
encourages
helps a team gauge shipped early if
feedback when
its progress work desired the opion
users can see and
shown to be to ship early can be
touch the product
complete allows for very valuable to your
they can immediately
real progress to be customer to allow for
tell if it is what they
identified markets that change
want
rapidly
The Agile Manifesto a statement of
values
Individuals and
over Process and tools
interactions
Comprehensive
Working software over
documentation
Customer
over Contract negotiation
collaboration
Responding to
over Following a plan
change
Source: www.agilemanifesto.org
Project noise level
Far from
Agreement
Anarchy
Requirements
Complex
Agreement
Certainty
Certainty
Close to
Far from
Technology
What is Scrum?
Scrum employs an iterative, incremental approach to optimize
predicability and control risk
A holistic or rugby
approach where a team
tries to go to the distance as
unit, passing the ball back
and forth may better
serve todays competitive
requirements
Sprint
2-4 weeks
Sprint goal
Return
Sprint
Potentially shippable
Cancel
Return backlog
product increment
Coupons
Gift wrap
Gift
Cancel
wrap Coupons
Product
backlog
Putting it all together
Image available at
www.mountaingoatsoftware.com/scrum
Agile : Scrum framework
o Define success
o Define failure
o Optimize the process for success
Agile : Scrum framework
Scrum employs an iterative, incremental approach to optimize
predicability and control risk upon three pillars of empirical process
control:
Transparency
o The aspects of the process that affect the outcome are visible
Inspection
o Frequent enaugh inspection allow the detection of unacceptable variances
Adaption
o If inspection reveals elements outside acceptable limit possible to minimize further
deviation
Agile : Scrum framework
Planning Doing
Predictive: Empirical:
All planning is JIT planning and re-
done at the planning based on
beginning frequent inspection
P D P D P D
Planning Doing
Agile : Demming cycle (PDCA)
Sprint Sprint
Retrospective Planning
Act Plan
Check Do
Daily Scrum
Burndown Sprint
charts
Impediments
Sprints
Scrum projects make progress in a series of sprints
Analogous to Extreme Programming iterations
Typical duration is 24 weeks or a calendar month at most
A constant duration leads to a better rhythm
Product is designed, coded, and tested during the sprint
Sequential vs. overlapping
development
Change
Plan sprint durations around how long you can commit to keeping
change out of the sprint
Scrum framework
Roles
Product owner
ScrumMaster
Team Ceremonies
Sprint planning
Sprint review
Sprint retrospective
Daily scrum meeting
Artifacts
Product backlog
Sprint backlog
Burndown charts
Scrum framework
Roles
Product owner
ScrumMaster
Team Ceremonies
Sprint planning
Sprint review
Sprint retrospective
Daily scrum meeting
Artifacts
Product backlog
Sprint backlog
Burndown charts
Product owner
Define the features of the product
Decide on release date and content
Be responsible for the profitability of the product (ROI)
Prioritize features according to market value
Adjust features and priority every iteration, as needed
Accept or reject work results
MOSCOW Mst,Should,Could,Would
C
75% of the estimated S
Effort
(more is a risk)
Its a negotiation
M With customer
Release Planning meeting
Four Variables
DoD
Sprint Planning Meeting
Team
Sprint planning meeting
capacity
Sprint prioritization
Business
conditions Sprint planning
Decide how to achieve sprint
Current goal (design)
Sprint
product Create sprint backlog (tasks) backlog
from product backlog items
(user stories / features)
Technology Estimate sprint backlog in hours
Sprint Planning Meeting
The team decide how it will turn what was selected during the
1 first half of the meeting (sprint prioritization) into a done
increment
Dod must be
understood by
everyone in the
scrum team !!!
Sprint: Abnormal Termination
Sprints can be terminated or abandones before the timebox
PO is the only one who can cancel a sprint
Termination can happen for variuos reasons: changes in competition,
technology, business
It is time consuming to cancel a sprint because you have to have a
sprint review for work that has been completed, understand what to
do with the unone work, hold a retrospective and re-plan for another
sprint
Sprint planning meeting
Team selects items from the product backlog they
can commit to completing
Sprint backlog is created
Tasks are identified and each may be estimated (1-16
hours)
Collaboratively, not done alone by the ScrumMaster
High-level design is considered
As a vacation planner, I want to
see photos of the hotels. Code the middle tier (8 hours)
Code the user interface (4)
Write test fixtures (4)
Code the foo class (6)
Update performance tests (4)
The daily scrum
Parameters
Daily
15-minutes
Stand-up
Not for problem solving
Whole world is invited
Only team members, ScrumMaster, product owner, can
talk
Helps avoid other unnecessary meetings
Everyone answers 3 questions
1
What did you do yesterday?
2
What will you do today?
3
Is anything in your way?
Chickens:
Pigs: committed members
Involved members
How many stories did we plan? How many stories are done
Haw many points did we plan How many story points
Dod completed
Effort to be invested Effort: planned vs actual
Sprint review
Show overall progess
Look at quality
Number of unit & acceptance tests
defined ad passed, Number of bugs
3
Finished the agreed what has
functionality conditions of been seen
satisfaction? and what to
do next
Stop doing
Continue doing
This is just one of
many ways to do a Can include discussion on processes,
sprint practices, communication, environment,
retrospective. artefacts, tools, etc
Scrum framework
Roles
Product owner
ScrumMaster
Team Ceremonies
Sprint planning
Sprint review
Sprint retrospective
Daily scrum meeting
Artifacts
Product backlog
Sprint backlog
Burndown charts
Product backlog
The requirements
A list of all desired work on
the project
Ideally expressed such that
each item has value to the
users or customers of the
product
Prioritized and owned by the
product owner
Groomed by team
This is the
Reprioritized at the start of
product backlog each sprint
A sample product backlog
Backlog item Estimate
Allow a guest to make a reservation 3
As a guest, I want to cancel a
5
reservation.
As a guest, I want to change the dates of
3
a reservation.
As a hotel employee, I can run RevPAR
8
reports (revenue-per-available-room)
Improve exception handling 8
... 30
... 50
Sample Product Backlog
Product Backlog: DEEP
Detailed
Emergent
PB: Detailed Appropriately
Higher priority items described in more detail, smaller and
more coincise, lower priority items have less detal as they
cam be detailed later in the release. This keeps the backlog
concise, as a consequence requirements are discovered
throughout the project.
Product discovery is ongoing
PB: Estimated and Emergent
Estimated
The PB items are roughly estimated in story points or
days leave detailed planning to the sprint planning
meeting
Emergent
The PB evolves throughout the project, the content
changes with user feedback and as the product is
developed new areas can be uncovered IT IS DYNAMIC
!!!
PB: Prioritised
All items are prioritised, the most important are
implemented first.
Useful factors for prioritising are:
Value, knowledge, uncertainty, risk, releasability and
dependences
Priorities direct teams work
Life Sciences
Support features necessary for
Database population genetics studies.
Application
Make the application run on
SQL Server in addition to
Oracle. Financial services
Support more technical
indicators than company
ABC with real-time,
streaming data.
Sprint Backlog
Newly
Added !!!
Managing the sprint backlog
List of tasks the scrum team is committing they
will complete in the current sprint
Pulled together during the sprint planning
meeting
Team decide on the items and time required to
complete them
Scrum master updates during sprint to reflect
which tasks are completed
Managing the sprint backlog
Individuals sign up for work of their own choosing
Work is never assigned this promotes self organization
Discuss how
Involve
every SBI
Identify all Dont
every team Have a DoD kinds of estimate
should be
member tasks tasks at all
implemented
1 2 3 4 5
Review
Dont assign Dont use Evolve the
Sprint
tasks up too much SB during
committmen
front time the sprint
t
6 7 8 9
A sprint burndown chart
Hours
Tasks Mon Tues Wed Thur Fri
Code the user interface 8 4 8
Code the middle tier 16 12 10 7
Test the middle tier 8 16 16 11 8
Write online help 12
50
40
30
Hours
20
10
0
Mon Tue Wed Thu Fri
Agile: Estimating
Why do it?
OR
As a borrower, I want to
be able to take a book
out and keep it for two
weeks
T-shirt SML
Scale 0,1,2,3,5,8,13,20