a study of ripple effects in software ecosystems (icse presentation)

35
A Study of Ripple Effects In Software Ecosystems Romain Robbes Mircea Lungu University of Chile University of Bern Tuesday, June 7, 2011

Upload: mircealungu

Post on 29-Jun-2015

1.067 views

Category:

Documents


1 download

DESCRIPTION

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

TRANSCRIPT

Page 1: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

A Study of Ripple Effects In Software Ecosystems

Romain Robbes Mircea LunguUniversity of Chile University of Bern

Tuesday, June 7, 2011

Page 2: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ripple Effects

Architecture of Moose 3.2 made with Softwarenaut

Tuesday, June 7, 2011

Page 3: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ripple Effects

Architecture of Moose 3.2 made with Softwarenaut

Tuesday, June 7, 2011

Page 4: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ripple Effects

Architecture of Moose 3.2 made with Softwarenaut

Tuesday, June 7, 2011

Page 5: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ecosystem Ripple Effects

Moose in the SCG Eco-system, made with SPOTuesday, June 7, 2011

Page 6: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ecosystem Ripple Effects

? ? ?

?

? ?

?

??

Evidence?Moose in the SCG Eco-system, made with SPOTuesday, June 7, 2011

Page 7: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Evidence from mailing lists

• In the paper

• Seaside

• Moose

• ...

Tuesday, June 7, 2011

Page 8: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Evidence from mailing lists

• In the paper

• Seaside

• Moose

• ...

Seaside User: I noticed that the dialog classes listed below are not in [new version]. I am wondering if these classes have been dropped, have not been ported to [new version] or does their func- tionality exists elsewhere?

Tuesday, June 7, 2011

Page 9: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Evidence from mailing lists

• In the paper

• Seaside

• Moose

• ...

Seaside User: I noticed that the dialog classes listed below are not in [new version]. I am wondering if these classes have been dropped, have not been ported to [new version] or does their func- tionality exists elsewhere?

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

Page 10: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Evidence from mailing lists

• In the paper

• Seaside

• Moose

• ...

Moose User: [...] where is MOLabelShape, why was it deleted?? I use it and now is gone!!! I even had a specialization of it [...]

Tuesday, June 7, 2011

Page 11: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Evidence from an ecosystem history

Tuesday, June 7, 2011

Page 12: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Evidence from an ecosystem history

• SqueakSource - More than

• 7 years of history

• 2000 projects

• 3000 developers

Tuesday, June 7, 2011

Page 13: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Searching for Ripples

Tuesday, June 7, 2011

Page 14: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Searching for Ripples• Source: additions, deletions, modifications, deprecations

Tuesday, June 7, 2011

Page 15: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Searching for Ripples• Source: additions, deletions, modifications, deprecations

• Algorithm for deprecation-based-ripples

Tuesday, June 7, 2011

Page 16: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

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

Page 17: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

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

Page 18: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

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

Page 19: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Top 5 Ripples from The Case Study

Origin System Deprecated Method Systematic Replacement

# of Affected Systems

# of Affected Developers

System-Support Author initials Author fullName 120 110Seaside WACanvas bold: WACanvas strong: 61 59Seaside WASession

registerForBackgracking:(...) states 43 47

Famix-Core FAMIXNamedEntity packagedIn

FAMIXNamedEntity parentPackage

33 11

Kernel ClassDescription metaclass ClassDescription theMetaClass

31 34

System-Support Utilities authorInitials Author initials 37 45Kernel Object isKindOf:orOf: 12 24Collections-Text Text isoToSqueak 18 22

Tuesday, June 7, 2011

Page 20: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

A Ripple Example

remove

add

old

new

... other

ripple

revert

Tuesday, June 7, 2011

Page 21: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

A Ripple Example

packagedIn renamed to

parentPackage

remove

add

old

new

... other

ripple

revert

Tuesday, June 7, 2011

Page 22: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

A Ripple Example

update, revert, update again

remove

add

old

new

... other

original

ripple

revert

Tuesday, June 7, 2011

Page 23: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

A Ripple Example

ripples

Tuesday, June 7, 2011

Page 24: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

A Ripple Example

inconsistent state

Tuesday, June 7, 2011

Page 25: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Conclusions

Tuesday, June 7, 2011

Page 26: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Conclusions• Evidence that ecosystem ripple effects can

Tuesday, June 7, 2011

Page 27: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Conclusions• Evidence that ecosystem ripple effects can

• Have a broad impact

Tuesday, June 7, 2011

Page 28: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Conclusions• Evidence that ecosystem ripple effects can

• Have a broad impact

• Have a long life

Tuesday, June 7, 2011

Page 29: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

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

Page 30: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

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

Page 31: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

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

Page 32: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ripple Effects of the Article

Tuesday, June 7, 2011

Page 33: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ripple Effects of the Article

• Extended Version

Tuesday, June 7, 2011

Page 34: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ripple Effects of the Article

• Extended Version

• Tool Support

Tuesday, June 7, 2011

Page 35: A Study of Ripple Effects in Software Ecosystems (ICSE Presentation)

Ripple Effects of the Article

• Extended Version

• Tool Support

• Study replication in different ecosystems

Tuesday, June 7, 2011