SlideShare a Scribd company logo
1 of 32
Download to read offline
Bootstrapping Agile – Practice
by Practice
Daniel Poon
● Take a look at our business and the
challenges it faces
● Take a look at our solution
● Leasons learned
How and why did we go Agile?
Romax Technology Ltd. &
RomaxDesigner
● Our value proposition
– RomaxDesigner enables
us to predict the system
wide behavior of
transmission systems
beyond what was
previously possible
VPD (Virtual Product Development)
Concept
Design
Detailed
Design
AnalysisFeedback
Feedback
Prototype/
Physical testing Feedback
– Analysis tells you how your design performs
– Development of a Complete transmission
system takes 3-4 years
– We can reduce that to 1 to 1.5 years
The Challenge of a Global Market
● 95% of sales from export
● 75% of sales from Asia and USA
Technical Challenges
● Customers want ever more complex simulation
● Greater complexity puts greater demands on
performance
● The market demands ever shorter lead times and
shorter development cycles
● How does Agile help?
Legacy Code
Design
Engineers
Ad-hoc
Spreadsheets/
Matlab
Engineering
Analysts
Fortran/
Matlab
Programmers
C++
Smalltalk
Fragmented code base
Fortran
Calculation Engine
Smalltalk
Product Model
Programming
Team
Engineering
Analysis
Team
Legacy Architecture
● Difficult to optimise and difficult to modify
● An Integration Bottleneck, making it difficult to
release frequently and respond to the market
Legacy Process
Design
Engineers
Automotive
projects
Too busy to do
testing
Engineering
Analysts
Many projects
Consultancy/
Programming
Programmers
Lack of
domain knowledge
Conventional MIS
background of
little use
Teams split into functional departments
Unsustainable Cash Flow
● 1 month cycle time
– 12 people * 1 month
– 1 man year of WIP
– £0.1M in costs
– Locked away for 1
month
– Potential sales?
● 18 month cycle time
– 12 people * 18 months
– 18 man years of WIP
– £1.8M in costs
– Locked away for 1 ½
years
– Potential sales?
The cycle time = time for your
investment to become liquid
Legacy Attitudes
Design
Engineers
“This is the way
we do design”
Engineering
Analysts
“Matlab does
everything I want”
“Fortran is
best for analysis”
Programmers
“We ought to
design in UML ”
“I want to learn
Java/C#”
Each is interested in their own bit – no one wants to
look at the whole picture
Does this sound like an organization
asking for change?
● Many obstacles
– Including hostile attitudes
● No one willing to act
– But may be a few people are willing to be guinea pigs
Initially tried telling managers what
we could do if we went Agile
● Read about XP
● Presented ideas to Management
– “So what”
20052001 2003 2004 20062002
Read C2 Wiki
/ XP Explained
Read Developing Products
in Half the Time
Present XP to the
management team
It was better to tell them what I
wanted
Talk to
Managing
Director
offline
● Ask for political support
– To protect your back
● But don't ask or expect material help!
– They won't want to pay for outside help
– Why should they, its what they pays you for!
20052001 2003 2004 20062002
Start Small:
Pair-Programming with Domain
Experts is a good ice breaker
Pair
Programming
with Domain
Experts
Engineering
Analysts &
Programmers
Co-located
● Only needs buy-in from two people
● Microcosm of the agile process
● Programmer + Domain Expert = Self Sufficient
– Cannot be sabotaged from outside
20052001 2003 2004 20062002
Programmers take to TDD easily
TDD
Automated
Testing of
Legacy Code
● When working with a legacy code base, write
tests to compare previous results
● Gives stability and confidence
● Taught us how to test
● Now writing finer grain tests
20052001 2003 2004 20062002
Can Continuous Integration be done
with Legacy Code?
Two Phase
Repository
Commit
Continuous
Integration
● Lack of Unit Test coverage
– Attempt at Continuous Integration failed
● Automatic, two phase, repository commit
– Code branch acts as a staging area
– Acceptance Tests are automatically run
– Code is commited automatically if they pass
20052001 2003 2004 20062002
Use technical practices to drive
management practices
Time-boxed Iterations
Daily Stand-Up
Stakeholder Steering
Burndown Charts
Test Status Board
20052001 2003 2004 20062002
● Tests = Metrics
● Fast build = Feeback
● So you have a reason to have meetings
Wait for a crisis!
Crisis!
● Customer is promised non-existent feature in
one months time
● So do it as “Real Iteration 1”
● Used crisis and our subsequent response as a
catalyst for full Stakeholder buy in
20052001 2003 2004 20062002
Time-boxed Iterations
Daily Stand-Up
Stakeholder Steering
SCRUM's management techniques
● Scrum's 1 month cycle works well
– Burndown chart is a substitute for shorter iterations
● Scrum's granularity works well for where we are
at the moment
● Scrum's continuous re-estimating works well
Choose a System Metaphor that
Managers & Domain Experts can
relate to
System
Metaphor
● “Make it Run, Make it Right, Make it Fast” mean
little to Managers & Domain Experts
● You need to describes the problem in a way that
all can understand – the so called System
Metaphor
20052001 2003 2004 20062002
The Chassis/Body System Metaphor
● Two seemingly orthogonal
requirements
– Torsional Rigidity
– Passenger space
● Two solutions
– The Chassis provides
torsional rigidity
– The Body provides
passenger space
● Strength comes from
material selection
Local Optima
Strong Material
Global Optimum
The aim is a Monocoque System
● But requirements are not
orthogonal
– Torsional Rigidity
– Passenger space
● One solution
– Single structure integrates
torsional rigidity with
passenger space
● Strength comes from
disposition of material
Weak Material
Numeric
Product Model
Visualization
System
interfacing
Smalltalk
C++
Fortran
Commercial Drivers for Shift
Towards Monocoque Architecture
● Easy to modify and globally optimise
● May be continuously integrated
DIY approach to Agile
● Pros
– No Capital
– When pratice finally
clicks, the team will
fight to keep it
– Sense of personal and
team achievement
– No worry that the
consultant will desert
you
● Cons
– Lots of Time
– Without outside
guidance, lots of
painful failure
– Frustration when
things go wrong
– You need to stay with
the same team for a
long time
Almost every pratice we introduced
failed first time arround!!
Project
Velocity
Project
Velocity
● Be patient, time the introduction of new practices
carefully
– First try the simplest thing that could possibly work
● When it breaks, fix it
– Start with a rigid format
● Then evolve to a problem solving format
20052001 2003 2004 20062002
Team Lead/
Scrum Master
Roles Formally
Separated
● Split management tasks between them
● Gives you the space to make mistakes
● Learn a few coaching skills
– very cheap if done outside work
Separate Team Lead/Scrum Master
20052001 2003 2004 20062002
Large Staff Turnover
Large Staff
Turnover
● Is it a problem, or an opportunity?
● Do people leave because you are implementing
Agile, or because of the crisis you are trying to
solve?
● Is a crisis the only time you can implement
Agile?
20052001 2003 2004 20062002
Office
Move
Retrospectives
Retrospective
with Outside
Facilitator
Retrospectives
● Failed several times to run a productive
Retrospective
● Only went well when we go outside help
20052001 2003 2004 20062002
(Incomplete) Code metrics
● No test code
before 2001
● Considerable
functionality
added since 2001
● Amount of GUI &
model code has
not increased
significantly
● Test code is
increasing
Still so much to do...
● Can we automatically test the GUI?
● Can we get rid of stabilization iterations?
● Can we speed up the build?
● What happens if our team grows anymore?
● How can we split the team effectively?
● Why don't Stakeholders collaborate together?
● Do Stakeholders realize in every planning
meeting they are deciding how to spend over
£50K?
Any Questions?
Thanks to
Gareth Owen, Andrew Smith, Sean Akers, Mark
Eccles, Chris Halse, Richard Lord, Chris Bailey,
Andy Poon, Jamie Pears
and everyone else at Romax,
plus Giovanni Asproni and Rachel Davies

More Related Content

What's hot

Pactical case of Atlassian Tools implementation
Pactical case of Atlassian Tools implementation Pactical case of Atlassian Tools implementation
Pactical case of Atlassian Tools implementation Yuriy Kudin
 
Agile vs. waterfall simple 2017
Agile vs. waterfall simple 2017Agile vs. waterfall simple 2017
Agile vs. waterfall simple 2017Dvir Zohar
 
Waterfall vs agile approach scrum framework and best practices in software d...
Waterfall vs agile approach  scrum framework and best practices in software d...Waterfall vs agile approach  scrum framework and best practices in software d...
Waterfall vs agile approach scrum framework and best practices in software d...Tayfun Bilsel
 
Scrum Process For Offshore Team
Scrum Process For Offshore TeamScrum Process For Offshore Team
Scrum Process For Offshore TeamPaul Nguyen
 
Spectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_medSpectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_medMary Elise Dedicke
 
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...Francesco Mapelli
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile MethodologySapna Sood
 
Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process OverviewPaul Nguyen
 
Scrum an Agile Methodology
Scrum an Agile MethodologyScrum an Agile Methodology
Scrum an Agile MethodologyZahra Golmirzaei
 
Agile methodology and Scrum Framewwork
Agile methodology and Scrum FramewworkAgile methodology and Scrum Framewwork
Agile methodology and Scrum Framewworksalmanahmed368
 
Agile Methodology(SCRUM)
Agile Methodology(SCRUM)Agile Methodology(SCRUM)
Agile Methodology(SCRUM)KhushSlideShare
 
Agile vs waterfall
Agile vs waterfallAgile vs waterfall
Agile vs waterfallLohet Ramesh
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software EngineeringPurvik Rana
 
Agile Session @ Universidade Portucalense
Agile Session @ Universidade PortucalenseAgile Session @ Universidade Portucalense
Agile Session @ Universidade PortucalenseRui M. Barreira
 
Agile methodology
Agile methodologyAgile methodology
Agile methodologyDhruv Kumar
 

What's hot (20)

Pactical case of Atlassian Tools implementation
Pactical case of Atlassian Tools implementation Pactical case of Atlassian Tools implementation
Pactical case of Atlassian Tools implementation
 
Agile vs. waterfall simple 2017
Agile vs. waterfall simple 2017Agile vs. waterfall simple 2017
Agile vs. waterfall simple 2017
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Walls agile2013
Walls agile2013Walls agile2013
Walls agile2013
 
Waterfall vs agile approach scrum framework and best practices in software d...
Waterfall vs agile approach  scrum framework and best practices in software d...Waterfall vs agile approach  scrum framework and best practices in software d...
Waterfall vs agile approach scrum framework and best practices in software d...
 
Scrum Process For Offshore Team
Scrum Process For Offshore TeamScrum Process For Offshore Team
Scrum Process For Offshore Team
 
Spectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_medSpectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_med
 
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process Overview
 
Scrum an Agile Methodology
Scrum an Agile MethodologyScrum an Agile Methodology
Scrum an Agile Methodology
 
Scrum and Agile SDLC 101
Scrum and Agile SDLC 101Scrum and Agile SDLC 101
Scrum and Agile SDLC 101
 
Agile methodology and Scrum Framewwork
Agile methodology and Scrum FramewworkAgile methodology and Scrum Framewwork
Agile methodology and Scrum Framewwork
 
Agile Methodology(SCRUM)
Agile Methodology(SCRUM)Agile Methodology(SCRUM)
Agile Methodology(SCRUM)
 
Agile vs waterfall
Agile vs waterfallAgile vs waterfall
Agile vs waterfall
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Agile Session @ Universidade Portucalense
Agile Session @ Universidade PortucalenseAgile Session @ Universidade Portucalense
Agile Session @ Universidade Portucalense
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
PM, Scrum and TFS - Ivan Marković
PM, Scrum and TFS - Ivan MarkovićPM, Scrum and TFS - Ivan Marković
PM, Scrum and TFS - Ivan Marković
 
Agile Modeling
Agile ModelingAgile Modeling
Agile Modeling
 

Viewers also liked

Viewers also liked (10)

smalltalk numbercrunching
smalltalk numbercrunchingsmalltalk numbercrunching
smalltalk numbercrunching
 
Einstein
EinsteinEinstein
Einstein
 
self funding agile2
self funding agile2self funding agile2
self funding agile2
 
LUFAWA COORPORATIVE GROUP PROFILE
LUFAWA COORPORATIVE GROUP PROFILELUFAWA COORPORATIVE GROUP PROFILE
LUFAWA COORPORATIVE GROUP PROFILE
 
Banh cuon uoc le
Banh cuon uoc leBanh cuon uoc le
Banh cuon uoc le
 
Banh trang phoi suong Trang Bang – Tay Ninh
Banh trang phoi suong Trang Bang – Tay NinhBanh trang phoi suong Trang Bang – Tay Ninh
Banh trang phoi suong Trang Bang – Tay Ninh
 
Gawie Victor CV October 2014
Gawie Victor CV October 2014Gawie Victor CV October 2014
Gawie Victor CV October 2014
 
Урок 1 Основные понятия доу
Урок 1 Основные понятия доуУрок 1 Основные понятия доу
Урок 1 Основные понятия доу
 
Surse regenerabile de energie
Surse regenerabile de energieSurse regenerabile de energie
Surse regenerabile de energie
 
Lte air-interface
Lte  air-interfaceLte  air-interface
Lte air-interface
 

Similar to Bootstrapping Agile

JDD2014: Agile transformation - how to change minds, deliver amazing results ...
JDD2014: Agile transformation - how to change minds, deliver amazing results ...JDD2014: Agile transformation - how to change minds, deliver amazing results ...
JDD2014: Agile transformation - how to change minds, deliver amazing results ...PROIDEA
 
An Introduction to Scrum: presented at PyTexas 2012
An Introduction to Scrum: presented at PyTexas 2012An Introduction to Scrum: presented at PyTexas 2012
An Introduction to Scrum: presented at PyTexas 2012Tomo Popovic
 
Choosing the right agile approach for your organization
Choosing the right agile approach for your organizationChoosing the right agile approach for your organization
Choosing the right agile approach for your organizationInCycle Software
 
Managing software projects & teams effectively
Managing software projects & teams effectivelyManaging software projects & teams effectively
Managing software projects & teams effectivelyAshutosh Agarwal
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme ProgrammingKnoldus Inc.
 
Bestoutcome Agile crouch touch pause engage scrum
Bestoutcome Agile  crouch touch pause engage  scrumBestoutcome Agile  crouch touch pause engage  scrum
Bestoutcome Agile crouch touch pause engage scrumBestoutcome
 
Process design for scrum events
Process design for scrum eventsProcess design for scrum events
Process design for scrum eventsSiew Onn Wan
 
Agile and Scrum Overview for PMs, Designers and Developers
Agile and Scrum Overview for PMs, Designers and Developers Agile and Scrum Overview for PMs, Designers and Developers
Agile and Scrum Overview for PMs, Designers and Developers Aaron Roy
 
Tetap Agile dengan Arsitektur Monolith - Ziya El Arief
Tetap Agile dengan Arsitektur Monolith - Ziya El AriefTetap Agile dengan Arsitektur Monolith - Ziya El Arief
Tetap Agile dengan Arsitektur Monolith - Ziya El AriefDicodingEvent
 
Software development myths that block your career
Software development myths that block your careerSoftware development myths that block your career
Software development myths that block your careerPiotr Horzycki
 
Software Development Methodologies
Software Development Methodologies Software Development Methodologies
Software Development Methodologies Frances Coronel
 
The Holistic Programmer
The Holistic ProgrammerThe Holistic Programmer
The Holistic ProgrammerJonas Auken
 
Software development life cycles (sdlc)
Software development life cycles (sdlc)Software development life cycles (sdlc)
Software development life cycles (sdlc)Yuriy Kravchenko
 
Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)Rajesh Muppalla
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Muhammad Ahmed
 

Similar to Bootstrapping Agile (20)

JDD2014: Agile transformation - how to change minds, deliver amazing results ...
JDD2014: Agile transformation - how to change minds, deliver amazing results ...JDD2014: Agile transformation - how to change minds, deliver amazing results ...
JDD2014: Agile transformation - how to change minds, deliver amazing results ...
 
An Introduction to Scrum: presented at PyTexas 2012
An Introduction to Scrum: presented at PyTexas 2012An Introduction to Scrum: presented at PyTexas 2012
An Introduction to Scrum: presented at PyTexas 2012
 
Choosing the right agile approach for your organization
Choosing the right agile approach for your organizationChoosing the right agile approach for your organization
Choosing the right agile approach for your organization
 
Agile with scrum methodology
Agile with scrum methodologyAgile with scrum methodology
Agile with scrum methodology
 
Managing software projects & teams effectively
Managing software projects & teams effectivelyManaging software projects & teams effectively
Managing software projects & teams effectively
 
Agile scrum training
Agile scrum trainingAgile scrum training
Agile scrum training
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Bestoutcome Agile crouch touch pause engage scrum
Bestoutcome Agile  crouch touch pause engage  scrumBestoutcome Agile  crouch touch pause engage  scrum
Bestoutcome Agile crouch touch pause engage scrum
 
Process design for scrum events
Process design for scrum eventsProcess design for scrum events
Process design for scrum events
 
Agile and Scrum Overview for PMs, Designers and Developers
Agile and Scrum Overview for PMs, Designers and Developers Agile and Scrum Overview for PMs, Designers and Developers
Agile and Scrum Overview for PMs, Designers and Developers
 
Tetap Agile dengan Arsitektur Monolith - Ziya El Arief
Tetap Agile dengan Arsitektur Monolith - Ziya El AriefTetap Agile dengan Arsitektur Monolith - Ziya El Arief
Tetap Agile dengan Arsitektur Monolith - Ziya El Arief
 
Software development myths that block your career
Software development myths that block your careerSoftware development myths that block your career
Software development myths that block your career
 
Software Development Methodologies
Software Development Methodologies Software Development Methodologies
Software Development Methodologies
 
The Holistic Programmer
The Holistic ProgrammerThe Holistic Programmer
The Holistic Programmer
 
scrum-talk
scrum-talkscrum-talk
scrum-talk
 
Software development life cycles (sdlc)
Software development life cycles (sdlc)Software development life cycles (sdlc)
Software development life cycles (sdlc)
 
Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)
 
Agile Course
Agile CourseAgile Course
Agile Course
 
Agile course Part 1
Agile course Part 1Agile course Part 1
Agile course Part 1
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
 

Bootstrapping Agile

  • 1. Bootstrapping Agile – Practice by Practice Daniel Poon
  • 2. ● Take a look at our business and the challenges it faces ● Take a look at our solution ● Leasons learned How and why did we go Agile?
  • 3. Romax Technology Ltd. & RomaxDesigner ● Our value proposition – RomaxDesigner enables us to predict the system wide behavior of transmission systems beyond what was previously possible
  • 4. VPD (Virtual Product Development) Concept Design Detailed Design AnalysisFeedback Feedback Prototype/ Physical testing Feedback – Analysis tells you how your design performs – Development of a Complete transmission system takes 3-4 years – We can reduce that to 1 to 1.5 years
  • 5. The Challenge of a Global Market ● 95% of sales from export ● 75% of sales from Asia and USA
  • 6. Technical Challenges ● Customers want ever more complex simulation ● Greater complexity puts greater demands on performance ● The market demands ever shorter lead times and shorter development cycles ● How does Agile help?
  • 8. Fortran Calculation Engine Smalltalk Product Model Programming Team Engineering Analysis Team Legacy Architecture ● Difficult to optimise and difficult to modify ● An Integration Bottleneck, making it difficult to release frequently and respond to the market
  • 9. Legacy Process Design Engineers Automotive projects Too busy to do testing Engineering Analysts Many projects Consultancy/ Programming Programmers Lack of domain knowledge Conventional MIS background of little use Teams split into functional departments
  • 10. Unsustainable Cash Flow ● 1 month cycle time – 12 people * 1 month – 1 man year of WIP – £0.1M in costs – Locked away for 1 month – Potential sales? ● 18 month cycle time – 12 people * 18 months – 18 man years of WIP – £1.8M in costs – Locked away for 1 ½ years – Potential sales? The cycle time = time for your investment to become liquid
  • 11. Legacy Attitudes Design Engineers “This is the way we do design” Engineering Analysts “Matlab does everything I want” “Fortran is best for analysis” Programmers “We ought to design in UML ” “I want to learn Java/C#” Each is interested in their own bit – no one wants to look at the whole picture
  • 12. Does this sound like an organization asking for change? ● Many obstacles – Including hostile attitudes ● No one willing to act – But may be a few people are willing to be guinea pigs
  • 13. Initially tried telling managers what we could do if we went Agile ● Read about XP ● Presented ideas to Management – “So what” 20052001 2003 2004 20062002 Read C2 Wiki / XP Explained Read Developing Products in Half the Time Present XP to the management team
  • 14. It was better to tell them what I wanted Talk to Managing Director offline ● Ask for political support – To protect your back ● But don't ask or expect material help! – They won't want to pay for outside help – Why should they, its what they pays you for! 20052001 2003 2004 20062002
  • 15. Start Small: Pair-Programming with Domain Experts is a good ice breaker Pair Programming with Domain Experts Engineering Analysts & Programmers Co-located ● Only needs buy-in from two people ● Microcosm of the agile process ● Programmer + Domain Expert = Self Sufficient – Cannot be sabotaged from outside 20052001 2003 2004 20062002
  • 16. Programmers take to TDD easily TDD Automated Testing of Legacy Code ● When working with a legacy code base, write tests to compare previous results ● Gives stability and confidence ● Taught us how to test ● Now writing finer grain tests 20052001 2003 2004 20062002
  • 17. Can Continuous Integration be done with Legacy Code? Two Phase Repository Commit Continuous Integration ● Lack of Unit Test coverage – Attempt at Continuous Integration failed ● Automatic, two phase, repository commit – Code branch acts as a staging area – Acceptance Tests are automatically run – Code is commited automatically if they pass 20052001 2003 2004 20062002
  • 18. Use technical practices to drive management practices Time-boxed Iterations Daily Stand-Up Stakeholder Steering Burndown Charts Test Status Board 20052001 2003 2004 20062002 ● Tests = Metrics ● Fast build = Feeback ● So you have a reason to have meetings
  • 19. Wait for a crisis! Crisis! ● Customer is promised non-existent feature in one months time ● So do it as “Real Iteration 1” ● Used crisis and our subsequent response as a catalyst for full Stakeholder buy in 20052001 2003 2004 20062002 Time-boxed Iterations Daily Stand-Up Stakeholder Steering
  • 20. SCRUM's management techniques ● Scrum's 1 month cycle works well – Burndown chart is a substitute for shorter iterations ● Scrum's granularity works well for where we are at the moment ● Scrum's continuous re-estimating works well
  • 21. Choose a System Metaphor that Managers & Domain Experts can relate to System Metaphor ● “Make it Run, Make it Right, Make it Fast” mean little to Managers & Domain Experts ● You need to describes the problem in a way that all can understand – the so called System Metaphor 20052001 2003 2004 20062002
  • 22. The Chassis/Body System Metaphor ● Two seemingly orthogonal requirements – Torsional Rigidity – Passenger space ● Two solutions – The Chassis provides torsional rigidity – The Body provides passenger space ● Strength comes from material selection Local Optima Strong Material
  • 23. Global Optimum The aim is a Monocoque System ● But requirements are not orthogonal – Torsional Rigidity – Passenger space ● One solution – Single structure integrates torsional rigidity with passenger space ● Strength comes from disposition of material Weak Material
  • 24. Numeric Product Model Visualization System interfacing Smalltalk C++ Fortran Commercial Drivers for Shift Towards Monocoque Architecture ● Easy to modify and globally optimise ● May be continuously integrated
  • 25. DIY approach to Agile ● Pros – No Capital – When pratice finally clicks, the team will fight to keep it – Sense of personal and team achievement – No worry that the consultant will desert you ● Cons – Lots of Time – Without outside guidance, lots of painful failure – Frustration when things go wrong – You need to stay with the same team for a long time
  • 26. Almost every pratice we introduced failed first time arround!! Project Velocity Project Velocity ● Be patient, time the introduction of new practices carefully – First try the simplest thing that could possibly work ● When it breaks, fix it – Start with a rigid format ● Then evolve to a problem solving format 20052001 2003 2004 20062002
  • 27. Team Lead/ Scrum Master Roles Formally Separated ● Split management tasks between them ● Gives you the space to make mistakes ● Learn a few coaching skills – very cheap if done outside work Separate Team Lead/Scrum Master 20052001 2003 2004 20062002
  • 28. Large Staff Turnover Large Staff Turnover ● Is it a problem, or an opportunity? ● Do people leave because you are implementing Agile, or because of the crisis you are trying to solve? ● Is a crisis the only time you can implement Agile? 20052001 2003 2004 20062002 Office Move
  • 29. Retrospectives Retrospective with Outside Facilitator Retrospectives ● Failed several times to run a productive Retrospective ● Only went well when we go outside help 20052001 2003 2004 20062002
  • 30. (Incomplete) Code metrics ● No test code before 2001 ● Considerable functionality added since 2001 ● Amount of GUI & model code has not increased significantly ● Test code is increasing
  • 31. Still so much to do... ● Can we automatically test the GUI? ● Can we get rid of stabilization iterations? ● Can we speed up the build? ● What happens if our team grows anymore? ● How can we split the team effectively? ● Why don't Stakeholders collaborate together? ● Do Stakeholders realize in every planning meeting they are deciding how to spend over £50K?
  • 32. Any Questions? Thanks to Gareth Owen, Andrew Smith, Sean Akers, Mark Eccles, Chris Halse, Richard Lord, Chris Bailey, Andy Poon, Jamie Pears and everyone else at Romax, plus Giovanni Asproni and Rachel Davies