Francesco Cirillo gave a presentation questioning whether software evolution is truly effective and cost efficient. He argued that software evolution costs too much, and that mature development teams tend to cost more than newer, less experienced teams. He also questioned whether teams are actually improving their processes over time or just feeding increasingly complex "Code Monsters". Overall, the presentation raised doubts about common assumptions around software evolution and advocated for more conscious strategies.
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
20111117 Is Software Evolution really effective? @XPDayGE2011 Karlsruhe-GE [ENG]
1. Anti-IF Campaign:
Is Software Evolution
really effective?
XPDays Germany 2011
Karlsruhe 17.11.2011
Francesco Cirillo • Director, Anti-IF School
francesco@antiifschool.com • @antiifschool
2. About me
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
3. The Anti-IF Campaign
Kent Beck Craig Larman
http://www.antiifcampaign.com/join-the-campaign.html
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
4. Code Monsters
McCabe Index = 300
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
5. Code Monsters
McCabe Index = 300
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
6. Code Monsters
McCabe Index = 300
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
7. Is Software Evolution Really Effective?
What does software evolution really mean?
How much should effective software evolution cost?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
8. Is Software Evolution Really Effective?
What does software evolution really mean?
How much should effective software evolution cost?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
10. Software Engineering
da
“Evolutionary
Biology”
Douglas J. Futuyama
1998, pag 653
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
11. Evolution
“In biology the term evolution
means the gradual and continuous
accumulation of modifications
over a sufficiently long period of
time in which significant changes
manifest in living organisms”.
Source Wikipedia
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
12. Evolutionary process
“It is not the strongest
of the species that survives,
nor the most intelligent
that survives.
It is the one that is the most
adaptable to change.”
Charles Darwin
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
13. What is your strategy?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
14. 100% Flexible...
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
15. IF-based evolution strategy
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
16. IF-based evolution strategy
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
17. Emergent
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
18. What kind of TDD do you do?
Copyright 200-2006
Scott. W. Ambler
Add a test
[Pass]
Run the tests
Make a little change [Pass,
Development
[Fail] continues]
Run the tests
[Pass, Development stops]
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
19. What is the most effective TDD?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
20. Evolution & Emergent
• These words tell us nothing about what should be
done and what should not be done.
• They don’t give you a test as to when to do something
or how to do it.
• They don’t say anything about how that continuous
accumulation of modi cations should happen.
• They just say that your software can be called
evolutionary because it derives from a continuous
accumulation of modi cations.
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
21. Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
22. Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
23. Is Software Evolution Really Effective?
What does software evolution really mean?
mean
How much should effective software evolution cost?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
24. Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
25. Earnings
ROI =
Costs
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
26. A good startup should not only
generate income but also have a
team capable of wisely reducing
its costs.
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
27. How much does it cost?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
28. How much does effective Software
Evolution cost?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
29. What about adding similar features
Costs
Time
Mature Team’s Evolutionary Marginal Cost For Similar Features
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
30. Is this what really happens?
Not at all!
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
31. Pomodoro Apps
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
32. Requirements Pomodoro 1.0
Show a
Pomodoro
background
Set the timer by
pressing a button
Ring after
Total cost:
10.000 €
25 minutes
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
33. Lesson #1
Software Evolution costs too much
Francesco: “Would you buy your own software?”
App’s Developer: “NO!”
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
34. Is Software Evolution
cost effective?
NO!
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
35. Too costly
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
36. Lesson #2
Mature teams cost more
Recently formed team
Mature team
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
37. Are you really improving your process
or feeding your Code Monster?
Quality Effectiveness of Investment
in Process Improvement
Time
Perceived internal quality of software
Effort spent on Process Improvement
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
38. Would you buy your own software?
Software can be built in an evolutionary way.
Evolutionary development costs too much.
We are not conscious enough of the strategies.
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
39. Do you want to be involved?
Would you buy your own software?
What does the term evolution mean to your team?
Would a team less “mature” than yours have lower costs?
Consider you have to introduce a second feature that is similar
to something you’ve already done. Does it cost less than the
rst time you did it? Why?
http://www.antiifcampaign.com/2011/11/would-you-buy-your-own-software.html
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
40. Thanks for listening.
Questions?
Francesco Cirillo • Director, Anti-IF School XPDays Germany
francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011