In this series of talks, our panel of experts present real world examples that illustrate how Lean Production concepts are being successfully applied to software development. In particular to applications that have to meet the highest levels of safety and security.
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Lean principles, Open Source, and the road ahead (Roberto Di Cosmo)
1. Lean principles, Open Source, and the road ahead
Computer Science Professor
University Paris Diderot
http://www.dicosmo.org
roberto@dicosmo.org
March 26th, 2009
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
2. Free Software : a reminder
Free (french : gratuit) :
software you do not pay for (today)
Free (french : libre) :
software with 4 rights
use
study and modify
distribute
distribute sources (even modified)
(see for example http://www.opensource.
org/docs/definition.php).
There are obligations too, according to the
licence : GPL/BSD/Mozilla/X, etc.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
3. Economy
Reminder :
´conomics : the study of how society chooses to allocate scarce
e
resources to produce, exchange, and consume goods and services.
Ruffin, Gregory, “Principles of Economics”, 1990
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
4. Economy
Reminder :
´conomics : the study of how society chooses to allocate scarce
e
resources to produce, exchange, and consume goods and services.
Ruffin, Gregory, “Principles of Economics”, 1990
Without scarcity, there is no economy.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
5. Economy
Reminder :
´conomics : the study of how society chooses to allocate scarce
e
resources to produce, exchange, and consume goods and services.
Ruffin, Gregory, “Principles of Economics”, 1990
Without scarcity, there is no economy.
Let’s remember this when revisiting the software industry . . .
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
6. Software economy, old style
proprietary software
based on an artificial “scarcity” of copies of a piece of software . . .
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
7. Software economy, old style
proprietary software
based on an artificial “scarcity” of copies of a piece of software . . .
This follows a push approach :
identify a market
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
8. Software economy, old style
proprietary software
based on an artificial “scarcity” of copies of a piece of software . . .
This follows a push approach :
identify a market
develop a “one size fits all” software solution
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
9. Software economy, old style
proprietary software
based on an artificial “scarcity” of copies of a piece of software . . .
This follows a push approach :
identify a market
develop a “one size fits all” software solution
sell licences to a lot of users, . . . if you can
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
10. Software economy, old style
proprietary software
based on an artificial “scarcity” of copies of a piece of software . . .
This follows a push approach :
identify a market
develop a “one size fits all” software solution
sell licences to a lot of users, . . . if you can
make sure the users will need new versions, often. . .
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
11. Remember this ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
12. Remember this ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
13. Remember this ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
14. Remember this ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
15. Remember this ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
16. Remember this ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
17. Remember this ?
It is from the 1980’s, and yet we still see it happen too often !
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
18. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
19. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
20. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Phases of a successful FS : Martin Michlmayr (ex Debian leader)
Cathedral phase
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
21. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Phases of a successful FS : Martin Michlmayr (ex Debian leader)
Cathedral phase Transition phase
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
22. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Phases of a successful FS : Martin Michlmayr (ex Debian leader)
Cathedral phase Transition phase Bazaar phase
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
23. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Phases of a successful FS : Martin Michlmayr (ex Debian leader)
Cathedral phase Transition phase Bazaar phase
Original “idea”
Project Author
Core developers
Unix philosophy
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
24. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Phases of a successful FS : Martin Michlmayr (ex Debian leader)
Cathedral phase Transition phase Bazaar phase
Original “idea”
”Interest”
Project Author
⇒ Prototype ⇒
Core developers
Modular design
Unix philosophy
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
25. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Phases of a successful FS : Martin Michlmayr (ex Debian leader)
Cathedral phase Transition phase Bazaar phase
Distributed
Original “idea”
”Interest” development
Project Author
⇒ Prototype ⇒ Community
Core developers
Modular design Parallel maintenance
Unix philosophy
Peer reviews
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
26. Free Software and innovation
In the proprietary software world, the frontiers among architects,
programmers, testers, service providers, educators and users are
rigid, by necessity.
The acces to source code given by Free Software may blur them !
This does not happen by itself !
Phases of a successful FS : Martin Michlmayr (ex Debian leader)
Cathedral phase Transition phase Bazaar phase
Distributed
Original “idea”
”Interest” development
Project Author
⇒ Prototype ⇒ Community
Core developers
Modular design Parallel maintenance
Unix philosophy
Peer reviews
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
27. Software economy, new style
free software
removes the “scarcity” of copies, exposing the other scarce
resources : know-how, infrastructure, process, industrialization,
customization skills etc.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
28. Software economy, new style
free software
removes the “scarcity” of copies, exposing the other scarce
resources : know-how, infrastructure, process, industrialization,
customization skills etc.
This follows a pull approach :
identify a need
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
29. Software economy, new style
free software
removes the “scarcity” of copies, exposing the other scarce
resources : know-how, infrastructure, process, industrialization,
customization skills etc.
This follows a pull approach :
identify a need
develop a software prototype
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
30. Software economy, new style
free software
removes the “scarcity” of copies, exposing the other scarce
resources : know-how, infrastructure, process, industrialization,
customization skills etc.
This follows a pull approach :
identify a need
develop a software prototype
build a community
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
31. Software economy, new style
free software
removes the “scarcity” of copies, exposing the other scarce
resources : know-how, infrastructure, process, industrialization,
customization skills etc.
This follows a pull approach :
identify a need
develop a software prototype
build a community
set up an ecosystem, with users, developers, architects,
educators, service providers, cooperating
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
32. Software economy, new style
free software
removes the “scarcity” of copies, exposing the other scarce
resources : know-how, infrastructure, process, industrialization,
customization skills etc.
This follows a pull approach :
identify a need
develop a software prototype
build a community
set up an ecosystem, with users, developers, architects,
educators, service providers, cooperating
This requires all the members of the ecosystem to understand the
rules, and follow them.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
33. Free Software Lessons vs. Lean principles : similar culture
Value
Every good work of software starts by scratching a developer’s
personal itch.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
34. Free Software Lessons vs. Lean principles : similar culture
Value
Every good work of software starts by scratching a developer’s
personal itch.
Customer first
Treating your users as co-developers is your least-hassle route to
rapid code improvement and effective debugging.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
35. Free Software Lessons vs. Lean principles : similar culture
Value
Every good work of software starts by scratching a developer’s
personal itch.
Customer first
Treating your users as co-developers is your least-hassle route to
rapid code improvement and effective debugging.
Removing waste
Good programmers know what to write. Great ones know what to
rewrite (and reuse).
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
36. Free Software Lessons vs. Lean principles : similar culture
Value
Every good work of software starts by scratching a developer’s
personal itch.
Customer first
Treating your users as co-developers is your least-hassle route to
rapid code improvement and effective debugging.
Removing waste
Good programmers know what to write. Great ones know what to
rewrite (and reuse).
Perfection, well. . . fix it fast
Release early, release often.
Given enough eyeballs, all bugs are shallow.
Lessons from E. S. Raymond’s “The Cathedral and the Bazaar”,
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
37. Some figures
Evolution of file number in the Linux kernel (G. Robles)
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
38. The change
Free Software lessons were easy to follow 10 years ago :
developer and users would often coincide (developers are also
the users !) . . .
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
39. The change
Free Software lessons were easy to follow 10 years ago :
developer and users would often coincide (developers are also
the users !) . . .
Joke
would our offices be somehow better if the architects were forced
to actually use them ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
40. The change
Free Software lessons were easy to follow 10 years ago :
developer and users would often coincide (developers are also
the users !) . . .
Joke
would our offices be somehow better if the architects were forced
to actually use them ?
Things are changing today : user and developer communities are
growing steadily !
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
41. The change
Free Software lessons were easy to follow 10 years ago :
developer and users would often coincide (developers are also
the users !) . . .
Joke
would our offices be somehow better if the architects were forced
to actually use them ?
Things are changing today : user and developer communities are
growing steadily !
Can we scale up ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
42. The challenge
science :
develop theory and tools to allow Free Software
collaborative development to scale up
education :
train tomorrow’s engineers
economy :
explain and set up the ecosystems. . .
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
43. Focus on science
Free Software is making software artefacts transparent :
no artificial barriers among architectural layers. . .
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
44. Focus on science
Free Software is making software artefacts transparent :
no artificial barriers among architectural layers. . .
theoretical possibility to follow the flow of computation from
the more abstract layers down to the moving bits in the
hardware
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
45. Focus on science
Free Software is making software artefacts transparent :
no artificial barriers among architectural layers. . .
theoretical possibility to follow the flow of computation from
the more abstract layers down to the moving bits in the
hardware
new levels of quality assurance and certification can be
expected
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
46. Focus on science
Free Software is making software artefacts transparent :
no artificial barriers among architectural layers. . .
theoretical possibility to follow the flow of computation from
the more abstract layers down to the moving bits in the
hardware
new levels of quality assurance and certification can be
expected
we need theory and tools to make all this process lean.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
47. Focus on science
Free Software is making software artefacts transparent :
no artificial barriers among architectural layers. . .
theoretical possibility to follow the flow of computation from
the more abstract layers down to the moving bits in the
hardware
new levels of quality assurance and certification can be
expected
we need theory and tools to make all this process lean.
Industry should invest in Free Software fundamental research, as
soon as possible.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
48. Mancoosi technology preview : visualizing Systems of
Systems
GNU/Linux software distributions : probably the most complex
system of systems on the planet
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
49. Mancoosi technology preview : visualizing Systems of
Systems
GNU/Linux software distributions : probably the most complex
system of systems on the planet
HOW can you visualize such a system of systems ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
50. Draw a graph, no deep knowledge
kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005)
were unnecessary components, overlapping kde-games and
kde-edu.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
51. Draw a graph, no deep knowledge
kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005)
were unnecessary components, overlapping kde-games and
kde-edu.They are waste, and are gone today (2009).
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
52. Draw a graph, no deep knowledge
kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005)
were unnecessary components, overlapping kde-games and
kde-edu.They are waste, and are gone today (2009).
Should be easy to spot, only 244 components are concerned !
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
53. Draw a graph, no deep knowledge
kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005)
were unnecessary components, overlapping kde-games and
kde-edu.They are waste, and are gone today (2009).
Should be easy to spot, only 244 components are concerned !
Can you see this fact here ?
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
54. Let’s try a more systemic approach
Here is a graph of strong dominators for the KDE subsystem :
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
55. Let’s try a more systemic approach
Here is a graph of strong dominators for the KDE subsystem :
See the problem, now ?
More on this at http://www.mancoosi.org
Roberto Di Cosmo Lean principles, Open Source, and the road ahead
56. Let me say this again. . .
We need to invest in Free Software fundamental research,
as soon as possible.
Roberto Di Cosmo Lean principles, Open Source, and the road ahead