Académique Documents
Professionnel Documents
Culture Documents
Edison Lascano
Army Polytechnic School / Ecuador
elascano@dcc.espe.edu.ec
2
Salt Lake City April/2009
3
Salt Lake City April/2009
Outline
y Software Development
p Life Cycle
y
y Agile Manifesto
y Scrum
y XP
y XP embedded
b dd d inside
i id Scrum
S
y Conclusions
4
Salt Lake City April/2009
SDLC
5
Salt Lake City April/2009
Agile Manifesto
Source: http://agilemanifesto.org/
6
Salt Lake City April/2009
Waterfall vs.
vs Agile
Traditional Agile
7
The State Of Agile
g Development
p
Salt Lake City April/2009
(VERSIONONE)
Source: VERSIONONE
http://www.versionone.com/pdf/3rdAnnualStateOfAgile_FullDataReport.pdf
8
Salt Lake City April/2009
Scrum
9
Salt Lake City April/2009
Scrum
y Scrum, more a framework than a
methodology.
y Transparency:
a spa e cy: itt allows
a ows to inspect
spect actual
actua
working software
y Management focus
y Working software every two or four
weeks
10
Salt Lake City April/2009
- -
Daily
- Scrum
-
- -
< 15 min
-
Product Backlog Sprint
Item 1 Backlogg Sprint Potentially
P i ll
-----------
Shippable
- 2-4 weeks…
- Sprint
- - -
- - -
Item 2 Software
Task 1
- - -
-
Item 3 Task 2 Review
11
Salt Lake City April/2009
Product Backlog
To-do list that shows the result of the
product owner’s work.
Product Owner(PO):
Compiles all the features (story users)
Prioritizes them.
A
Accept
t or reject
j t results
lt
Responsible for ROI
Product Backlog
Item 1
Interface between developer and
Item 2 customer
Item 3
12
Salt Lake City April/2009
Sprint Backlog
Before each sprint
p begins,
g the highest
g
priority goals are transferred to the
p
sprint backlogg in a “Sprint
p Planning g
Meeting”. Scrum Master(SM):
Coach, gatekeeper.
In charge of: engineering
practices improvement, daily
Product Backlog Sprint Scrums, Sprint goals, evaluation
Backlogg meetings, sprint reviews,
impediments .
Feature 2 Task 1
- - -
Guides PO in ROI.
Feature 3 Task 2 Interface between ST and PO
13
Salt Lake City April/2009
Sprint
“30 day”
y p
period focused toward fixed
scheduled goals. No changes during a
p
Sprint
Scrum Team(ST):
7±2 members
Task
- - implementation
Product Backlog Sprint They decide how
Backlogg Sprint to work
Feature 2
- - -
Task 1
- - -
- 2-4 weeks…
-
-
Feature 3 Task 2
14
Salt Lake City April/2009
Daily Sprint
Main p
purpose
p is to eliminate speed
p
impediments:
ped e t bac
“Impediment backlog”
og
SM + ST + (PO)
•Done?
- -
Daily
•Do?
- Scrum
- •Impediments?
Impediments?
- -
< 15 min
-
Product Backlog Sprint
Backlogg Sprint
Feature 2
- - -
Task 1
- - -
- 2-4 weeks…
-
-
Feature 3 Task 2
15
Salt Lake City April/2009
Sprint Review
Team demonstrates the completed
p
feature (item) to the PO. Informal, no
slides needed, 2-hours,
SM + ST + PO + …
- -
Daily
- Scrum
-
- -
< 15 min
-
Product Backlog Sprint
Backlogg Sprint
- 2-4 weeks…
- Sprint
- - -
- - -
Feature 2 Task 1
- - -
-
Feature 3 Task 2 Review
16
First Shippable software Salt Lake City April/2009
Retrospective
SM + ST + PO + Customer
- -
Daily
- Scrum
-
- -
< 15 min
-
Product Backlog Sprint
Backlogg Sprint Potentially
P i ll
-----------
Shippable
- 2-4 weeks…
- Sprint
- - -
- - -
Feature 2 Software
Task 1
- - -
-
Feature 3 Task 2 Review
17
Second prioritized feature Salt Lake City April/2009
4 more weeks)
Shippable
pp Shippable
pp
software software
Sprint1 Sprint 2
Retrospective
SM + ST + PO + Customer
- -
Daily
- Scrum
-
- -
< 15 min
-
Product Backlog Sprint Potentially
---------------
Backlogg Shippable
pp
Sprint Software
- 2-4 weeks…
- Sprint
- - -
- - -
…
Task 1
- - -
Feature 3
-
Task 2 Review
18
Final Prioritized feature Salt Lake City April/2009
Retrospective
SM + ST + PO + Customer
- -
Daily
- Scrum
-
- -
< 15 min
-
Sprint Potentially
--------------------
Backlogg Shippable
pp
Sprint Software
- 2-4 weeks…
- Sprint
- - -
- - -
…
Task 1
- - -
…
-
Task 2 Review
19
Final shippable software Salt Lake City April/2009
Retrospective
Potentially
--------------------
Shippable
pp
Software
…
…
20
Burndown charts: Sprint and Salt Lake City April/2009
Product
Velocity: hours/day
250
200
150
100
50
0
1 2 3 4 5 6 7 8 9
-50
Velocityy may
y help
p to determine if the
product can be delivered on time or if
more resources are needed
21
Salt Lake City April/2009
Product Backlog
Feature 1
Feature 2
Feature 3
22
Salt Lake City April/2009
Feature 2 Task 1
- - -
Feature 3 Task 2
23
Salt Lake City April/2009
- -
Product Backlog Sprint
Backlogg Sprint
Feature 2
- - -
Task 1
- - -
- 2-4 weeks…
-
-
Feature 3 Task 2
24
Salt Lake City April/2009
- -
Daily
- Scrum
-
- -
< 15 min
-
Product Backlog Sprint
Backlogg Sprint
Feature 2
- - -
Task 1
- - -
- 2-4 weeks…
-
-
Feature 3 Task 2
25
Salt Lake City April/2009
- -
Daily
- Scrum
-
- -
< 15 min
-
Product Backlog Sprint
Backlogg Sprint
Feature 2
- - -
Task 1
- - -
- 2-4 weeks…
-
-
Feature 3 Task 2
26
Salt Lake City April/2009
- -
Product Backlog Sprint
Backlogg Sprint
Feature 2 Task 1
- - -
- 2-4 weeks…
- -
Daily
-
- -
- - -
Scrum
-
< 15 min
Feature 3 Task 2
-
27
Salt Lake City April/2009
- -
Product Backlog Sprint
Backlogg Sprint
Feature 2
- - -
Task 1
- - -
- 2-4 weeks…
-
--
Feature 3 Task 2
-
Daily
- Scrum
< 15 min
-
28
-
Salt Lake City April/2009
- -
Product Backlog Sprint
Backlogg Sprint
Feature 2
- - -
Task 1
- - -
- 2-4 weeks…
-
- -
-
Feature 3 Task 2
D il
Daily
- Scrum
< 15 min
-
-
29
Salt Lake City April/2009
- -
Product Backlog Sprint
Backlogg Sprint
- 2-4 weeks…
- Sprint
- - -
- - -
Feature 2 Task 1
- - -
-
Feature 3 Task 2 Review
30
Salt Lake City April/2009
- -
Product Backlog Sprint
Backlogg Sprint Potentially
P i ll
-----------
Shippable
- 2-4 weeks…
- Sprint
- - -
- - -
Feature 2 Software
Task 1
- - -
-
Feature 3 Task 2 Review
31
Salt Lake City April/2009
0
1 2 3 4 5 6 7 8 9
- -
Product Backlog Sprint Potentially
---------------
Backlogg Shippable
pp
Sprint Software
- 2-4 weeks…
- Sprint
- - -
- - -
…
Task 1
- - -
Feature 3
-
Task 2 Review
32
Salt Lake City April/2009
- -
Sprint Potentially
--------------------
Backlogg Shippable
pp
Sprint Software
- 2-4 weeks…
- Sprint
- - -
- - -
…
Task 1
- - -
…
-
Task 2 Review
33
Salt Lake City April/2009
Shippable
--------------------
Software
…
…
34
Salt Lake City April/2009
Scrum values
y Commitment
y Openness
y Focus
ocus
y Respect
y Courage
35
Scrum Practices
y Product Backlogg
y Sprint Backlog
y Sprint (and Sprint Planning Meeting)
y Daily Sprint (Daily Scrum Meeting)
y Sprint
S i Review
R i M Meeting
i
y Retrospective
y Scrum Master
y Scrum Teams
y Product Owner
36
Salt Lake City April/2009
eXtreme Programming
38
Salt Lake City April/2009
eXtreme Programming
y Discipline
p Approach
pp to Software
Development (Wells, D., “What is Extreme Programming? :
http://www.extremeprogramming.org)
y FFocused
d on the
th way the
th “programmers”
“ ”
program software.
39
Salt Lake City April/2009
eXtreme Programming
y Someone ggives you
y a problem
p
◦ What is the most important thing of this
problem
◦ We attempt to solve it with the first try
y Pair programming
p g g
y Code review
y Unit tests,
tests more and more while writing
◦ They must pass one by one
y R f t i
Refactoring
40
Salt Lake City April/2009
41
Salt Lake City April/2009
42
Salt Lake City April/2009
Planning
y User Stories
y Release planning
y Project velocity
y Iterations
y Move
M people
l around
d
y Stand-up meeting
43
Salt Lake City April/2009
Designing
y Simplicity
p y
y System metaphor
y CRC cards
y Spike solutions
y refactoring
f i
44
Salt Lake City April/2009
Coding
y Available customer
y Follow standards
y Unit test first
y Pair programmed
y Integrates
I code
d at a time
i
y Integrate often
y Collective code ownership
y Optimization
p
y No overtime
45
Salt Lake City April/2009
Testing
y Unit tests for all code
y Pass unit tests before releasing
y Any bug generates tests
y Acceptance tests
46
Salt Lake City April/2009
A single iteration in XP
Customer
A single iteration in XP
Customer
User story
A single iteration in XP
Programmer
Customer
User story
Tester
A single iteration in XP
Programmer
Product
Customer
User story
Tester
A single iteration in XP
Programmer
Product
Customer
User story
Refactoring
Tester
XP (main) Values
y Communication ((improve
p it))
y Simplicity (seek it)
y Feedback (get it)
y Courage (proceed with)
52
XP Practices
Kent Beck defines 20 practices in his book “Extreme Programming
explained
explained”
◦ The planning game
◦ Small releases
◦ Metaphor
◦ Simple design
◦ Testing
◦ Refactoring
◦ Pair programming
◦ Collective ownershipp
◦ Continuous integration
◦ 40-hour week
◦ On
On-site
site customer
◦ Coding standards
53
Salt Lake City April/2009
XP and Scrum
54
XP and Scrum
y “Supporting eXtreme Programming with Scrum, How
we do
d Scrum”
S ” by
b Rachel
R h l Davies
D i Amarinda
A i d andd Joseph
J h
Pelrine (2003).
56
Salt Lake City April/2009
57
Salt Lake City April/2009
58
Salt Lake City April/2009
59
Salt Lake City April/2009
60
Salt Lake City April/2009
61
Salt Lake City April/2009
XP and Scrum
62
63
64
65
66
67
68
Salt Lake City April/2009
69
Salt Lake City April/2009
XP Engineering Practices
y Simple
p Designg
y Testing
y Refactoring
y Pair programming
y Collective
C ll i ownership hi
y Continuous integration
y Standards to code
70
Salt Lake City April/2009
71
Salt Lake City April/2009
72
Salt Lake City April/2009
Conclusions
Conclusions…
y.
y.
y.
y.
y.
y.
y.
73
Salt Lake City April/2009
Additional Information
74
Salt Lake City April/2009
y Extreme Programming.org
◦ http://www.extremeprogramming.org/what.ht
ml
◦ And many others…
75
Salt Lake City April/2009
76
Salt Lake City April/2009
References
1. 3rd Annual Survey: 2008, “The State of Agile Development”,
Conducted: June-July,
June July 2008
2008,
http://www.versionone.com/pdf/3rdAnnualStateOfAgile_FullData
Report.pdf
2
2. “Manifesto
Manifesto for Agile Software Development
Development”
http://www.agilemanifesto.org/
3. Gangolly, J. “System Analysis & Design”, ”Methodologies for
System Development
Development”, October 1997,
1997
http://www.albany.edu/acc/courses/fall97/acc681/ch7.html
4. “An Introduction to Scrum,” presentation by Mike Cohn,
htt //
http://www.mountaingoatsoftware.com/scrum-a-presentation
t i t ft / t ti
5. Wells, D., “What is Extreme Programming?
“http://www.extremeprogramming.org/what.html
6. Control Chaos, Scrum It’s About Common Sense, “XP @ Scrum”,
http://www.controlchaos.com/about/xp.php
Edison Lascano , pg.77
Salt Lake City April/2009
References
7. Passova S., EBIZQ in action Conference Series, “The need for
Customer Oriented Software Development
Customer-Oriented Development”, 2005,
2005
http://www.ebizq.net/topics/dev_tools/features/5556.html?&pp=1
8. Henrik Kniberg, “Scrum and XP from the Trenches, How we do
Scrum”, 2007 C4Media Inc
Scrum
78
Salt Lake City April 22/2009
You can reuse this file as you need. Modifications or copies are allowed.
You can download this file from:
htt //
http://www.dcc.espe.edu.ec/scrumwithxp/scrumwithxp.ppt
d d / ith / ith t
And the whole document from:
http://www.dcc.espe.edu.ec/scrumwithxp/scrumwithxp.pdf
Edison Lascano
Ecuadorian Army Polytechnic School
elascano@dcc.espe.edu.ec
79