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

Post on 29-Jun-2015

1.067 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

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

A Study of Ripple Effects In Software Ecosystems

Romain Robbes Mircea LunguUniversity of Chile University of Bern

Tuesday, June 7, 2011

Ripple Effects

Architecture of Moose 3.2 made with Softwarenaut

Tuesday, June 7, 2011

Ripple Effects

Architecture of Moose 3.2 made with Softwarenaut

Tuesday, June 7, 2011

Ripple Effects

Architecture of Moose 3.2 made with Softwarenaut

Tuesday, June 7, 2011

Ecosystem Ripple Effects

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

Ecosystem Ripple Effects

? ? ?

?

? ?

?

??

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

Evidence from mailing lists

• In the paper

• Seaside

• Moose

• ...

Tuesday, June 7, 2011

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

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

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

Evidence from an ecosystem history

Tuesday, June 7, 2011

Evidence from an ecosystem history

• SqueakSource - More than

• 7 years of history

• 2000 projects

• 3000 developers

Tuesday, June 7, 2011

Searching for Ripples

Tuesday, June 7, 2011

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

Tuesday, June 7, 2011

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

• Algorithm for deprecation-based-ripples

Tuesday, June 7, 2011

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

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

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

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

A Ripple Example

remove

add

old

new

... other

ripple

revert

Tuesday, June 7, 2011

A Ripple Example

packagedIn renamed to

parentPackage

remove

add

old

new

... other

ripple

revert

Tuesday, June 7, 2011

A Ripple Example

update, revert, update again

remove

add

old

new

... other

original

ripple

revert

Tuesday, June 7, 2011

A Ripple Example

ripples

Tuesday, June 7, 2011

A Ripple Example

inconsistent state

Tuesday, June 7, 2011

Conclusions

Tuesday, June 7, 2011

Conclusions• Evidence that ecosystem ripple effects can

Tuesday, June 7, 2011

Conclusions• Evidence that ecosystem ripple effects can

• Have a broad impact

Tuesday, June 7, 2011

Conclusions• Evidence that ecosystem ripple effects can

• Have a broad impact

• Have a long life

Tuesday, June 7, 2011

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

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

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

Ripple Effects of the Article

Tuesday, June 7, 2011

Ripple Effects of the Article

• Extended Version

Tuesday, June 7, 2011

Ripple Effects of the Article

• Extended Version

• Tool Support

Tuesday, June 7, 2011

Ripple Effects of the Article

• Extended Version

• Tool Support

• Study replication in different ecosystems

Tuesday, June 7, 2011

top related