New feature development in agile should almost always start with a spike. Spikes help to define feature scope, uncover technical unknowns, and provide accurate estimates. In this session we will cover how to introduce spikes into your development cycles and show how Atlassian defines spike goals, focuses spike efforts, and makes feature development more effective.
2. Spiking your way to improved Agile
development
Anatoli Kazatchkov • Dev Manager • Atlassian • @tolks
3. About Me
• Anatoli Kazatchkov
• Confluence Dev Manager
• Software Developer for 12 years
• Shipped 20+ major, 50+ minor
releases of Confluence since
2007
• … but still learning how to write
and ship better software
6. Velocity tracking
Iterative development
Continues integration Pair programming
User stories
Story point estimation
Development Backlog
Test-driven development
Timeboxing
Scrum
Refactoring
Planning poker
…
Sprints
Domain-driven
design
Cross-functional
teams
7. Our Highest Priority Is To Satisfy The
Customer Through Early And Continuous
Delivery Of Valuable Software.
The First Principle of The Agile Manifesto ”
“
8. Top 5
Spikes Short
Sprints
Demos Dogfooding Shipping
22. How To Run a Spike
What tasks appropriate for spikes?
• Almost anything
• Technically difficult tasks
• Integration tasks with a lot of
dependencies
• Time critical tasks where accurate
estimates required
23. How To Run a Spike
Indicators that spikes will be useful
24. How To Run a Spike
Indicators that spikes will be useful
• Spec has a lot of questions
25. How To Run a Spike
Indicators that spikes will be useful
• Spec has a lot of questions
• Working with new libraries, new code,
unfamiliar part
26. How To Run a Spike
Indicators that spikes will be useful
• Spec has a lot of questions
• Working with new libraries, new code,
unfamiliar part
• Implementation uncertainties
27. How To Run a Spike
Indicators that spikes will be useful
• Spec has a lot of questions
• Working with new libraries, new code,
unfamiliar part
• Implementation uncertainties
• New team
• Team cannot agree on approach/
estimation during planning
37. Spikes in Your Team
You Do it Already
• When creating a tech requirements
document
38. Spikes in Your Team
You Do it Already
• When creating a tech requirements
document
• When architects designs system
interactions
39. Spikes in Your Team
You Do it Already
• When creating a tech requirements
document
• When architects designs system
interactions
• As a part of working on a big task