SlideShare a Scribd company logo
1 of 36
Download to read offline
ICPC 2018
International Conference on
Program Comprehension
UNIVERSITÀ
DEGLI STUDI
DI SALERNO
Do Developers Update Third-Party Libraries in Mobile Apps? May 28th, 2018
Do Developers Update

Third-Party Libraries in Mobile Apps?
Pasquale Salza1, Fabio Palomba2, Dario Di Nucci3, Cosmo D’Uva4, Andrea De Lucia4, Filomena Ferrucci4
1USI Università della Svizzera italiana, 2University of Zurich,
3Vrije Universiteit Brussel, 4University of Salerno
1
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Third-party libraries
Crucial for the development
of software
Save the effort related to
the implementation of
complex functions
Very popular for mobile
apps
2
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Libraries are software as well
Need to evolve
The updates aim at
making them more
stable and reliable
3
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Why is updating important?
Apps have an intense and
continuous release cycle
The user experience is
fundamental
Users are the very testers
and decide the success of
an app
4
Bavota et al., The impact of API Change- and Fault-Proness on the User Rating of Android Apps. IEEE
Transactions on Software Engineering, 2015
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Is it always worth updating?
The public API may
change and require
development effort before
being updated
Stability and reliability are
not truly guaranteed
5
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Goals
How much is common to update a
library?
Which category of libraries are
updated the most?
Is there any common behaviour
that developers have in updating
libraries?
Can a library update be related to
the success of an app?
6
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Large Empirical Study
291 Android open source apps
40,000 reviews
300,000 commits
275 unique libraries
7
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Mining Process
F-Droid
Git Cloner
Release Miner
Gradle Parser
Local
Git Repository
commit 1
commit n
commit 2
build.gradle
build.gradle
build.gradle
Remote
Git Repository
Remote
Dependencies
Repositories
Use
Dependencies
Release
Dependencies
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
8
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
F-Droid
Git Cloner
Releas
G
Remote
Git Repository
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
F-Droid parsing
9
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Git Cloner
Local
Git Repository
commit 1
commit n
commit 2
build.gradl
build.gradl
build.gradl
Remote
Git Repository
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Source code repository cloning
10
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Gradle Parser
ry
commit 1
commit n
commit 2
build.gradle
build.gradle
build.gradle
Use
Dependencies
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Gradle libraries parsing
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
21.0.3
22.0.0
22.1.0
22.1.1
22.2.0
22.2.1
23.0.0
23.0.1
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
Version
Type Use
11
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Git Cloner
Release Miner
Local
Git Repository
commit 1
commit n
commit 2
build.gradle
build.gradle
build.gradle
Remote
Dependencies
Repositories
Use
Dependencies
Release
Dependencies
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Dependencies mining
21.0.3
22.0.0
22.1.0
22.1.1
22.2.0
22.2.1
23.0.0
23.0.1
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
Version
Type Use
21.0.3
22.0.0
22.1.0
22.1.1
22.2.0
22.2.1
23.0.0
23.0.1
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
Version
Type Release Use
12
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
21.0.3
22.0.0
22.1.0
22.1.1
22.2.0
22.2.1
23.0.0
23.0.1
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
Version
Type Release Use
13
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Libraries popularity
The apps relies from 1 use
of third-party library to a
maximum of 35
The mean is about 4
libraries per app
14
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
RQ1
To what extent mobile
developers update the
version of the used third-
party libraries?
15
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
To update, or not to update
67% of libraries were used
but never updated during
the app development life
Only 2% of commits refers
to a version change
16
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Upgrade vs downgrade
Downgrades
25.95%
Upgrades
74.05%
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
17
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Upgrade vs downgrade
Downgrades
25.95%
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Anyone, any idea why the build
fails […] does maven need to be
updated too?!
18
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
RQ2
Which types of third-party
libraries are more and less
prone to be updated in
apps?
19
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Changed categories
Category Changes Upgrades Downgrades
Graphical User Interface 52.67% 75.12% 24.88%
Utilities 31.16% 73.43% 26.57%
HTTP 3.91% 63.33% 36.67%
Page Navigation 2.74% 57.14% 42.86%
JSON 1.96% 60.00% 40.00%
. . . . . . . . . . . .
Protocol Buffers 0.07% 100.00% 0.00%
Network 0.07% 100.00% 0.00%
Bug Fix 0.07% 100.00% 0.00%
Defect Detection 0.07% 100.00% 0.00%
Update com.android.recyclerview−v7
to get new fancy icons.
Update android.support to
have an environment
equivalent to the android
platform.
20
My 2 cents. This is an extreme
case, and it doesn't justify the
upgrade of the library.
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
RQ3
What types of update
patterns developers follow
when updating third-party
libraries?
21
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Open coding process
We distributed a total of 1126
library histories to 4 of the
authors (282 each)
22
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
5.0.1
5.1.0
5.1.1
5.1.2
6.0.0
6.1.0
7.0.0
7.0.1
8.0.0
2014-04-01
2014-05-01
2014-06-01
2014-07-01
2014-08-01
2014-09-01
2014-10-01
2014-11-01
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
2015-10-01
2015-11-01
2015-12-01
2016-01-01
2016-02-01
2016-03-01
2016-04-01
2016-05-01
Date
Version
Type Release UseDiligent
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
13%
23
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Diligent
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
!
!
!
13%
24
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
4.48
5.0
2013-11-01
2013-12-01
2014-01-01
2014-02-01
2014-03-01
2014-04-01
2014-05-01
2014-06-01
2014-07-01
2014-08-01
2014-09-01
2014-10-01
2014-11-01
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
2015-10-01
2015-11-01
2015-12-01
2016-01-01
2016-02-01
2016-03-01
2016-04-01
2016-05-01
2016-06-01
2016-07-01
2016-08-01
2016-09-01
Date
Version
Type Release UseIntroduced Once
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
9%
25
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Introduced Once
☠
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
9%
26
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
2.7.1
2.7.2
2.7.3
2.7.4
2.7.5
2.8.0
2.9.0
2.9.1
2.10.0
2.10.1
2.10.2
2.10.3
2.10.4
2.10.5
2.10.6
2.10.7
2.10.8
2.10.9
2.10.10
2.11.0
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
Version
Type Release UseJump Up
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
13%
27
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Jump Up
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
🕴
13%
28
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
19.0.0
19.0.1
19.1.0
20.0.0
21.0.0-rc1
21.0.0
21.0.2
21.0.3
22.0.0
22.1.0
22.1.1
22.2.0
22.2.1
23.0.0
2013-10-01
2013-11-01
2013-12-01
2014-01-01
2014-02-01
2014-03-01
2014-04-01
2014-05-01
2014-06-01
2014-07-01
2014-08-01
2014-09-01
2014-10-01
2014-11-01
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
Version
Type Release UseJump Down
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
<1%
29
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Jump Down
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
🕺
☂
<1%
30
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
21.0.3
22.0.0
22.1.0
22.1.1
22.2.0
22.2.1
23.0.0
23.0.1
2014-12-01
2015-01-01
2015-02-01
2015-03-01
2015-04-01
2015-05-01
2015-06-01
2015-07-01
2015-08-01
2015-09-01
Date
Version
Type Release UseBack and Forth
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
2%
31
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Back and Forth
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
🏃
🏃
🏃
🏃
2%
32
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
RQ4
Are the update patterns
of high-rated and low-
rated apps different?
33
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
High and low rated apps
We classified the apps in two groups based on ratings
High rated: ≥ 3.5 ⭐
Low rated: < 3.5 ⭐
34
Khalid et al., What Do Mobile App Users Complain About? IEEE Software, 2015
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
High and low rated apps
Introduced Once
Diligent
Jump Up
Jump Down
Back and Forth
0% 25% 50% 75% 100%
21%
34%
78%
89%
30%
79%
66%
22%
11%
70%
Low High
35
May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps?
ICPC 2018
Future directions
Extend the study to closed
source apps
Automatic upgrade suggestions
to avoid useless changes
Effort estimation in updating
libraries
36

More Related Content

Similar to Do Developers Update
 Third-Party Libraries in Mobile Apps?

Find Out What's New With WhiteSource September 2018- A WhiteSource Webinar
Find Out What's New With WhiteSource September 2018- A WhiteSource WebinarFind Out What's New With WhiteSource September 2018- A WhiteSource Webinar
Find Out What's New With WhiteSource September 2018- A WhiteSource WebinarWhiteSource
 
IoT Developer Survey 2016
IoT Developer Survey 2016IoT Developer Survey 2016
IoT Developer Survey 2016Eclipse IoT
 
8 Python Tools That Empower Android App Development.pptx
8 Python Tools That Empower Android App Development.pptx8 Python Tools That Empower Android App Development.pptx
8 Python Tools That Empower Android App Development.pptxOliviaManek
 
Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...
Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...
Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...Thabang Mashologu
 
[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source Technologies[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source TechnologiesWSO2
 
Why Startups Should Consider Flutter App Developers?
Why Startups Should Consider Flutter App Developers?Why Startups Should Consider Flutter App Developers?
Why Startups Should Consider Flutter App Developers?BOSC Tech Labs
 
Enabling Edge Analytics of IoT Data: The Case of LoRaWAN
Enabling Edge Analytics of IoT Data: The Case of LoRaWANEnabling Edge Analytics of IoT Data: The Case of LoRaWAN
Enabling Edge Analytics of IoT Data: The Case of LoRaWANHong-Linh Truong
 
INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...
INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...
INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...apidays
 
INTERFACE, by apidays - The Evolution of Data Movement.pdf
INTERFACE, by apidays - The Evolution of Data Movement.pdfINTERFACE, by apidays - The Evolution of Data Movement.pdf
INTERFACE, by apidays - The Evolution of Data Movement.pdfapidays
 
IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...IRJET Journal
 
DevNexus 2019: MicroProfile and Jakarta EE - What's Next?
DevNexus 2019:  MicroProfile and Jakarta EE - What's Next?DevNexus 2019:  MicroProfile and Jakarta EE - What's Next?
DevNexus 2019: MicroProfile and Jakarta EE - What's Next?Kevin Sutter
 
Transform the internal it landscape with APIs and integration
Transform the internal it landscape with APIs and integrationTransform the internal it landscape with APIs and integration
Transform the internal it landscape with APIs and integrationJudy Breedlove
 
6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdf
6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdf6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdf
6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdfDianApps Technologies
 
15 Best React Native Developer Tools in 2024.pdf
15 Best React Native Developer Tools in 2024.pdf15 Best React Native Developer Tools in 2024.pdf
15 Best React Native Developer Tools in 2024.pdfinfowindtech570
 
30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...
30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...
30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...Marouane Kessentini
 
What do you mean by “API as a Product”?
What do you mean by “API as a Product”?What do you mean by “API as a Product”?
What do you mean by “API as a Product”?Nordic APIs
 
Rcose challenges and benefits from using software analytics in softeam
Rcose  challenges and benefits from using software analytics in softeamRcose  challenges and benefits from using software analytics in softeam
Rcose challenges and benefits from using software analytics in softeamAlessandra Bagnato
 
Devoxx - Bug Wars: Episode IV - A New Hope
Devoxx - Bug Wars: Episode IV - A New HopeDevoxx - Bug Wars: Episode IV - A New Hope
Devoxx - Bug Wars: Episode IV - A New HopeMick McGuinness
 

Similar to Do Developers Update
 Third-Party Libraries in Mobile Apps? (20)

Find Out What's New With WhiteSource September 2018- A WhiteSource Webinar
Find Out What's New With WhiteSource September 2018- A WhiteSource WebinarFind Out What's New With WhiteSource September 2018- A WhiteSource Webinar
Find Out What's New With WhiteSource September 2018- A WhiteSource Webinar
 
IoT Developer Survey 2016
IoT Developer Survey 2016IoT Developer Survey 2016
IoT Developer Survey 2016
 
GSOC 2016 mifos
GSOC 2016 mifosGSOC 2016 mifos
GSOC 2016 mifos
 
8 Python Tools That Empower Android App Development.pptx
8 Python Tools That Empower Android App Development.pptx8 Python Tools That Empower Android App Development.pptx
8 Python Tools That Empower Android App Development.pptx
 
D2.2 Workflow Guidelines
D2.2  Workflow Guidelines D2.2  Workflow Guidelines
D2.2 Workflow Guidelines
 
Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...
Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...
Eclipse MicroProfile: Accelerating Cloud-Native Application Development with ...
 
[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source Technologies[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source Technologies
 
Why Startups Should Consider Flutter App Developers?
Why Startups Should Consider Flutter App Developers?Why Startups Should Consider Flutter App Developers?
Why Startups Should Consider Flutter App Developers?
 
Enabling Edge Analytics of IoT Data: The Case of LoRaWAN
Enabling Edge Analytics of IoT Data: The Case of LoRaWANEnabling Edge Analytics of IoT Data: The Case of LoRaWAN
Enabling Edge Analytics of IoT Data: The Case of LoRaWAN
 
INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...
INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...
INTERFACE by apidays 2023 - Developers' take on what makes up a high-quality ...
 
INTERFACE, by apidays - The Evolution of Data Movement.pdf
INTERFACE, by apidays - The Evolution of Data Movement.pdfINTERFACE, by apidays - The Evolution of Data Movement.pdf
INTERFACE, by apidays - The Evolution of Data Movement.pdf
 
IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...
 
DevNexus 2019: MicroProfile and Jakarta EE - What's Next?
DevNexus 2019:  MicroProfile and Jakarta EE - What's Next?DevNexus 2019:  MicroProfile and Jakarta EE - What's Next?
DevNexus 2019: MicroProfile and Jakarta EE - What's Next?
 
Transform the internal it landscape with APIs and integration
Transform the internal it landscape with APIs and integrationTransform the internal it landscape with APIs and integration
Transform the internal it landscape with APIs and integration
 
6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdf
6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdf6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdf
6722_AS_ Top 8 Flutter app development tools to consider in 2024.pdf
 
15 Best React Native Developer Tools in 2024.pdf
15 Best React Native Developer Tools in 2024.pdf15 Best React Native Developer Tools in 2024.pdf
15 Best React Native Developer Tools in 2024.pdf
 
30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...
30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...
30 Years of Refactoring Research and Practice: A Large Scale Refactoring Infr...
 
What do you mean by “API as a Product”?
What do you mean by “API as a Product”?What do you mean by “API as a Product”?
What do you mean by “API as a Product”?
 
Rcose challenges and benefits from using software analytics in softeam
Rcose  challenges and benefits from using software analytics in softeamRcose  challenges and benefits from using software analytics in softeam
Rcose challenges and benefits from using software analytics in softeam
 
Devoxx - Bug Wars: Episode IV - A New Hope
Devoxx - Bug Wars: Episode IV - A New HopeDevoxx - Bug Wars: Episode IV - A New Hope
Devoxx - Bug Wars: Episode IV - A New Hope
 

More from Pasquale Salza

A Framework for Genetic Algorithms Based on Hadoop
A Framework for Genetic Algorithms Based on HadoopA Framework for Genetic Algorithms Based on Hadoop
A Framework for Genetic Algorithms Based on HadoopPasquale Salza
 
Parallel Genetic Algorithms in the Cloud
Parallel Genetic Algorithms in the CloudParallel Genetic Algorithms in the Cloud
Parallel Genetic Algorithms in the CloudPasquale Salza
 
Recommending and Localizing Change Requests for Mobile Apps based on User Rev...
Recommending and Localizing Change Requests for Mobile Apps based on User Rev...Recommending and Localizing Change Requests for Mobile Apps based on User Rev...
Recommending and Localizing Change Requests for Mobile Apps based on User Rev...Pasquale Salza
 
elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...
elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...
elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...Pasquale Salza
 
COSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size EstimationCOSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size EstimationPasquale Salza
 
UniSa Pursuit: A Location-Based Game for the University of Salerno
UniSa Pursuit: A Location-Based Game for the University of SalernoUniSa Pursuit: A Location-Based Game for the University of Salerno
UniSa Pursuit: A Location-Based Game for the University of SalernoPasquale Salza
 

More from Pasquale Salza (6)

A Framework for Genetic Algorithms Based on Hadoop
A Framework for Genetic Algorithms Based on HadoopA Framework for Genetic Algorithms Based on Hadoop
A Framework for Genetic Algorithms Based on Hadoop
 
Parallel Genetic Algorithms in the Cloud
Parallel Genetic Algorithms in the CloudParallel Genetic Algorithms in the Cloud
Parallel Genetic Algorithms in the Cloud
 
Recommending and Localizing Change Requests for Mobile Apps based on User Rev...
Recommending and Localizing Change Requests for Mobile Apps based on User Rev...Recommending and Localizing Change Requests for Mobile Apps based on User Rev...
Recommending and Localizing Change Requests for Mobile Apps based on User Rev...
 
elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...
elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...
elephant56: Design and Implementation of a Parallel Genetic Algorithms Framew...
 
COSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size EstimationCOSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size Estimation
 
UniSa Pursuit: A Location-Based Game for the University of Salerno
UniSa Pursuit: A Location-Based Game for the University of SalernoUniSa Pursuit: A Location-Based Game for the University of Salerno
UniSa Pursuit: A Location-Based Game for the University of Salerno
 

Recently uploaded

Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Kayode Fayemi
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Delhi Call girls
 
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxraffaeleoman
 
Air breathing and respiratory adaptations in diver animals
Air breathing and respiratory adaptations in diver animalsAir breathing and respiratory adaptations in diver animals
Air breathing and respiratory adaptations in diver animalsaqsarehman5055
 
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, YardstickSaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, Yardsticksaastr
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesPooja Nehwal
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxmohammadalnahdi22
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxNikitaBankoti2
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024eCommerce Institute
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar TrainingKylaCullinane
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Vipesco
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMoumonDas2
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024eCommerce Institute
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyPooja Nehwal
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaKayode Fayemi
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfSenaatti-kiinteistöt
 
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...Sheetaleventcompany
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AITatiana Gurgel
 

Recently uploaded (20)

Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
 
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
 
Air breathing and respiratory adaptations in diver animals
Air breathing and respiratory adaptations in diver animalsAir breathing and respiratory adaptations in diver animals
Air breathing and respiratory adaptations in diver animals
 
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, YardstickSaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar Training
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptx
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
 
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 

Do Developers Update
 Third-Party Libraries in Mobile Apps?

  • 1. ICPC 2018 International Conference on Program Comprehension UNIVERSITÀ DEGLI STUDI DI SALERNO Do Developers Update Third-Party Libraries in Mobile Apps? May 28th, 2018 Do Developers Update
 Third-Party Libraries in Mobile Apps? Pasquale Salza1, Fabio Palomba2, Dario Di Nucci3, Cosmo D’Uva4, Andrea De Lucia4, Filomena Ferrucci4 1USI Università della Svizzera italiana, 2University of Zurich, 3Vrije Universiteit Brussel, 4University of Salerno 1
  • 2. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Third-party libraries Crucial for the development of software Save the effort related to the implementation of complex functions Very popular for mobile apps 2
  • 3. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Libraries are software as well Need to evolve The updates aim at making them more stable and reliable 3
  • 4. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Why is updating important? Apps have an intense and continuous release cycle The user experience is fundamental Users are the very testers and decide the success of an app 4 Bavota et al., The impact of API Change- and Fault-Proness on the User Rating of Android Apps. IEEE Transactions on Software Engineering, 2015
  • 5. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Is it always worth updating? The public API may change and require development effort before being updated Stability and reliability are not truly guaranteed 5
  • 6. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Goals How much is common to update a library? Which category of libraries are updated the most? Is there any common behaviour that developers have in updating libraries? Can a library update be related to the success of an app? 6
  • 7. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Large Empirical Study 291 Android open source apps 40,000 reviews 300,000 commits 275 unique libraries 7
  • 8. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Mining Process F-Droid Git Cloner Release Miner Gradle Parser Local Git Repository commit 1 commit n commit 2 build.gradle build.gradle build.gradle Remote Git Repository Remote Dependencies Repositories Use Dependencies Release Dependencies May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 8
  • 9. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 F-Droid Git Cloner Releas G Remote Git Repository May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 F-Droid parsing 9
  • 10. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Git Cloner Local Git Repository commit 1 commit n commit 2 build.gradl build.gradl build.gradl Remote Git Repository May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Source code repository cloning 10 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date
  • 11. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Gradle Parser ry commit 1 commit n commit 2 build.gradle build.gradle build.gradle Use Dependencies May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Gradle libraries parsing 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date 21.0.3 22.0.0 22.1.0 22.1.1 22.2.0 22.2.1 23.0.0 23.0.1 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date Version Type Use 11
  • 12. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Git Cloner Release Miner Local Git Repository commit 1 commit n commit 2 build.gradle build.gradle build.gradle Remote Dependencies Repositories Use Dependencies Release Dependencies May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Dependencies mining 21.0.3 22.0.0 22.1.0 22.1.1 22.2.0 22.2.1 23.0.0 23.0.1 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date Version Type Use 21.0.3 22.0.0 22.1.0 22.1.1 22.2.0 22.2.1 23.0.0 23.0.1 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date Version Type Release Use 12
  • 13. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 21.0.3 22.0.0 22.1.0 22.1.1 22.2.0 22.2.1 23.0.0 23.0.1 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date Version Type Release Use 13
  • 14. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Libraries popularity The apps relies from 1 use of third-party library to a maximum of 35 The mean is about 4 libraries per app 14
  • 15. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 RQ1 To what extent mobile developers update the version of the used third- party libraries? 15
  • 16. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 To update, or not to update 67% of libraries were used but never updated during the app development life Only 2% of commits refers to a version change 16
  • 17. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Upgrade vs downgrade Downgrades 25.95% Upgrades 74.05% May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 17
  • 18. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Upgrade vs downgrade Downgrades 25.95% May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Anyone, any idea why the build fails […] does maven need to be updated too?! 18
  • 19. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 RQ2 Which types of third-party libraries are more and less prone to be updated in apps? 19
  • 20. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Changed categories Category Changes Upgrades Downgrades Graphical User Interface 52.67% 75.12% 24.88% Utilities 31.16% 73.43% 26.57% HTTP 3.91% 63.33% 36.67% Page Navigation 2.74% 57.14% 42.86% JSON 1.96% 60.00% 40.00% . . . . . . . . . . . . Protocol Buffers 0.07% 100.00% 0.00% Network 0.07% 100.00% 0.00% Bug Fix 0.07% 100.00% 0.00% Defect Detection 0.07% 100.00% 0.00% Update com.android.recyclerview−v7 to get new fancy icons. Update android.support to have an environment equivalent to the android platform. 20 My 2 cents. This is an extreme case, and it doesn't justify the upgrade of the library.
  • 21. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 RQ3 What types of update patterns developers follow when updating third-party libraries? 21
  • 22. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Open coding process We distributed a total of 1126 library histories to 4 of the authors (282 each) 22
  • 23. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 5.0.1 5.1.0 5.1.1 5.1.2 6.0.0 6.1.0 7.0.0 7.0.1 8.0.0 2014-04-01 2014-05-01 2014-06-01 2014-07-01 2014-08-01 2014-09-01 2014-10-01 2014-11-01 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 2015-10-01 2015-11-01 2015-12-01 2016-01-01 2016-02-01 2016-03-01 2016-04-01 2016-05-01 Date Version Type Release UseDiligent May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 13% 23
  • 24. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Diligent May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 ! ! ! 13% 24
  • 25. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 4.48 5.0 2013-11-01 2013-12-01 2014-01-01 2014-02-01 2014-03-01 2014-04-01 2014-05-01 2014-06-01 2014-07-01 2014-08-01 2014-09-01 2014-10-01 2014-11-01 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 2015-10-01 2015-11-01 2015-12-01 2016-01-01 2016-02-01 2016-03-01 2016-04-01 2016-05-01 2016-06-01 2016-07-01 2016-08-01 2016-09-01 Date Version Type Release UseIntroduced Once May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 9% 25
  • 26. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Introduced Once ☠ May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 9% 26
  • 27. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.9.0 2.9.1 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.10.5 2.10.6 2.10.7 2.10.8 2.10.9 2.10.10 2.11.0 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date Version Type Release UseJump Up May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 13% 27
  • 28. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Jump Up May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 🕴 13% 28
  • 29. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 19.0.0 19.0.1 19.1.0 20.0.0 21.0.0-rc1 21.0.0 21.0.2 21.0.3 22.0.0 22.1.0 22.1.1 22.2.0 22.2.1 23.0.0 2013-10-01 2013-11-01 2013-12-01 2014-01-01 2014-02-01 2014-03-01 2014-04-01 2014-05-01 2014-06-01 2014-07-01 2014-08-01 2014-09-01 2014-10-01 2014-11-01 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date Version Type Release UseJump Down May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 <1% 29
  • 30. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Jump Down May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 🕺 ☂ <1% 30
  • 31. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 21.0.3 22.0.0 22.1.0 22.1.1 22.2.0 22.2.1 23.0.0 23.0.1 2014-12-01 2015-01-01 2015-02-01 2015-03-01 2015-04-01 2015-05-01 2015-06-01 2015-07-01 2015-08-01 2015-09-01 Date Version Type Release UseBack and Forth May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 2% 31
  • 32. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Back and Forth May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 🏃 🏃 🏃 🏃 2% 32
  • 33. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 RQ4 Are the update patterns of high-rated and low- rated apps different? 33
  • 34. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 High and low rated apps We classified the apps in two groups based on ratings High rated: ≥ 3.5 ⭐ Low rated: < 3.5 ⭐ 34 Khalid et al., What Do Mobile App Users Complain About? IEEE Software, 2015
  • 35. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 High and low rated apps Introduced Once Diligent Jump Up Jump Down Back and Forth 0% 25% 50% 75% 100% 21% 34% 78% 89% 30% 79% 66% 22% 11% 70% Low High 35
  • 36. May 28th, 2018Do Developers Update Third-Party Libraries in Mobile Apps? ICPC 2018 Future directions Extend the study to closed source apps Automatic upgrade suggestions to avoid useless changes Effort estimation in updating libraries 36