Presented at ICSE 2011 in the New Ideas and Emerging Results track.
In the associated paper we show that in a real world ecosystem ripple effects are frequent, long lived, and can have a very broad impact. More at: http://scg.unibe.ch/scgbib?query=lungu+ripple
5. Ecosystem Ripple
Effects
Moose in the SCG Eco-
system, made with SPO
Tuesday, June 7, 2011
6. Ecosystem Ripple
Effects
?
?
? ? ? ? ?
?
?
Moose in the SCG Eco-
Evidence?
system, made with SPO
Tuesday, June 7, 2011
7. Evidence from
mailing lists
• In the paper
• Seaside
• Moose
• ...
Tuesday, June 7, 2011
8. Evidence from
mailing lists
Seaside User:
• In the paper
I noticed that the dialog classes
listed below are not in [new version]. I
am wondering if these classes have
• Seaside been dropped, have not been
ported to [new version] or does their
func- tionality exists elsewhere?
• Moose
• ...
Tuesday, June 7, 2011
9. Evidence from
mailing lists
Seaside User:
• In the paper
I noticed that the dialog classes
listed below are not in [new version]. I
am wondering if these classes have
• Seaside been dropped, have not been
ported to [new version] or does their
func- tionality exists elsewhere?
• Moose
Seaside Developer:
• ... They have been dropped. A mail
went out to this list if anybody still
used them and nobody replied. [...]
Personally I donʼt know of any
application that uses these dialogs.
Tuesday, June 7, 2011
10. Evidence from
mailing lists
• In the paper
Moose User:
• Seaside [...] where is MOLabelShape, why
was it deleted?? I use it and now is
gone!!! I even had a specialization
• Moose of it [...]
• ...
Tuesday, June 7, 2011
11. Evidence from
an ecosystem history
Tuesday, June 7, 2011
12. Evidence from
an ecosystem history
• SqueakSource - More than
• 7 years of history
• 2000 projects
• 3000 developers
Tuesday, June 7, 2011
14. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
Tuesday, June 7, 2011
15. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
Tuesday, June 7, 2011
16. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
1. Find all the entities in the ecosystem that were
deprecated
Tuesday, June 7, 2011
17. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
1. Find all the entities in the ecosystem that were
deprecated
2. For each look at all the events that involve that entity
and/or its suggested replacement
Tuesday, June 7, 2011
18. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
1. Find all the entities in the ecosystem that were
deprecated
2. For each look at all the events that involve that entity
and/or its suggested replacement
3. Replacements that happened after the deprecation as
consequences of a ripple
Tuesday, June 7, 2011
19. Top 5 Ripples from The
Case Study
Systematic # of Affected # of Affected
Origin System Deprecated Method
Replacement Systems Developers
System-Support Author initials Author fullName 120 110
Seaside WACanvas bold: WACanvas strong: 61 59
Seaside WASession (...) states 43 47
registerForBackgracking:
Famix-Core FAMIXNamedEntity FAMIXNamedEntity 33 11
packagedIn parentPackage
Kernel ClassDescription metaclass ClassDescription 31 34
theMetaClass
System-Support Utilities authorInitials Author initials 37 45
Kernel Object isKindOf:orOf: 12 24
Collections-Text Text isoToSqueak 18 22
Tuesday, June 7, 2011
20. A Ripple Example
new
ripple
old
add revert
remove
... other
Tuesday, June 7, 2011
21. A Ripple Example
new
ripple
old
add revert
remove
... other
packagedIn
renamed to
parentPackage
Tuesday, June 7, 2011
22. A Ripple Example
new original
old
ripple
add
remove revert
... other
update, revert,
update again
Tuesday, June 7, 2011
26. Conclusions
• Evidence that ecosystem ripple effects can
Tuesday, June 7, 2011
27. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
Tuesday, June 7, 2011
28. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
Tuesday, June 7, 2011
29. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
• Developers don’t know their clients
Tuesday, June 7, 2011
30. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
• Developers don’t know their clients
• Angry impactees
Tuesday, June 7, 2011
31. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
• Developers don’t know their clients
• Angry impactees
• Defensive deprecation
Tuesday, June 7, 2011