3. History Philosophy & Geography
We've been building software like
●
submarines
Design, Prototype, Develop
–
and Ship it out!
But software speaks for itself that it
●
is “soft”
Heavy Weight Processes (RUP)
●
Heavyweight tools (Rational Rose)
●
We've been imitating construction
●
industry!
Draw, Map, Build, Inspect!
●
4. History Philosophy & Geography
In reaction to all this, a new tide towards
●
lightweight methods.
The era was around 1990.
●
Since then, many variants and flavors are out
●
there
Extreme Programing
–
Scrum
–
Getting Real (My favorite)
–
Agile Unified Process
–
5. The Agile
All these processes
●
are termed in broad
as “Agile”
My first mental image
●
of the word “Agile” is
on right.
And its not as wrong!
●
Both are flexible.
●
6. The Scrum
Out of many (a)jellies, we're with Scrum now.
●
I'll introduce you to:
●
The concepts
–
The processes
–
And our adaptation
–
Fasten your seatbelts!
●
A little disclaimer: I'm too in learning process!
●
And a little on how I've addressed the problem.
●
7. Scrum: Know the Land
People
●
Product Owner
–
Scrum Master
–
Team
–
Tools
●
Product Backlog
–
Sprint Backlog
–
Burndown Chart
–
Processes
●
Sprint Planning
–
Daily Scrum
–
Sprint retrospective
–
8. Product Owner
Pretty obvious!
●
Direct beneficiary of the business value arising
●
from the product being built.
Describes what functionality needed.
●
And in what order? What is important?
●
Scrum Role: Decides features and importance
●
9. Scrum Master
The coordinator of the whole Scrum Process
●
Keeps an eye any obstacles along the way
●
Facilitator
●
A bridge between product owner and the team.
●
Scrum Role: Manages the whole Scrum
●
process including any housekeeping like
notifying all stakeholders of events.
10. Team
Those who are into development
●
Typical size between 3 to 9
●
Develops the features in determined order
●
Scrum Role: Decides Time estimates for
●
features
11. th
The 4 Dimension: Sprint
All those people have to perform those
●
processes with the help of those tools in span
of a sprint!
Sprint is a short period ranging between 2
●
weeks to 5 weeks at max.
It has a goal: “Make CEO impressed!”
●
A corporate heartbeat
●
12. Product Backlog
Root of the whole process
●
Is a list of features that are to be built.
●
Also known as stories or backlog items
–
We record following attributes
●
ID
–
Name
–
Initial Estimate
–
Importance
–
How to Demo
–
Notes
–
13. Product Backlog
ID Name Importance Estimate How to Demo Notes
Music playlist Hit request and get XML
1 100 10
Advertisement timeline Hit request and get XML
2 120 10
Music Collection Generation Hit request and get XML
3 80 10
Must be kept at business level
●
Might grow/shrink over time
●
We'll explore it further
●
14. Sprint Backlog
Features selected to be implemented in a single
●
sprint.
Team selects features based on:
●
Importance
–
And its own velocity
–
Format is almost same as of product backlog
●
Remaining work is indicated and automatic
●
generation of charts
15. Burndown Chart
A visual indicator of how the sprint is going?
●
Would we succeed?
●
Do we've lot of work? Or under work?
●
On Y axis, remaining work in man days
●
On X axis, days of sprint
●
Let's see an example
●
17. Things so far
We've covered the people and the tools of a
●
Scrum and soon going towards processes.
I know some of the tools are not clear to you.
●
Don't worry, tools will be crystal clear in context
●
of processes.
Phew!
●
Take a breath, and let's move on!
●
18. Sprint Planning Meeting
What to do in a sprint? That's it!
●
Participants:
●
Product Owner, Scrum Master, Team
–
Outcomes:
●
Team
–
Sprint goal, Sprint backlog
–
Daily Scrum Meeting place and time
–
Demo date and place
–
19. Difficult questions
How team decides what to include?
●
Pick top priority items
–
That are less then their estimated velocity.
–
How product owner can force team to include
●
certain items?
Change the priority of items and team will be forced
–
to shuffle the sprint backlog.
20. The velocity
From physics, Velocity is displacement in a
●
direction.
Velocity is the amount of work a team can do.
●
Estimated Velocity (calculated)
–
Actual Velocity (comes out of a sprint)
–
If 4 people are available, and sprint length is 3
●
weeks then:
Velocity = 4 x 15 = 60
●
Warning: I've used the term velocity others call it available man days
●
21. The Estimated Velocity
That was the velocity but it cant be compared to
●
story points which are ideal man days.
So we need to refine it:
●
Estimated Velocity = Velocity x Focus Factor
●
Focus factor for new teams is around 70%
●
Estimated Velocity = 60 x 0.7 = 42 story points
●
22. So how do you pick?
You actually choose top priority stories that
●
optimally add up to estimated velocity of team.
Say 4 people 3 week sprint and 70% focus
●
factor then estimated velocity would be 42 story
points.
Team would select top priority stories totaling
●
less then 42
Product owner might change importance to
●
shuffle the order.
23. Actual Velocity
Chance are that you might not be able to
●
complete all the stories in a sprint.
If so, then the total sum of story points of the
●
stories completed in a sprint is the actual
velocity.
If all the stories are completed, then estimated
●
velocity is the actual velocity.
24. Focus Factor
But how to calculate focus factor of last sprint?
●
Focus factor = Actual Velocity / Velocity
●
Say in the previous given example, we only
●
completed 35 story points then:
Focus factor = 35 / 60 = 58%
●
So the focus factor has been 58% for that sprint
●
26. How to estimate items?
But how to estimate each backlog item?
●
There are two ways:
●
Gut feeling
–
Planning Poker (http://www.planningpoker.com/)
–
Gut feeling is just an intuitive estimate
●
Planning poker is card game, for each item,
●
each team member throws a hidden card
indicating how much he thinks story would cost.
Nobody affects nobody's mind this way
●
27. What else?
What else comes out of the sprint planning
●
meeting?
A time and place for daily scrum meeting
●
A demo date and place
●
Also, we divide the stories into technical tasks.
●
This helps in uncovering any hidden challenges.
That's all for sprint planning meeting.
●
28. Daily Scrum
All team members meet daily and
●
discuss following:
What we did last day?
–
What we're going to do next?
–
Are their any hurdles in
–
progressing?
Its not a report. Neither a
●
monitoring tool.
Its just keeping each other aligned
●
with the line.
And identifying the problems if any.
●
29. Sprint Retrospective
We review the whole sprint after its finished
●
Learning from mistakes
●
If I would have to start over, I'd like to do it this
●
way.
Sprint Regretospective!
●
Its not very formal, just turn by turn, review what
●
you liked, what you'd like to avoid.
30. How big is each?
Spring planning is a 4 hour meeting.
●
Can be extended onto next day if fails in its goals
–
Sprint is about 3 weeks in length
●
Daily Scrum Meeting is 15 minutes in length
●
Sprint Retrospective is about 30 minutes or
●
more.
That's the whole process reviewed!
●
31. A Backlog Example
*** Priority is calculated using Wiegers Relative Weighting Approach
Benefit / Penalty Scale 1 (low) 9 (high)
PRODUCT BACKLOG
Total Value
*** Priority
Estimate
Relative
Relative
Value %
Penalty
Cost %
Benefit
ID STORY / FEATURE / REQUEST CATEGORY TYPE
1 As the system I want to be able to capture image files from disk Imaging Feature 9 9 18 22.2 10 10.4 2.13
7 As a user when I enter a non alphanumeric character when logging in an error occurs Login Bug 2 1 3 3.7 2 2.1 1.78
2 As a user I want to be able to view the metadata for an image Index Feature 7 3 10 12.3 8 8.3 1.48
3 As the system when an image appears on disk I want to automatically capture it Imaging Feature 8 9 17 21.0 15 15.6 1.34
4 As a user I want to be able to login to the system Login Feature 3 5 8 9.9 8 8.3 1.19
5 As a user when I have logged in I want to view my inbox Desktop Feature 9 2 11 13.6 21 21.9 0.62
6 As a user I want to be able to view a scanned document Imaging Feature 8 6 14 17.3 32 33.3 0.52
TOTALS 46 35 81 100 96 100
32. An example Sprint Backlog
SPRINT 1
GOAL
SPRINT BURNDOWN CHART
Lorem ipsum tibique patrioque disputationi at nec, ei eam semper
gubergren. Ne duo atqui dictas feugiat, ea mea suscipit sententiae 400
complectitur. Nusquam contentiones ut cum, offendit invenire et quo.
His cu dicam labores quaestio.At vix sale prompta, ullum honestatis
350
cotidieque et usu. No quodsi impedit nam. Eam at virtute assentior
temporibus, ad pri fuisset apeirian atomorum. Mei ea tollit
300
suscipiantur. Mel no possim postulant aliquando, facer choro ne ius.
250
200
Hours
150
100
50
0
Day 3 Day 7 Day 11 Day 15 Day 19 Day 23 Day 27
Day 1 Day 5 Day 9 Day 13 Day 17 Day 21 Day 25 Da
0
1
2
3
4
5
6
7
8
9
0
y 1
y 2
y 3
y 4
y 5
y 6
y 7
y 8
y 9
y 1
y 1
y 1
y 1
y 1
y 1
y 1
y 1
y 1
y 1
y 2
y
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
Da
ITEM DESCRIPTION WHO? Hours of Effort
Remaining > 362 353 336 324 320 322 322 322 315 322 322 322 322 322 322 322 322 322 322
322
Story A
GSM
Task 1 40 40 32 20 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0
33. Connecting the dots
Let's review the whole thing
●
Product owner owns the backlog and prioritizes the items
●
Scrum master manages everything
●
Sprint meeting chooses some stories to be done
●
Daily Scrum allows you to be in sync with whole team
●
Burndown charts give visual indicators.
●
Scrum Retrospectives keep refining the process.
●
Life gets going!
●
34. Our adoption
We'll use OpenOffice spreadsheets for Product
●
backlogs controlled under git.
Same for sprint backlogs
●
Each of us would keep updating those sheets
●
which would autogenerate the burndown charts.
We'll adopt it to our environment.
●
My lifestyle wont fit yours!
●
So is for the adoption of methodologies.
●
35. Closing Remarks
I've tried to summarize the Scrum and how it
●
would be adopted by us in a nutshell.
Left out many aspects that I think are not of
●
immediate importance to us for now.
We all will learn in the process
●
This presentation is just a 2 D figure.
●
Actual execution would reveal more dark
●
corners!
36. Thanks & Credits
Qaiser and Fahad! Hats off for your on spot help in
●
aesthetic matters!
Tim for the material.
●
Bart of the critical questions, Jelle for encouragement.
●
Spreadsheet templates are from http://agilesoftwaredevelopment.com
●
And all of you, you owe credit for listening!
●
Any questions?
●
Thank you very much!
●