Software development in Formula One: challenges, complexity and struggle for excellence

26
Luca Minudel

description

This is an experience report based on more than 3 years (2006-2009) of software development in F1 with Scrum, Lean and XP, developing evolving and maintaining software to support the F1 racing team from the vehicle conception and throughout every test and race. In these 3 years I promoted and supported the advancement of the existing Agile practices in my team and then for all the software development teams of the F1 racing team. How was this experience? It was dense and intense. What made it valuable? It was: - the unique context characterized by very high levels of competition, speed and unpredictable rapid changes. - the challenge of doing computer programming in an F1 team: the team and I had to learn and invent how to work with a code-base that is very large and long lived, a product that is uncommonly complex, in an organization that has high levels of interdependency and with technologies and competitors that are fast moving targets. We found ourselves far behind the boundaries where centralized top-down approaches could possibly work and where a book, a school degree or an expert could possibly reveal the right answer. We had to do software development in extreme conditions and push ourselves to the limit as F1 drivers that really push and find the limits with the aim of outperforming competitors. Have we survived this chaos? How did we survive? Which team and coding practices emerged? This experience report will look at the answers to all those questions and will try to answer questions from participants.

Transcript of Software development in Formula One: challenges, complexity and struggle for excellence

Page 1: Software development in Formula One: challenges, complexity and struggle for excellence

Luca Minudel

Page 2: Software development in Formula One: challenges, complexity and struggle for excellence
Page 3: Software development in Formula One: challenges, complexity and struggle for excellence

PRODUCT

Page 4: Software development in Formula One: challenges, complexity and struggle for excellence
Page 5: Software development in Formula One: challenges, complexity and struggle for excellence

CODE-BASE

Page 6: Software development in Formula One: challenges, complexity and struggle for excellence
Page 7: Software development in Formula One: challenges, complexity and struggle for excellence
Page 8: Software development in Formula One: challenges, complexity and struggle for excellence
Page 9: Software development in Formula One: challenges, complexity and struggle for excellence
Page 10: Software development in Formula One: challenges, complexity and struggle for excellence
Page 11: Software development in Formula One: challenges, complexity and struggle for excellence

SW DEV PRACTICES

Page 12: Software development in Formula One: challenges, complexity and struggle for excellence
Page 13: Software development in Formula One: challenges, complexity and struggle for excellence
Page 14: Software development in Formula One: challenges, complexity and struggle for excellence
Page 15: Software development in Formula One: challenges, complexity and struggle for excellence
Page 16: Software development in Formula One: challenges, complexity and struggle for excellence
Page 17: Software development in Formula One: challenges, complexity and struggle for excellence
Page 18: Software development in Formula One: challenges, complexity and struggle for excellence
Page 19: Software development in Formula One: challenges, complexity and struggle for excellence
Page 20: Software development in Formula One: challenges, complexity and struggle for excellence
Page 21: Software development in Formula One: challenges, complexity and struggle for excellence

Q & A

• Why Scrum & Lean-Agile ?

• Was scrum implemented out of the box or with

modifications ?

• How people were organized in teams ?

• What were the largest impediments ?

• How was the management of the

project ?

• How progress was reported to

management and customers ?

• How the project was initiated ?

• What are the values of sw dev in F1 ?

Page 22: Software development in Formula One: challenges, complexity and struggle for excellence
Page 23: Software development in Formula One: challenges, complexity and struggle for excellence

• Iterations:• Testing: ÷• Enabling Specifications: • Product Owner: ÷• Product Backlog:• Estimates:• Burndown: ו Team: ÷

÷

Page 24: Software development in Formula One: challenges, complexity and struggle for excellence

PULL SYSTEM / REVERSE PLANNING / FLOW

SIMPLICITY―SKILLS AND MASTERY TO ACHIVE SIMPLICITY―TECHNOLOGY COMPLEXITY BUDGET ―VALUE OF CONSISTENCY, COST OF VARIATIONS

WINNING MINDSET

FALSE MYTHS ABOUT SW DEVELOPMENT

Page 25: Software development in Formula One: challenges, complexity and struggle for excellence

IT’S NOT OVER UNTIL IS REALLY OVER

RESPECT YOUR OPPONENTS

REALLY TALENTED INDIVIDUALS ARE HUMBLE

Page 26: Software development in Formula One: challenges, complexity and struggle for excellence