distributed scrum for dutch...
Post on 19-Mar-2020
6 Views
Preview:
TRANSCRIPT
Distributed Scrum for Dutch RailwaysJan Vermeir, Xebia
Scrum promises effective and efficient software development
Yes, it actually works
I will show you how we implement distributed Scrum for our customer
Classic outsourcing of software development
often fails to meet customer demands
Xebia's customer, ProRail, builds and maintains
railway infrastructure in the Netherlands
ProRail is a respectable organisation with a long history and a strong focus on reliability
The Netherlands has 6500 km of railway, 6000 trains and 1.2 million travelers daily. 85% of the trains leaves on time.
A program was started to improve information for
travelers
The programs aim was to improve timeliness and accuracy of information presented to travelers
PUB is part of the larger InfoPlus program. The PUBlication system displays and broadcasts information
The outsourcing strategy that was selected fosters
conflict
CONFLICT!
Xebia introduces distributed Scrum to
develiver quality software on time
Xebia introduces Scrum to build the PUBlication
system
Scrum helps you and your customer focus and prioritize
But it's hard to influence a waterfall-based environment
Distributed Scrum increases team size while
avoiding classical offshoring pitfalls
Scaling up to larger teams is difficult in the Netherlands
150
The cost of developers in India is lower, availability is higher
30
Joint development with Xebia India allows us to scale
Our customer was unfamiliar with both Agile
development and offshoring.
We were facing a list of challenges
We had to help our customer to adopt Scrum
It is very important to choose your product owner carefully
Waterfall driven requirements are no substitute for user stories
Testing was based on requirements while development was based on user stories
Requirements written in Dutch cannot be used in India
How do I implement distributed Scrum?
Effective communication is one of the key success
factors
Skype, wiki, mailinglist and VNC allow distributed teams to interact at low cost but with high quality
One backlog allows teams to coordinate their work
One version control system ensures we never lose track of each others work
Team members visited the other location during the project
Team composition is very important as well
We started with a small co-located team of Dutch and Indian colleagues
We applied the cell concept to scale up
We don't suffer 'us' and 'them' feelings because teams are mixed across locations
11 star players do not make a great soccer team
'Quality without compromise' pays off,
even during the project
'The maintainability of the system is very good''The quality of the source code is very high'
PUB shows consistently less errors than other parts of the program
The nightly quality build fails if code quality is too low, based on Findbugs and PMD. Developers use Checkstyle for Eclipse.
Unit test coverage is high.
80%
Quality software requires extensive testing
We use Fitnesse to test user scenario's
We take testing very seriously...
Test Pages: 497 right, 10 wrong, 0 ignored,
0 exceptions Assertions: 29606 right, 54 wrong, 0 ignored, 11
exceptions
User interface testing is still manual, which hurts every two weeks when we deliver a new iteration
Set up a separate team to handle
exceptions
Team Green handles whatever doesn't fit in regular iteration work
Performance and stability were tested on a regular basis
The customer required us to provide answers to several lengthy check lists
Documentation was written by a technical writer
Scrum in distributed teams allowed Xebia to deliver quality software on time within budget
Resources
• Scrum User Group Portugal http://www.scrumpt.com
• PT Scrum events http://www.fullsix.pt/scrum/
• Scrum Mail Group http://groups.yahoo.com/group/scrumpt
scrumpt@yahoogroups.com
• Scrum Alliance http://www.scrumalliance.com/
• Mitch Lacey http://www.mitchlacey.com
top related