antanas kompanas. when scrum is not enough
DESCRIPTION
Once you start using SCRUM and its time-boxing approach there is a natural urge to put everything into the sprint to get better control of it: initial analysis, architecture, testing, meetings, etc... However, it turns out that it’s not that simple and some tasks are just not meant to be handled in sprint. In this session we will explore how usage of SCRUM evolved in one of the development teams in Baltic Amadeus while working on a big enterprise solution and how we managed to stabilize sprint scope by offloading particular development tasks to KANBAN. We will also show what stages each user story must pass to make it work well in an enterprise environment.TRANSCRIPT
© UAB Baltic Amadeus, 2014 Harmonious IT Solutions
Antanas KompanasSolution ArchitectBaltic Amadeus, Lithuania
When SCRUM Is NOT Enough
© UAB Baltic Amadeus, 2014 2
• Software development and related services
• Number of employees – 100+
• Microsoft Gold Partner
• AGILE driven company
ABOUT BALTIC AMADEUS
1988Baltic Amadeus
is founded
1991
1993
1994
2001
2006
2007Focus on software
2011
20122009
© UAB Baltic Amadeus, 2014 3
• Legacy enterprise system
• BIG (7 different layers, 13 000+ files)
• .NET C#, Web UI, WS
• Technology mix
THE PROJECT
© UAB Baltic Amadeus, 2014 4
• Typical User Story:
– Allow easier registration of business clients
BUSINESS REQUEST
Sounds easy, right?
© UAB Baltic Amadeus, 2014 5
• What you get:
BUSINESS REQUEST
© UAB Baltic Amadeus, 2014 6
• Requirements from client:
– Quick estimate
– Solution specification
– Development
– Code review
DEVELOPMENT PROCESS
Estimate
Specify
Confirm
DevelopReviewDone
© UAB Baltic Amadeus, 2014 7
• Project manager
– Contact person for client
– Local Product Owner
• Team Lead
– Scrum Master
• Developers
• Internal QA specialist
THE TEAM
© UAB Baltic Amadeus, 2014 8
• Requirements from client:
– Quick estimate
– Solution specification
– Development
– Code review
DEVELOPMENT PROCESS
Estimate
Specify
Confirm
DevelopReviewDone
© UAB Baltic Amadeus, 2014 9
• How we work:
– Quick estimate
– Solution specification
– Development
– Code review
DEVELOPMENT PROCESS
Estimate
Specify
Confirm
DevelopReviewDone
© UAB Baltic Amadeus, 2014 10
• Specification benefits:
– Smoother planning
– Improved learning
– Less surprises
DEVELOPMENT PROCESS
© UAB Baltic Amadeus, 2014 11
• What takes time:
– Quick estimate
– Solution specification
– Development
– Testing
– Code review
– Bug fixing
TIME MANAGEMENT
© UAB Baltic Amadeus, 2014 12
• Everything is a sprint task!
SIMPLE SOLUTION
© UAB Baltic Amadeus, 2014 13
• Everything is a sprint task!
SIMPLE SOLUTION
© UAB Baltic Amadeus, 2014 14
• Typical burn-down
SIMPLE SOLUTION
Burned more, done less
© UAB Baltic Amadeus, 2014 15
• Reason: Design specification underestimated
SIMPLE SOLUTION
Burned more, done less
© UAB Baltic Amadeus, 2014 16
• Exclude Design tasks from sprint
SIMPLE SOLUTION 2.0
© UAB Baltic Amadeus, 2014 17
• Exclude Design tasks from sprint
SIMPLE SOLUTION 2.0
© UAB Baltic Amadeus, 2014 18
• Reason: Internal testing starts later
SIMPLE SOLUTION 2.0
3x speed
4x speed
Will we make it?
© UAB Baltic Amadeus, 2014 19
• Exclude testing tasks from sprint
SIMPLE SOLUTION 2.1
© UAB Baltic Amadeus, 2014 20
• Reason: Shared code review task
SIMPLE SOLUTION 2.1
Code review task exhausted
© UAB Baltic Amadeus, 2014 21
• Include code review as a swim lane
SIMPLE SOLUTION 2.9
© UAB Baltic Amadeus, 2014 22
• Only development hours in sprint
• Not included:
– Quick evaluation
– Design specification
– Internal testing
SIMPLE SOLUTION 3.0
© UAB Baltic Amadeus, 2014 23
• Only development hours in sprint
• Not included:
– Quick evaluation
– Design specification
– Internal testing
SIMPLE SOLUTION 3.0
© UAB Baltic Amadeus, 2014 24
ADVANCED SOLUTION
© UAB Baltic Amadeus, 2014 25
ADVANCED SOLUTION
© UAB Baltic Amadeus, 2014 26
• Use KANBAN for Design and evaluation
ADVANCED SOLUTION
© UAB Baltic Amadeus, 2014 27
• All necessary states:
– Backlog
– Rough estimate needed
– Rough estimate done
– Better estimate needed
– Team Review
– Better estimate done
– Design specification needed
– Team Review
– Design specification done
– Ready for development
– Irrelevant
ADVANCED SOLUTION
© UAB Baltic Amadeus, 2014 28
ADVANCED SOLUTION 2.0
Business Board
© UAB Baltic Amadeus, 2014 29
ADVANCED SOLUTION 2.0
Design Board
© UAB Baltic Amadeus, 2014 30
ADVANCED SOLUTION 2.0
Sprint Board
© UAB Baltic Amadeus, 2014 31
ADVANCED SOLUTION 2.0
Support Board
© UAB Baltic Amadeus, 2014 32
• Keep unpredictable tasks outside of sprint
• Design solution ahead of development*
• Use KANBAN for design, evaluation and support
• Split KANBAN boards by activity
• Trust business but improve your work
SUMMARY
* If changes are complex or your system is big
© UAB Baltic Amadeus, 2014 33
QUESTIONS
Questions
Baltic AmadeusVilnius, Lithuaniahttp://www.baltic-amadeus.lt
Antanas KompanasSolution Architect
© UAB Baltic Amadeus, 2014 34
THE END
Thank you!
Baltic AmadeusVilnius, Lithuaniahttp://www.baltic-amadeus.lt
Antanas KompanasSolution Architect