1 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Stories from the Flexible CompanyBas VoddeAarhus, DenmarkSeptember 2007
2 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
DISCLAIMER!
This presentation is based on my views and my opinion. This is not the view of the company and also others have experienced the same time in a different way :)
3 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Stories
• Creation story• First months• Flexible team• Scrum• Clearcase and other ill weeds• Becoming Flexible Company• CMMi• Failures• Teaching TDD• Metrics• The dead Scrum Master
4 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Creation story
5 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Problems in product development
• Many faults found in testing… and by customer.• Most important features are not implemented in time.
6 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Obvious solution!
Architecture
and
Requirement
analysis
Development Test
Milestone
#1
Milestone
#2
Milestone
#3
Milestone
#4
7 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Maybe not?
What if we would develop more efficiently and with a better quality?
8 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Result:
Flexible R&D
Make R&D more flexible.
By introducing,
Agile and iterative development
To Nokia Networks
9 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
First months
10 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
The search
Where in Networks did people experimented with Agile?
11 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
The Nokia Test (called so by Jeff)
You know when you are not doing iterative developme nt when:– Iterations are longer than 2-4 weeks.
– Team tries to complete specification before programming.
– An iteration does not include testing.– Iteration does not produce workable code.
– Detailed (task level) plan are accurate estimates are expected at the beginning of a project.
– The sprint plan doesn’t reflect what the team is doing.
You know when you are not doing agile development w hen:– There is little co-operation within the team.
– Design and code is produced in individual effort.– Progress is measures by hours spend or documents created instead of
working code.
– Builds are done once every three weeks.
12 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Suddenly
13 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Share information, be open!
Newsgroups
Newsletter
Agile Wiki
Scrum Master mailing list
Flexible R&D programs list
AgileNet Blog Flexible R&D blog
Product Owner Mailing
list
Open Space Gathering
Continuous Integration Wiki
AgileNokia wiki
T-Shirt
Reports & presentations
14 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
What do we do?
Give and arrange training
Facilitation
Organize Gatherings
Create Communities
Coaching
Project Support
15 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Support, NOT control
16 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Flexible Team
17 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
No evangelists, cross functional team!
- Cmm assessor, process architect.- Test specialist, TPI assessor
- Developer- Requirement process expert
- Project advisor- Quality & process expert
And… 2 agile evangelists.
18 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Monday Morning
19 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Result:
Agile evangelists…
20 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Scrum
21 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Simple
A good start
Focus on management (?)
Craig & Ken
Good training available
Not selected! Emerged
22 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Scrum Masters
Scrum Masters in Nokia / Nokia Siemens Networks
0
100
200
300
400
500
600
700
Q105 Q205 Q305 Q405 Q106 Q206 Q306 Q406 Q107 Q207 Q307 Q407
23 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Clearcase and other ill weeds
24 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Individuals and interaction over process and tools
But some tools are always trouble.
25 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Continuous integration
“1% of my time goes in setting up continuous integration. 99% goes into getting it working with clearcase”
“Luntbuild is nice and works fine, but not with clearcase”
“Clearcase is not made for this style of development. At least don’t use dynamic views”
26 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Get rid of it!
- Cost-benefit analysis clearcase vs subversion.
- Users survey.
- Support in transition.
- Other examples.
But… “Ill weeks grow apace”.
27 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Becoming the Flexible Company
28 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
“Making R&D more flexible”
How about that for a sub-optimization?
How is a Flexible R&D going to be useful for our customers?
What about Flexible Product Managementor Flexible delivery, or…?
29 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Flexible R&D -> Flexible Company
The goal of Flexible (Agile) software development must always be to work more flexible with the customers.
That’s where the ultimate benefit for the company comes. That’s how agile development can grow.
30 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
CMMi
31 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Finding the roots!
Cmmi ->Roots in Quality management, Deming, Juran
Agile ->Roots in Lean… based on Deming, Juran, Ishikawa, Ohno
Same roots.
We should be able to agree, right?
32 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
BUT!
What are the assumptions behind CMMi?
33 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Cmmi: don’t
34 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Failures
35 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Easier to ruin scrum than to make it good.
36 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
After one release, switch to new management.
37 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Strong super project management.
Developers jailed.
38 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Teaching TDD
39 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Lecture in TDD
50 people at 9:00
5 people at 17:00
40 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Change -> TDD needs to be done, not told.
41 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Only way to teach Test-Driven-Development
Get a coach. Let him sit beside you for weeks.
42 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Fault finding profile and other useless metrics.
43 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Fault finding profile
Percentage of faults found in testing phas^H^H^H^H level.
Goal: Measure development and improve early defect finding.
44 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
What if test failed does not mean fault found?
Was that an assumption behind the metric?
45 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Do we report defects from the CI system?
Assumption of:
Fault Finding Profile
46 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
How do we estimate the total tests when test-driving?
Assumption of:
Testing progress
47 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Conclusion:
When using Scrum: All metrics must change.
Especially metrics tied to performance evaluation :)
48 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
The dead scrum-master
49 © Nokia Siemens Networks Stories from Flexible Company / Bas Vodde / 2007Public
Push the organization
Don’t push too hard, or you’ll end up in China.