1. Slow Down to Go Fast:
Lessons Learned Shipping
Bing Voice Search on Xbox
James Waletzky
Director of Development & QA Practices, Crosslake
(formerly Dev Lead @ Microsoft)
jamesw@crosslaketech.com
Randy Santossio
Senior SDET, Microsoft (Xbox)
ransan@microsoft.com
Agile 2012 Microsoft 1
1
2. Who is this James guy?
http://blogs.msdn.com/b/progressive_development/
Agile 2012 Microsoft 2
2J
10. The internal workings
Games Applications
Movies TV
Music Apps
bing
Voice to
Text
Controller Xbox Voice Input
Input LIVE (Kinect)
Agile 2012 Microsoft 10
10 R
19. The buddies worked together…
Dev: Team: Dev: Team:
• sends code • reviews code • fixes found • signs off on
review changes bugs code
• builds & tests • updates code • dev checks in
new code review code
• finds new bugs
Agile 2012 Microsoft 19
19 R
20. They huddled every day around this archaic board
Agile 2012 Microsoft 20
20 R
35. I Unit Tests! Real, unsolicited quotes
from Xbox developers
“Unit tests flagged a
“Unit Tests make
real bug in legacy
me feel cuddly”
code that I never
would have found”
“Thinking test-first
“In God we trust.
helped me get the
Everything else we
design right the
unit test”
first time”
“Is it failing because of
a problem in the code, “My unit tests revealed a
or because I don’t subtle bug that never would
understand the code” have been found otherwise
[except potentially by the
customer]”
Agile 2012 Microsoft 35
35 J
36. No unit tests? You’ve got some ‘splaining to do!
Agile 2012 Microsoft 36
36 J
39. What should YOUR team do?
Start “by the book”, and always follow the principles, but break agile
as necessary
Form dev/test buddies early
Build quality in early – remove the walls
Collaborate in person and in writing
Create “done” definitions based on tests
Automate pragmatically, using coverage to adapt
Pay down your technical debt before it is long-term
Agile 2012 Microsoft 39
39 J
41. James Waletzky
Director of Development & QA Practices, Crosslake
(formerly Dev Lead @ Microsoft)
jamesw@crosslaketech.com
Randy Santossio
Senior SDET, Microsoft (Xbox)
ransan@microsoft.com
Agile 2012 Microsoft 41
41