SlideShare a Scribd company logo
Analyzing Reviews and Code
of Mobile Apps for
Better Release Planning
Adelina Ciurumelea, Andreas Schaufenbühl,
Sebastiano Panichella, Harald C. Gall
software evolution & architecture lab
2
Extremely Popular Apps
8,087,067 reviews3,505,905 reviews38,742,600 reviews
3
Open Source Apps
62,707 reviews
4
The number of reviews is large compared
to the available development resources.
5
• reviews contain valuable
feedback directly from the
users
• users often report bugs, user
experience and request
features
• the review content influences
the number of downloads
Importance of reviews
6
INFORMATIVE NON-INFORMATIVE
“AR-Miner: Mining informative reviews for developers from mobile app marketplace”
N. Chen, J. Lin, S. Hoi, X. Xiao, and B. Zhang
7
BUG FEATURE REQUEST
“Release planning of mobile apps based on user reviews”
L. Villarroel, G. Bavota, B. Russo, R. Oliveto, and M. Di Penta
OTHER
8
BUGFEATURE REQUEST
• the developer has to manually analyse the unstructured groups of
reviews, understand what they talk about and extract actionable change
tasks
• what does a particular cluster talk about? Does it talk about the UI or
about the performance of the app, etc.?
9
What are the mobile specific topics
users talk about in their reviews?
10
manual analysis of ~1600
reviews
11
Hmmm...
Mm No…
This is IT
Nope Nopity nope
• not all reviews are useful
12
Hmmm...
Mm No…
This is IT
Nope Nopity nope
Sucks Way to many errors
0 stars Garbage.
problem bro
Garbage Bla bla bla
• not all reviews are useful
• some are even offensive
13
Pretty close to perfect, this app is
way better than any comic book
reader I've ever used. It's small, it
operates fast, and the interface is
incredibly clean and simple.
• others can provide valuable
information for the developer
14
Pretty close to perfect, this app is
way better than any comic book
reader I've ever used. It's small,
it operates fast, and the
interface is incredibly clean and
simple.
Resources
Usage
15
For info (in case dev not already
aware!), there is a graphical
glitch when scrolling output in
marshmallow on a nexus 5.
Compatibility
Usage
Complaint
16
Building the taxonomy
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
Content analysis in 2 passes:
• start with an empty list of categories
• analyse each review and add a new category
(including definition and keywords) if necessary
• label the review with all the matching categories
• second pass: revisit the list of reviews and label
them with the appropriate categories
17
Category Description
Compatibility mentions the OS, mobile device or a specific hardware component.
Usage talks about the UI or the usability of the app.
Resources
mentions the app’s influence on the battery and memory usage or the
performance of the app/phone.
Pricing statements mentioning the license model or the price of the app.
Protection statements referring to security or privacy issues.
Complaint the user reports or complains about an issue with the app.
High Level Taxonomy
18
specialise the taxonomy
further
19
Liked it and worked very well in
lollipop, but not MM The plugins
don't refresh, manual navigation
to next image doesn't work.
Some plugins give error.
Altogether seems broken after
MM update on Note 4.
Compatibility
20
Liked it and worked very well in
lollipop, but not MM The plugins
don't refresh, manual navigation
to next image doesn't work.
Some plugins give error.
Altogether seems broken after
MM update on Note 4.
Compatibility
Device
Android Version
21
High Level Low Level Categories
Compatibility Device, Android Version, Hardware
Usage App Usability, UI
Resources Performance, Battery, Memory
Pricing Licensing, Price
Protection Security, Privacy
Low Level Taxonomy
22
Automated Classification
23
Gradient Boosted
Trees Training
Preprocessing
&
Feature Extraction
Multi-label
Classification
ML Approach
24
Preprocessing & Feature
Extraction
• preprocessing: stop words removal and stemming
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
25
Training
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
• one-vs-all strategy: separate classifier for each
high and low level category (18 in total)
• used the Gradient Boosted Trees model
26
Multi-label Classification
Preprocessing
Feature
Extraction Classification
High & Low
Level Categories
++
++
…
Battery
UI
Complaint
Resources
Usage
27
Example
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
RQ2: Does our approach correctly recommend the software
artifacts that need to be modified in order to handle user
requests and complaints?
• 752 user reviews from our dataset
belong to AcDisplay
• analyse Compatibility and
Complaint reviews (61 reviews)
• Complaint and Android Version (22
reviews)
28
Example
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
“Good but has some issues with Marshmallow I used this on
my old phone and if was flawless and I loved it. I noticed that
sometimes when I had AcDisplay activated I would not be
able to use the fingerprint sensor even after I unlocked
AcDisplay and had to enter a password. This is very frustrating
so I cannot use AcDisplay.”
“Love the design I love the app. It’s super sleek and nice. But
ever since my phone updated to marshmallow it’s stopped
working. Hope it comes back soon.”
“On Marshmallow, the screen is buggy and sometimes shows
the notification shade.”
29
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
• can we link reviews to the related source code?
• IR methods based on the VSM (hard task: the vocabulary
used by reviews and source code is different)
• use additional Android project specific information (e.g.
UI functionality is implemented in Activity classes)
Source Code Localisation
30
Source Code Localisation
Android Project
Structure Info
IR - VSM
Software Artifacts
App’s Source Code
User Reviews
31
Evaluation
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
RQ1: To what extent does our approach organise reviews
according to meaningful maintenance and evolution tasks
for developers?
RQ2: Does our approach correctly recommend the software
artifacts that need to be modified in order to handle user
requests and complaints?
32
Reviews Source Code
33
Study RQ1
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
• ~7800 user reviews from 39 apps
34
Study RQ1
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
• 2 external evaluators
• evaluate 200 reviews for
each category (3600 total)
35
Results RQ1
High Level
Category
Precision Recall F1 Score
Compatibility 71% 97% 82%
Usage 89% 94% 91%
Resources 79% 99% 88%
Pricing 85% 97% 90%
Protection 89% 98% 93%
Complaint 85% 80% 82%
36
Results RQ1
High Level
Category
Low Level
Category
Precision Recall
F1
Score
Compatibility
Device
OS Version
Hardware
85%
89%
61%
98%
86%
95%
91%
87%
74%
Usage
App Usability
UI
92%
83%
91%
93%
91%
88%
Resources
Performance
Battery
Memory
64%
78%
68%
97%
95%
95%
77%
86%
79%
Pricing
Licensing
Price
91%
85%
98%
96%
94%
90%
Protection
Security
Privacy
87%
83%
98%
96%
92%
89%
37
Results RQ1
Our approach is able to classify reviews with high precision
and recall according to the mobile specific topics we derived.
The most important categories are Usage, Resources and
Compatibility.
38
Study RQ2
• 1 external evaluator
• 91 user reviews from 2 apps
39
Results RQ2
• feature extraction: TF-IDF scores and 2 and 3-
grams counts
Quality of
Reviews
Precision Recall F1 Score
Difficult to Link 41% 83% 55%
Easier to Link 52% 79% 63%
All 51% 79% 62%
40
Results RQ2
Our approach achieves promising results in recommending
related software artifacts for specific user reviews, furthermore
better quality reviews are easier to link than lower quality ones.
41
Conclusion & Future Work
• reviews can be classified with high precision and recall
using machine learning according to mobile specific
topics
• linking reviews to source code using textual similarity
based methods is difficult
• future work: summarise reviews, improve localisation
(static analysis)
42
Discussion
What mechanisms can we adopt for enabling a reliable
and practical solution for code localisation?

More Related Content

PPTX
What Would Users Change in My App? Summarizing App Reviews for Recommending ...
PPTX
ARdoc: App Reviews Development Oriented Classifier
PDF
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...
PDF
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...
PPT
On the Link Between Mobile App Quality and User Reviews
PDF
MDroid+: A Mutation Testing Framework for Android
DOC
Abhinav_CV
PDF
Ijcatr04051014
What Would Users Change in My App? Summarizing App Reviews for Recommending ...
ARdoc: App Reviews Development Oriented Classifier
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...
On the Link Between Mobile App Quality and User Reviews
MDroid+: A Mutation Testing Framework for Android
Abhinav_CV
Ijcatr04051014

What's hot (20)

PDF
How do Developers Test Android Applications?
PDF
Joel Resume_Update
PDF
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
PDF
Techniques and Tools for Mobile Testing Automation
DOCX
Joel Resume_Updates
PPTX
Predicting Android Application Security and Privacy Risk With Static Code Met...
PDF
IRJET- Research Study on Testing Mantle in SDLC
PDF
On-Device Bug Reporting for Android Applications
PPTX
Software Engineering-Part 1
PDF
IRJET- Approaching Highlights and Security issues in Software Engineering...
DOCX
Pravin Arote Updated CV
DOCX
Vijay_Resume
PDF
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
PDF
Comparative Study on Different Mobile Application Frameworks
PDF
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...
PDF
IRJET- Use of Artificial Intelligence in Software Development Life Cycle Requ...
PDF
Automated GUI-Testing of Android Apps: From Research to Practice
PDF
Survey mobile app
DOCX
kritika_resume2
PDF
A hybrid crowd-powered.compressed
How do Developers Test Android Applications?
Joel Resume_Update
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Techniques and Tools for Mobile Testing Automation
Joel Resume_Updates
Predicting Android Application Security and Privacy Risk With Static Code Met...
IRJET- Research Study on Testing Mantle in SDLC
On-Device Bug Reporting for Android Applications
Software Engineering-Part 1
IRJET- Approaching Highlights and Security issues in Software Engineering...
Pravin Arote Updated CV
Vijay_Resume
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
Comparative Study on Different Mobile Application Frameworks
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...
IRJET- Use of Artificial Intelligence in Software Development Life Cycle Requ...
Automated GUI-Testing of Android Apps: From Research to Practice
Survey mobile app
kritika_resume2
A hybrid crowd-powered.compressed
Ad

Viewers also liked (20)

PDF
Reducing Redundancies in Multi-Revision Code Analysis
PDF
24 x 7 leadership factory
PDF
Tm '13 april lc day review
DOCX
Production log
PPTX
The ballistate review
PPTX
Launch pad
PDF
Chair pdf
PPT
Useful automation
PPTX
Fmp pitch
KEY
Curriculum Night
PPT
Sustaining the Big Data Ecosystem
KEY
Social justice presentation
PDF
Digital Economy, SocialCommerce and MIT Open Courseware
PPT
La dieta sana
PDF
The excelsiors '13 april lc day review
PPTX
Using questions and answers on Milkround
PPTX
oGCDP 2013 Plans
PPTX
The origin
PPT
¿Qué vas a hacer en tu ciudad?
PPTX
Marketing review
Reducing Redundancies in Multi-Revision Code Analysis
24 x 7 leadership factory
Tm '13 april lc day review
Production log
The ballistate review
Launch pad
Chair pdf
Useful automation
Fmp pitch
Curriculum Night
Sustaining the Big Data Ecosystem
Social justice presentation
Digital Economy, SocialCommerce and MIT Open Courseware
La dieta sana
The excelsiors '13 april lc day review
Using questions and answers on Milkround
oGCDP 2013 Plans
The origin
¿Qué vas a hacer en tu ciudad?
Marketing review
Ad

Similar to Analyzing Reviews and Code of Mobile Apps for Better Release Planning (20)

PPTX
What are the Characteristics of High-rated Apps
PDF
Analyzing App Rating Using Natural Language Processing and Machine Learning
DOCX
2014 IEEE DOTNET DATA MINING PROJECT Product aspect-ranking-and--its-applicat...
DOCX
IEEE 2014 DOTNET DATA MINING PROJECTS Product aspect-ranking-and--its-applica...
DOCX
product aspect ranking and applications
PDF
End Users’ Perception of Hybrid Mobile Apps in the Google Play Store
PDF
Fragility of Layout-based and Visual GUI test scripts: an assessment study on...
PDF
IRJET- Product Aspect Ranking and its Application
DOCX
PDF
An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in And...
PDF
Comprehensive Mobile App Testing Checklist for Testers & Developers
PDF
Comprehensive Mobile App Testing Checklist for Testers & Developers (1).pdf
PPTX
Agile in Medical Software Development
PPTX
New GRIN-Global tools developed by CIP in 2020
PPTX
AppSec Threat Modeling with 5 Agile Design Diagrams Every Project Should Have
ODP
Requirements Analysis
DOCX
software engineering
PPTX
Understanding the Test Automation Culture of App Developers
PDF
Using JMeter and Google Analytics for Software Performance Testing
PDF
Unit 6- Development Evolution model
What are the Characteristics of High-rated Apps
Analyzing App Rating Using Natural Language Processing and Machine Learning
2014 IEEE DOTNET DATA MINING PROJECT Product aspect-ranking-and--its-applicat...
IEEE 2014 DOTNET DATA MINING PROJECTS Product aspect-ranking-and--its-applica...
product aspect ranking and applications
End Users’ Perception of Hybrid Mobile Apps in the Google Play Store
Fragility of Layout-based and Visual GUI test scripts: an assessment study on...
IRJET- Product Aspect Ranking and its Application
An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in And...
Comprehensive Mobile App Testing Checklist for Testers & Developers
Comprehensive Mobile App Testing Checklist for Testers & Developers (1).pdf
Agile in Medical Software Development
New GRIN-Global tools developed by CIP in 2020
AppSec Threat Modeling with 5 Agile Design Diagrams Every Project Should Have
Requirements Analysis
software engineering
Understanding the Test Automation Culture of App Developers
Using JMeter and Google Analytics for Software Performance Testing
Unit 6- Development Evolution model

More from Sebastiano Panichella (20)

PDF
ICST/SBFT Tool Competition 2025 - UAV Testing Track
PDF
NL-based Software Engineering (NLBSE) '25
PDF
ICST Tool Competition 2025 Self-driving Car Testing Track
PDF
ICST Awards: 18th IEEE International Conference on Software Testing, Verifica...
PDF
ICST Panel: 18th IEEE International Conference on Software Testing, Verificat...
PDF
ICST Closing: 18th IEEE International Conference on Software Testing, Verific...
PDF
ICST Opening: 18th IEEE International Conference on Software Testing, Verific...
PDF
ICST/SBFT Tool Competition 2025 UAV Testing Track
PDF
Announcement of 18th IEEE International Conference on Software Testing, Verif...
PDF
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
PDF
International Workshop on Artificial Intelligence in Software Testing
PDF
The 3rd Intl. Workshop on NL-based Software Engineering
PDF
Diversity-guided Search Exploration for Self-driving Cars Test Generation thr...
PDF
SBFT Tool Competition 2024 -- Python Test Case Generation Track
PDF
SBFT Tool Competition 2024 - CPS-UAV Test Case Generation Track
PDF
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
PDF
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective ...
PDF
COSMOS: DevOps for Complex Cyber-physical Systems
PDF
Testing and Development Challenges for Complex Cyber-Physical Systems: Insigh...
PDF
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
ICST/SBFT Tool Competition 2025 - UAV Testing Track
NL-based Software Engineering (NLBSE) '25
ICST Tool Competition 2025 Self-driving Car Testing Track
ICST Awards: 18th IEEE International Conference on Software Testing, Verifica...
ICST Panel: 18th IEEE International Conference on Software Testing, Verificat...
ICST Closing: 18th IEEE International Conference on Software Testing, Verific...
ICST Opening: 18th IEEE International Conference on Software Testing, Verific...
ICST/SBFT Tool Competition 2025 UAV Testing Track
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
International Workshop on Artificial Intelligence in Software Testing
The 3rd Intl. Workshop on NL-based Software Engineering
Diversity-guided Search Exploration for Self-driving Cars Test Generation thr...
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 - CPS-UAV Test Case Generation Track
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective ...
COSMOS: DevOps for Complex Cyber-physical Systems
Testing and Development Challenges for Complex Cyber-Physical Systems: Insigh...
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...

Recently uploaded (20)

PPTX
Hydrogel Based delivery Cancer Treatment
PDF
COLEAD A2F approach and Theory of Change
PPTX
BIOLOGY TISSUE PPT CLASS 9 PROJECT PUBLIC
PPTX
Intro to ISO 9001 2015.pptx wareness raising
PPTX
Introduction-to-Food-Packaging-and-packaging -materials.pptx
PPTX
Self management and self evaluation presentation
PDF
Instagram's Product Secrets Unveiled with this PPT
PDF
Nykaa-Strategy-Case-Fixing-Retention-UX-and-D2C-Engagement (1).pdf
PPTX
Emphasizing It's Not The End 08 06 2025.pptx
PPTX
INTERNATIONAL LABOUR ORAGNISATION PPT ON SOCIAL SCIENCE
DOC
学位双硕士UTAS毕业证,墨尔本理工学院毕业证留学硕士毕业证
PPTX
Relationship Management Presentation In Banking.pptx
PDF
oil_refinery_presentation_v1 sllfmfls.pdf
PPTX
chapter8-180915055454bycuufucdghrwtrt.pptx
PPTX
Primary and secondary sources, and history
PPTX
AcademyNaturalLanguageProcessing-EN-ILT-M02-Introduction.pptx
PPTX
nose tajweed for the arabic alphabets for the responsive
PPTX
Anesthesia and it's stage with mnemonic and images
PPTX
2025-08-10 Joseph 02 (shared slides).pptx
DOCX
ENGLISH PROJECT FOR BINOD BIHARI MAHTO KOYLANCHAL UNIVERSITY
Hydrogel Based delivery Cancer Treatment
COLEAD A2F approach and Theory of Change
BIOLOGY TISSUE PPT CLASS 9 PROJECT PUBLIC
Intro to ISO 9001 2015.pptx wareness raising
Introduction-to-Food-Packaging-and-packaging -materials.pptx
Self management and self evaluation presentation
Instagram's Product Secrets Unveiled with this PPT
Nykaa-Strategy-Case-Fixing-Retention-UX-and-D2C-Engagement (1).pdf
Emphasizing It's Not The End 08 06 2025.pptx
INTERNATIONAL LABOUR ORAGNISATION PPT ON SOCIAL SCIENCE
学位双硕士UTAS毕业证,墨尔本理工学院毕业证留学硕士毕业证
Relationship Management Presentation In Banking.pptx
oil_refinery_presentation_v1 sllfmfls.pdf
chapter8-180915055454bycuufucdghrwtrt.pptx
Primary and secondary sources, and history
AcademyNaturalLanguageProcessing-EN-ILT-M02-Introduction.pptx
nose tajweed for the arabic alphabets for the responsive
Anesthesia and it's stage with mnemonic and images
2025-08-10 Joseph 02 (shared slides).pptx
ENGLISH PROJECT FOR BINOD BIHARI MAHTO KOYLANCHAL UNIVERSITY

Analyzing Reviews and Code of Mobile Apps for Better Release Planning

  • 1. Analyzing Reviews and Code of Mobile Apps for Better Release Planning Adelina Ciurumelea, Andreas Schaufenbühl, Sebastiano Panichella, Harald C. Gall software evolution & architecture lab
  • 2. 2 Extremely Popular Apps 8,087,067 reviews3,505,905 reviews38,742,600 reviews
  • 4. 4 The number of reviews is large compared to the available development resources.
  • 5. 5 • reviews contain valuable feedback directly from the users • users often report bugs, user experience and request features • the review content influences the number of downloads Importance of reviews
  • 6. 6 INFORMATIVE NON-INFORMATIVE “AR-Miner: Mining informative reviews for developers from mobile app marketplace” N. Chen, J. Lin, S. Hoi, X. Xiao, and B. Zhang
  • 7. 7 BUG FEATURE REQUEST “Release planning of mobile apps based on user reviews” L. Villarroel, G. Bavota, B. Russo, R. Oliveto, and M. Di Penta OTHER
  • 8. 8 BUGFEATURE REQUEST • the developer has to manually analyse the unstructured groups of reviews, understand what they talk about and extract actionable change tasks • what does a particular cluster talk about? Does it talk about the UI or about the performance of the app, etc.?
  • 9. 9 What are the mobile specific topics users talk about in their reviews?
  • 10. 10 manual analysis of ~1600 reviews
  • 11. 11 Hmmm... Mm No… This is IT Nope Nopity nope • not all reviews are useful
  • 12. 12 Hmmm... Mm No… This is IT Nope Nopity nope Sucks Way to many errors 0 stars Garbage. problem bro Garbage Bla bla bla • not all reviews are useful • some are even offensive
  • 13. 13 Pretty close to perfect, this app is way better than any comic book reader I've ever used. It's small, it operates fast, and the interface is incredibly clean and simple. • others can provide valuable information for the developer
  • 14. 14 Pretty close to perfect, this app is way better than any comic book reader I've ever used. It's small, it operates fast, and the interface is incredibly clean and simple. Resources Usage
  • 15. 15 For info (in case dev not already aware!), there is a graphical glitch when scrolling output in marshmallow on a nexus 5. Compatibility Usage Complaint
  • 16. 16 Building the taxonomy • feature extraction: TF-IDF scores and 2 and 3- grams counts Content analysis in 2 passes: • start with an empty list of categories • analyse each review and add a new category (including definition and keywords) if necessary • label the review with all the matching categories • second pass: revisit the list of reviews and label them with the appropriate categories
  • 17. 17 Category Description Compatibility mentions the OS, mobile device or a specific hardware component. Usage talks about the UI or the usability of the app. Resources mentions the app’s influence on the battery and memory usage or the performance of the app/phone. Pricing statements mentioning the license model or the price of the app. Protection statements referring to security or privacy issues. Complaint the user reports or complains about an issue with the app. High Level Taxonomy
  • 19. 19 Liked it and worked very well in lollipop, but not MM The plugins don't refresh, manual navigation to next image doesn't work. Some plugins give error. Altogether seems broken after MM update on Note 4. Compatibility
  • 20. 20 Liked it and worked very well in lollipop, but not MM The plugins don't refresh, manual navigation to next image doesn't work. Some plugins give error. Altogether seems broken after MM update on Note 4. Compatibility Device Android Version
  • 21. 21 High Level Low Level Categories Compatibility Device, Android Version, Hardware Usage App Usability, UI Resources Performance, Battery, Memory Pricing Licensing, Price Protection Security, Privacy Low Level Taxonomy
  • 23. 23 Gradient Boosted Trees Training Preprocessing & Feature Extraction Multi-label Classification ML Approach
  • 24. 24 Preprocessing & Feature Extraction • preprocessing: stop words removal and stemming • feature extraction: TF-IDF scores and 2 and 3- grams counts
  • 25. 25 Training • feature extraction: TF-IDF scores and 2 and 3- grams counts • one-vs-all strategy: separate classifier for each high and low level category (18 in total) • used the Gradient Boosted Trees model
  • 26. 26 Multi-label Classification Preprocessing Feature Extraction Classification High & Low Level Categories ++ ++ … Battery UI Complaint Resources Usage
  • 27. 27 Example • feature extraction: TF-IDF scores and 2 and 3- grams counts RQ2: Does our approach correctly recommend the software artifacts that need to be modified in order to handle user requests and complaints? • 752 user reviews from our dataset belong to AcDisplay • analyse Compatibility and Complaint reviews (61 reviews) • Complaint and Android Version (22 reviews)
  • 28. 28 Example • feature extraction: TF-IDF scores and 2 and 3- grams counts “Good but has some issues with Marshmallow I used this on my old phone and if was flawless and I loved it. I noticed that sometimes when I had AcDisplay activated I would not be able to use the fingerprint sensor even after I unlocked AcDisplay and had to enter a password. This is very frustrating so I cannot use AcDisplay.” “Love the design I love the app. It’s super sleek and nice. But ever since my phone updated to marshmallow it’s stopped working. Hope it comes back soon.” “On Marshmallow, the screen is buggy and sometimes shows the notification shade.”
  • 29. 29 • feature extraction: TF-IDF scores and 2 and 3- grams counts • can we link reviews to the related source code? • IR methods based on the VSM (hard task: the vocabulary used by reviews and source code is different) • use additional Android project specific information (e.g. UI functionality is implemented in Activity classes) Source Code Localisation
  • 30. 30 Source Code Localisation Android Project Structure Info IR - VSM Software Artifacts App’s Source Code User Reviews
  • 31. 31 Evaluation • feature extraction: TF-IDF scores and 2 and 3- grams counts RQ1: To what extent does our approach organise reviews according to meaningful maintenance and evolution tasks for developers? RQ2: Does our approach correctly recommend the software artifacts that need to be modified in order to handle user requests and complaints?
  • 33. 33 Study RQ1 • feature extraction: TF-IDF scores and 2 and 3- grams counts • ~7800 user reviews from 39 apps
  • 34. 34 Study RQ1 • feature extraction: TF-IDF scores and 2 and 3- grams counts • 2 external evaluators • evaluate 200 reviews for each category (3600 total)
  • 35. 35 Results RQ1 High Level Category Precision Recall F1 Score Compatibility 71% 97% 82% Usage 89% 94% 91% Resources 79% 99% 88% Pricing 85% 97% 90% Protection 89% 98% 93% Complaint 85% 80% 82%
  • 36. 36 Results RQ1 High Level Category Low Level Category Precision Recall F1 Score Compatibility Device OS Version Hardware 85% 89% 61% 98% 86% 95% 91% 87% 74% Usage App Usability UI 92% 83% 91% 93% 91% 88% Resources Performance Battery Memory 64% 78% 68% 97% 95% 95% 77% 86% 79% Pricing Licensing Price 91% 85% 98% 96% 94% 90% Protection Security Privacy 87% 83% 98% 96% 92% 89%
  • 37. 37 Results RQ1 Our approach is able to classify reviews with high precision and recall according to the mobile specific topics we derived. The most important categories are Usage, Resources and Compatibility.
  • 38. 38 Study RQ2 • 1 external evaluator • 91 user reviews from 2 apps
  • 39. 39 Results RQ2 • feature extraction: TF-IDF scores and 2 and 3- grams counts Quality of Reviews Precision Recall F1 Score Difficult to Link 41% 83% 55% Easier to Link 52% 79% 63% All 51% 79% 62%
  • 40. 40 Results RQ2 Our approach achieves promising results in recommending related software artifacts for specific user reviews, furthermore better quality reviews are easier to link than lower quality ones.
  • 41. 41 Conclusion & Future Work • reviews can be classified with high precision and recall using machine learning according to mobile specific topics • linking reviews to source code using textual similarity based methods is difficult • future work: summarise reviews, improve localisation (static analysis)
  • 42. 42 Discussion What mechanisms can we adopt for enabling a reliable and practical solution for code localisation?