SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
Delft University of Technology
ICSE 2017
International Conference on
Software Engineering UNIVERSITÀ DEGLI STUDI
DI SALERNO
Recommending and Localizing
Change Requests
for Mobile Apps based on User Reviews
Fabio Palomba1, Pasquale Salza2, Adelina Ciurumelea3, Sebastiano Panichella3
Harald Gall3, Filomena Ferrucci2, Andrea De Lucia2
1Delft University of Technology, 2University of Salerno, 3University of Zurich
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Apps everywhere
Over 2 billions people rely on 5
millions of mobile apps for
social and emergency
connectivity
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Apps are software too
Short period releases
User reviews on the stores
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
User reviews are useful…
Other than non informative content, they contain
important pieces of information
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Reading all of them is an effort-prone task
…but they are too many!
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
The State-of-the-Art
But, it is not possible to:
1. Extract only the useful information hidden behind
different user reviews
2. Group together fine-grained information
3. Understand the actual impact of each change
request
SURF CLAP
Summarizes user reviews Prioritizes user reviews
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
ChangeAdvisor
Transforms user reviews in change requests
and localises them within the source code
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
ChangeAdvisor
JAVA
JAVA
JAVA
JAVA
Parser
ARdoc
HDP-LDADice Indexer
Source code
Feedback clusters
Code components
Filter
Feedback
preprocessing
Source code
preprocessing
Problem discovery and
Feature requests
Classified feedback
Ranked list
(cluster/component)
Reviews
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
JAVA
JAVA
JAVA
JAVA
Parser
ARdoc
Source code Code components
Filter
Source code
preprocessing
Classified feedbackReviews
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Extraction of a bag of words for each class
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
JAVA
JAVA
JAVA
JAVA
Parser
ARdoc
Dice Indexer
Source code Code components
S
pr
Classified feedbackReviews
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Extraction and classification of user feedback
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
HDice Indexer
Code components
Filter
F
pre
Source code
preprocessing
Problem discovery and
Feature requests
Classified feedback
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Filtering of change requests
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
HDP-LDAexer
Feedback clusters
Filter
Feedback
preprocessing
Source code
preprocessing
Problem discovery and
Feature requests
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Grouping similar
user needs
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
ARdoc
Dice Indexer
Feedback clusters
Filter
Problem discovery and
Feature requests
Classified feedback
Ranked list
(cluster/component)
iews
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Code components
Linking feedback to components
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Empirical Study
10 open source apps
13,510 feedback
4,138 classes
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
RQ1
Does ChangeAdvisor identify cohesive
user feedback clusters representing
related change requests?
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Clusters evaluation
We asked the experts to rate the
cohesiveness of clusters using a
Likert scale
5+ years experience
4
3
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Results
Overall median = 4
Overall max = 5
8.2 clusters/app
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
RQ2
Does ChangeAdvisor correctly
link user feedback clusters to
source code components and
how does it compare with the
state-of-the-art?
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Oracle definition
We asked the experts to define the
link between clusters and classes
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Links evaluation
We measured the
accuracy of
ChangeAdvisor using
precision and recall
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Comparison
We exploited BLUiR
that links bug reports
to classes using the
Vector Space Model
BLUiR
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Results
ChangeAdvisor
Precision = 81 %
Recall = 70 %
BLUiR
Precision = 34 %
Recall = 32 %
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Overlap analysis
ChangeAdvisor BLUiR
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Number of links correctly identified by one approach and
missed by the other
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Overlap analysis
ChangeAdvisor
BLUiR
72 % 5 %23 %
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Are the suggestions
provided by ChangeAdvisor
actually useful for
developers?
RQ3
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Surveying developers
Cohesiveness. How well are the user
reviews grouped according to the
number of source code components
that need to be modified?
Precision. How well do the proposed
classes match the actual set of those
needed to be changed in order to satisfy
the user requests?
Completeness. Evaluate the
completeness of the set of classes
suggested compared to the actual set
of those needed to be modified
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Results
Cohesiveness = high Precision = very high Completeness = very high
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Results
I know what changes I
have to make in my app
when implementing a
change. However, a tool
like this may help in
quantifying the number of
classes to be modified.
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Future directions
• Extend the study involving
more apps and developers
• Improve our approach to
prioritize user feedback
based on the number of
classes to be modified
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
One more thing…
http://bit.ly/2r5GzMq
ChangeAdvisor
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
NLP steps
1. Spelling correction
2. Contractions expansion
3. Nouns and verbs filtering
4. Tokenization
5. Singularization
6. Stopword removal
7. Stemming
8. Repetitions removal
9. Short tokens removal
10.Short tokens removal
11.Short documents
removal
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Dice similarity
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Characteristics of the apps in the dataset
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Evaluation of the clusters cohesiveness
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
ChangeAdvisor vs BLUiR
May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews
ICSE 2017
Surveys results

Más contenido relacionado

Was ist angesagt?

Studying the Dialogue Between Users and Developers of Free Apps in the Google...
Studying the Dialogue Between Users and Developers of Free Apps in the Google...Studying the Dialogue Between Users and Developers of Free Apps in the Google...
Studying the Dialogue Between Users and Developers of Free Apps in the Google...SAIL_QU
 
Seven Steps to Remove Barriers and Accelerate Mobile Testing
Seven Steps to Remove Barriers and Accelerate Mobile TestingSeven Steps to Remove Barriers and Accelerate Mobile Testing
Seven Steps to Remove Barriers and Accelerate Mobile TestingKeynote Mobile Testing
 
Future Of Software Testing
Future Of Software TestingFuture Of Software Testing
Future Of Software Testing99tests
 
G6F16S14 usability test report
G6F16S14 usability test reportG6F16S14 usability test report
G6F16S14 usability test reportLorena Ovalle
 
Mobile App Testing on Cloud
Mobile App Testing on CloudMobile App Testing on Cloud
Mobile App Testing on CloudpCloudy
 
Restoration Hardware Case Study
Restoration Hardware Case StudyRestoration Hardware Case Study
Restoration Hardware Case Study99tests
 
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. ForresterAccelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. ForresterSauce Labs
 

Was ist angesagt? (10)

Studying the Dialogue Between Users and Developers of Free Apps in the Google...
Studying the Dialogue Between Users and Developers of Free Apps in the Google...Studying the Dialogue Between Users and Developers of Free Apps in the Google...
Studying the Dialogue Between Users and Developers of Free Apps in the Google...
 
AppGrooves
AppGrooves AppGrooves
AppGrooves
 
Apps development company new york
Apps development company new yorkApps development company new york
Apps development company new york
 
Seven Steps to Remove Barriers and Accelerate Mobile Testing
Seven Steps to Remove Barriers and Accelerate Mobile TestingSeven Steps to Remove Barriers and Accelerate Mobile Testing
Seven Steps to Remove Barriers and Accelerate Mobile Testing
 
App review rubric
App review rubricApp review rubric
App review rubric
 
Future Of Software Testing
Future Of Software TestingFuture Of Software Testing
Future Of Software Testing
 
G6F16S14 usability test report
G6F16S14 usability test reportG6F16S14 usability test report
G6F16S14 usability test report
 
Mobile App Testing on Cloud
Mobile App Testing on CloudMobile App Testing on Cloud
Mobile App Testing on Cloud
 
Restoration Hardware Case Study
Restoration Hardware Case StudyRestoration Hardware Case Study
Restoration Hardware Case Study
 
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. ForresterAccelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
 

Ähnlich wie Recommending and localizing change requests for mobile apps based on user reviews

SUGBLR - Dependency injection in sitecore
SUGBLR - Dependency injection in sitecoreSUGBLR - Dependency injection in sitecore
SUGBLR - Dependency injection in sitecoreAnindita Bhattacharya
 
Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...
Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...
Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...Mahsa H. Sadi
 
App dev and partner ecosystem for pink social connections 2017
App dev and partner ecosystem for pink   social connections 2017App dev and partner ecosystem for pink   social connections 2017
App dev and partner ecosystem for pink social connections 2017Heath McCarthy
 
Turning the IBM Collaboration Ecosystem Pink
Turning the IBM Collaboration Ecosystem PinkTurning the IBM Collaboration Ecosystem Pink
Turning the IBM Collaboration Ecosystem PinkLetsConnect
 
App conference
App conferenceApp conference
App conferenceTransround
 
Approaches and Challenges of Software Reusability: A Review of Research Liter...
Approaches and Challenges of Software Reusability: A Review of Research Liter...Approaches and Challenges of Software Reusability: A Review of Research Liter...
Approaches and Challenges of Software Reusability: A Review of Research Liter...IRJET Journal
 
UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)
UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)
UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)Gabriel Soares
 
3 Steps to Expand DevOps and Automation Throughout the Enterprise
3 Steps to Expand DevOps and Automation Throughout the Enterprise3 Steps to Expand DevOps and Automation Throughout the Enterprise
3 Steps to Expand DevOps and Automation Throughout the EnterprisePuppet
 
Mobile marketing techniques
Mobile marketing techniquesMobile marketing techniques
Mobile marketing techniquesTineke Reitsma
 
Mobile App Developers Dubai
Mobile App Developers DubaiMobile App Developers Dubai
Mobile App Developers DubaiSafcodes LLC
 
Android Interview Questions And Answers | Android Tutorial | Android Online T...
Android Interview Questions And Answers | Android Tutorial | Android Online T...Android Interview Questions And Answers | Android Tutorial | Android Online T...
Android Interview Questions And Answers | Android Tutorial | Android Online T...Edureka!
 
Scaling DevOps - delivering on the promise of business velocity and quality
Scaling DevOps - delivering on the promise of business velocity and qualityScaling DevOps - delivering on the promise of business velocity and quality
Scaling DevOps - delivering on the promise of business velocity and qualityXebiaLabs
 
Iceemas 119- state of art of metrics of aspect oriented programming
Iceemas 119- state of art of metrics of aspect oriented programmingIceemas 119- state of art of metrics of aspect oriented programming
Iceemas 119- state of art of metrics of aspect oriented programmingMazen Ghareb
 
Agile IT: Modern Architecture for Rapid Mobile App Development
Agile IT: Modern Architecture for Rapid Mobile App DevelopmentAgile IT: Modern Architecture for Rapid Mobile App Development
Agile IT: Modern Architecture for Rapid Mobile App DevelopmentAnyPresence
 
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testingATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testingAgile Testing Alliance
 
How to optimize the mobile experience - with insights
How to optimize the mobile experience - with insightsHow to optimize the mobile experience - with insights
How to optimize the mobile experience - with insightsMobtimizers
 
SLAS 2017 - "Multiple Research Platforms: One Single Data Sharing Portal"
SLAS 2017 - "Multiple Research Platforms:  One Single Data Sharing Portal"SLAS 2017 - "Multiple Research Platforms:  One Single Data Sharing Portal"
SLAS 2017 - "Multiple Research Platforms: One Single Data Sharing Portal"CSols, Inc.
 
Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...
Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...
Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...modolabs
 
Workshop on android apps development
Workshop on android apps developmentWorkshop on android apps development
Workshop on android apps developmentUniversity of Potsdam
 

Ähnlich wie Recommending and localizing change requests for mobile apps based on user reviews (20)

SUGBLR - Dependency injection in sitecore
SUGBLR - Dependency injection in sitecoreSUGBLR - Dependency injection in sitecore
SUGBLR - Dependency injection in sitecore
 
Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...
Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...
Designing Software Ecosystems - How to Develop Sustainable Collaborations? - ...
 
App dev and partner ecosystem for pink social connections 2017
App dev and partner ecosystem for pink   social connections 2017App dev and partner ecosystem for pink   social connections 2017
App dev and partner ecosystem for pink social connections 2017
 
Turning the IBM Collaboration Ecosystem Pink
Turning the IBM Collaboration Ecosystem PinkTurning the IBM Collaboration Ecosystem Pink
Turning the IBM Collaboration Ecosystem Pink
 
App conference
App conferenceApp conference
App conference
 
Approaches and Challenges of Software Reusability: A Review of Research Liter...
Approaches and Challenges of Software Reusability: A Review of Research Liter...Approaches and Challenges of Software Reusability: A Review of Research Liter...
Approaches and Challenges of Software Reusability: A Review of Research Liter...
 
UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)
UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)
UX, Conversion: Optimization of a medical app (Aptus Health - Appdays 2017)
 
3 Steps to Expand DevOps and Automation Throughout the Enterprise
3 Steps to Expand DevOps and Automation Throughout the Enterprise3 Steps to Expand DevOps and Automation Throughout the Enterprise
3 Steps to Expand DevOps and Automation Throughout the Enterprise
 
Mobile marketing techniques
Mobile marketing techniquesMobile marketing techniques
Mobile marketing techniques
 
Mobile App Developers Dubai
Mobile App Developers DubaiMobile App Developers Dubai
Mobile App Developers Dubai
 
Android Interview Questions And Answers | Android Tutorial | Android Online T...
Android Interview Questions And Answers | Android Tutorial | Android Online T...Android Interview Questions And Answers | Android Tutorial | Android Online T...
Android Interview Questions And Answers | Android Tutorial | Android Online T...
 
Scaling DevOps - delivering on the promise of business velocity and quality
Scaling DevOps - delivering on the promise of business velocity and qualityScaling DevOps - delivering on the promise of business velocity and quality
Scaling DevOps - delivering on the promise of business velocity and quality
 
Iceemas 119- state of art of metrics of aspect oriented programming
Iceemas 119- state of art of metrics of aspect oriented programmingIceemas 119- state of art of metrics of aspect oriented programming
Iceemas 119- state of art of metrics of aspect oriented programming
 
Agile IT: Modern Architecture for Rapid Mobile App Development
Agile IT: Modern Architecture for Rapid Mobile App DevelopmentAgile IT: Modern Architecture for Rapid Mobile App Development
Agile IT: Modern Architecture for Rapid Mobile App Development
 
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testingATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
 
How to optimize the mobile experience - with insights
How to optimize the mobile experience - with insightsHow to optimize the mobile experience - with insights
How to optimize the mobile experience - with insights
 
SLAS 2017 - "Multiple Research Platforms: One Single Data Sharing Portal"
SLAS 2017 - "Multiple Research Platforms:  One Single Data Sharing Portal"SLAS 2017 - "Multiple Research Platforms:  One Single Data Sharing Portal"
SLAS 2017 - "Multiple Research Platforms: One Single Data Sharing Portal"
 
Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...
Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...
Kurogo Higher Ed Mobile Conference 2017: Streamlining The Mobile Experience: ...
 
So you want to build an app
So you want to build an appSo you want to build an app
So you want to build an app
 
Workshop on android apps development
Workshop on android apps developmentWorkshop on android apps development
Workshop on android apps development
 

Mehr von Sebastiano Panichella

Automated Identification and Qualitative Characterization of Safety Concerns ...
Automated Identification and Qualitative Characterization of Safety Concerns ...Automated Identification and Qualitative Characterization of Safety Concerns ...
Automated Identification and Qualitative Characterization of Safety Concerns ...Sebastiano Panichella
 
The 2nd Intl. Workshop on NL-based Software Engineering
The 2nd Intl. Workshop on NL-based Software EngineeringThe 2nd Intl. Workshop on NL-based Software Engineering
The 2nd Intl. Workshop on NL-based Software EngineeringSebastiano Panichella
 
The 16th Intl. Workshop on Search-Based and Fuzz Testing
The 16th Intl. Workshop on Search-Based and Fuzz TestingThe 16th Intl. Workshop on Search-Based and Fuzz Testing
The 16th Intl. Workshop on Search-Based and Fuzz TestingSebastiano Panichella
 
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...Sebastiano Panichella
 
Testing and Development Challenges for Complex Cyber-Physical Systems: Insi...
Testing and Development Challenges for  Complex Cyber-Physical Systems:  Insi...Testing and Development Challenges for  Complex Cyber-Physical Systems:  Insi...
Testing and Development Challenges for Complex Cyber-Physical Systems: Insi...Sebastiano Panichella
 
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...Sebastiano Panichella
 
COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...
COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...
COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...Sebastiano Panichella
 
Exposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play AppsExposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play AppsSebastiano Panichella
 
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...Sebastiano Panichella
 
Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22Sebastiano Panichella
 
"An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
 "An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.  "An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
"An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021. Sebastiano Panichella
 
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...Sebastiano Panichella
 
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Sebastiano Panichella
 
A Framework for Multi-source Studies based on Unstructured Data.
A Framework for Multi-source Studies based on Unstructured Data.A Framework for Multi-source Studies based on Unstructured Data.
A Framework for Multi-source Studies based on Unstructured Data.Sebastiano Panichella
 
Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...
Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...
Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...Sebastiano Panichella
 
Requirements-Collector: Automating Requirements Specification from Elicitatio...
Requirements-Collector: Automating Requirements Specification from Elicitatio...Requirements-Collector: Automating Requirements Specification from Elicitatio...
Requirements-Collector: Automating Requirements Specification from Elicitatio...Sebastiano Panichella
 
Unit Testing Tool Competition-Eighth Round
Unit Testing Tool Competition-Eighth RoundUnit Testing Tool Competition-Eighth Round
Unit Testing Tool Competition-Eighth RoundSebastiano Panichella
 
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...Sebastiano Panichella
 

Mehr von Sebastiano Panichella (20)

Automated Identification and Qualitative Characterization of Safety Concerns ...
Automated Identification and Qualitative Characterization of Safety Concerns ...Automated Identification and Qualitative Characterization of Safety Concerns ...
Automated Identification and Qualitative Characterization of Safety Concerns ...
 
The 2nd Intl. Workshop on NL-based Software Engineering
The 2nd Intl. Workshop on NL-based Software EngineeringThe 2nd Intl. Workshop on NL-based Software Engineering
The 2nd Intl. Workshop on NL-based Software Engineering
 
The 16th Intl. Workshop on Search-Based and Fuzz Testing
The 16th Intl. Workshop on Search-Based and Fuzz TestingThe 16th Intl. Workshop on Search-Based and Fuzz Testing
The 16th Intl. Workshop on Search-Based and Fuzz Testing
 
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
 
Testing and Development Challenges for Complex Cyber-Physical Systems: Insi...
Testing and Development Challenges for  Complex Cyber-Physical Systems:  Insi...Testing and Development Challenges for  Complex Cyber-Physical Systems:  Insi...
Testing and Development Challenges for Complex Cyber-Physical Systems: Insi...
 
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
 
COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...
COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...
COSMOS: DevOps for complex cyber-physical systems (H2020 Project) - WASOS wor...
 
Exposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play AppsExposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play Apps
 
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective T...
 
Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22
 
NLBSE’22: Tool Competition
NLBSE’22: Tool CompetitionNLBSE’22: Tool Competition
NLBSE’22: Tool Competition
 
"An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
 "An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.  "An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
"An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
 
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
 
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
 
A Framework for Multi-source Studies based on Unstructured Data.
A Framework for Multi-source Studies based on Unstructured Data.A Framework for Multi-source Studies based on Unstructured Data.
A Framework for Multi-source Studies based on Unstructured Data.
 
Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...
Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...
Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfall...
 
Requirements-Collector: Automating Requirements Specification from Elicitatio...
Requirements-Collector: Automating Requirements Specification from Elicitatio...Requirements-Collector: Automating Requirements Specification from Elicitatio...
Requirements-Collector: Automating Requirements Specification from Elicitatio...
 
Unit Testing Tool Competition-Eighth Round
Unit Testing Tool Competition-Eighth RoundUnit Testing Tool Competition-Eighth Round
Unit Testing Tool Competition-Eighth Round
 
Cultural Exchange - ICSE 2020
Cultural Exchange - ICSE 2020Cultural Exchange - ICSE 2020
Cultural Exchange - ICSE 2020
 
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...
 

Último

Retail marketing Supply chain management SLIDESHARE.pptx
Retail marketing Supply chain management SLIDESHARE.pptxRetail marketing Supply chain management SLIDESHARE.pptx
Retail marketing Supply chain management SLIDESHARE.pptxBharathBunny10
 
DAY 06 A Revelation 03-10-2024 PpPT.pptx
DAY 06 A Revelation 03-10-2024 PpPT.pptxDAY 06 A Revelation 03-10-2024 PpPT.pptx
DAY 06 A Revelation 03-10-2024 PpPT.pptxFamilyWorshipCenterD
 
Self Editing Your Novel Part 3: Who's Telling This Story?
Self Editing Your Novel Part 3: Who's Telling This Story?Self Editing Your Novel Part 3: Who's Telling This Story?
Self Editing Your Novel Part 3: Who's Telling This Story?Beth Jusino
 
110 Philippines. quiz bee Power PoInt Presentation
110 Philippines. quiz bee Power PoInt Presentation110 Philippines. quiz bee Power PoInt Presentation
110 Philippines. quiz bee Power PoInt PresentationNorHaiFatun
 
LAUNCH: Intersections between violence against children and violence against ...
LAUNCH: Intersections between violence against children and violence against ...LAUNCH: Intersections between violence against children and violence against ...
LAUNCH: Intersections between violence against children and violence against ...UNICEF Office of Research - Innocenti
 
wonder woman:quiz on female achievements
wonder woman:quiz on female achievementswonder woman:quiz on female achievements
wonder woman:quiz on female achievementsRemya Roshni
 
2024 QRC PLM Recruitment Praesentation.pdf
2024 QRC PLM Recruitment Praesentation.pdf2024 QRC PLM Recruitment Praesentation.pdf
2024 QRC PLM Recruitment Praesentation.pdfJoerg Speikamp
 
Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...
Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...
Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...Kayode Fayemi
 
BaruwaRaquella_Retail Store Presentation.pptx
BaruwaRaquella_Retail Store Presentation.pptxBaruwaRaquella_Retail Store Presentation.pptx
BaruwaRaquella_Retail Store Presentation.pptxRaquellaBaruwa
 
Evaluating LLM Models for Production Systems Methods and Practices -
Evaluating LLM Models for Production Systems Methods and Practices -Evaluating LLM Models for Production Systems Methods and Practices -
Evaluating LLM Models for Production Systems Methods and Practices -alopatenko
 

Último (12)

Retail marketing Supply chain management SLIDESHARE.pptx
Retail marketing Supply chain management SLIDESHARE.pptxRetail marketing Supply chain management SLIDESHARE.pptx
Retail marketing Supply chain management SLIDESHARE.pptx
 
DAY 06 A Revelation 03-10-2024 PpPT.pptx
DAY 06 A Revelation 03-10-2024 PpPT.pptxDAY 06 A Revelation 03-10-2024 PpPT.pptx
DAY 06 A Revelation 03-10-2024 PpPT.pptx
 
Tethex Cards - complete presentation in English
Tethex Cards - complete presentation in EnglishTethex Cards - complete presentation in English
Tethex Cards - complete presentation in English
 
Self Editing Your Novel Part 3: Who's Telling This Story?
Self Editing Your Novel Part 3: Who's Telling This Story?Self Editing Your Novel Part 3: Who's Telling This Story?
Self Editing Your Novel Part 3: Who's Telling This Story?
 
110 Philippines. quiz bee Power PoInt Presentation
110 Philippines. quiz bee Power PoInt Presentation110 Philippines. quiz bee Power PoInt Presentation
110 Philippines. quiz bee Power PoInt Presentation
 
LAUNCH: Intersections between violence against children and violence against ...
LAUNCH: Intersections between violence against children and violence against ...LAUNCH: Intersections between violence against children and violence against ...
LAUNCH: Intersections between violence against children and violence against ...
 
wonder woman:quiz on female achievements
wonder woman:quiz on female achievementswonder woman:quiz on female achievements
wonder woman:quiz on female achievements
 
2024 QRC PLM Recruitment Praesentation.pdf
2024 QRC PLM Recruitment Praesentation.pdf2024 QRC PLM Recruitment Praesentation.pdf
2024 QRC PLM Recruitment Praesentation.pdf
 
NOC_SXSW_Non-ObviousThinking_2024_SLIDES.pptx
NOC_SXSW_Non-ObviousThinking_2024_SLIDES.pptxNOC_SXSW_Non-ObviousThinking_2024_SLIDES.pptx
NOC_SXSW_Non-ObviousThinking_2024_SLIDES.pptx
 
Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...
Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...
Leadership in Difficult Times- Strategies for Overcoming Challenges - Reflect...
 
BaruwaRaquella_Retail Store Presentation.pptx
BaruwaRaquella_Retail Store Presentation.pptxBaruwaRaquella_Retail Store Presentation.pptx
BaruwaRaquella_Retail Store Presentation.pptx
 
Evaluating LLM Models for Production Systems Methods and Practices -
Evaluating LLM Models for Production Systems Methods and Practices -Evaluating LLM Models for Production Systems Methods and Practices -
Evaluating LLM Models for Production Systems Methods and Practices -
 

Recommending and localizing change requests for mobile apps based on user reviews

  • 1. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews Delft University of Technology ICSE 2017 International Conference on Software Engineering UNIVERSITÀ DEGLI STUDI DI SALERNO Recommending and Localizing Change Requests for Mobile Apps based on User Reviews Fabio Palomba1, Pasquale Salza2, Adelina Ciurumelea3, Sebastiano Panichella3 Harald Gall3, Filomena Ferrucci2, Andrea De Lucia2 1Delft University of Technology, 2University of Salerno, 3University of Zurich
  • 2. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Apps everywhere Over 2 billions people rely on 5 millions of mobile apps for social and emergency connectivity
  • 3. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Apps are software too Short period releases User reviews on the stores
  • 4. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 User reviews are useful… Other than non informative content, they contain important pieces of information
  • 5. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Reading all of them is an effort-prone task …but they are too many!
  • 6. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 The State-of-the-Art But, it is not possible to: 1. Extract only the useful information hidden behind different user reviews 2. Group together fine-grained information 3. Understand the actual impact of each change request SURF CLAP Summarizes user reviews Prioritizes user reviews
  • 7. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 ChangeAdvisor Transforms user reviews in change requests and localises them within the source code
  • 8. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 ChangeAdvisor JAVA JAVA JAVA JAVA Parser ARdoc HDP-LDADice Indexer Source code Feedback clusters Code components Filter Feedback preprocessing Source code preprocessing Problem discovery and Feature requests Classified feedback Ranked list (cluster/component) Reviews May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017
  • 9. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 JAVA JAVA JAVA JAVA Parser ARdoc Source code Code components Filter Source code preprocessing Classified feedbackReviews May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Extraction of a bag of words for each class
  • 10. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 JAVA JAVA JAVA JAVA Parser ARdoc Dice Indexer Source code Code components S pr Classified feedbackReviews May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Extraction and classification of user feedback
  • 11. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 HDice Indexer Code components Filter F pre Source code preprocessing Problem discovery and Feature requests Classified feedback May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Filtering of change requests
  • 12. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 HDP-LDAexer Feedback clusters Filter Feedback preprocessing Source code preprocessing Problem discovery and Feature requests May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Grouping similar user needs
  • 13. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 ARdoc Dice Indexer Feedback clusters Filter Problem discovery and Feature requests Classified feedback Ranked list (cluster/component) iews May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Code components Linking feedback to components
  • 14. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Empirical Study 10 open source apps 13,510 feedback 4,138 classes
  • 15. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 RQ1 Does ChangeAdvisor identify cohesive user feedback clusters representing related change requests?
  • 16. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Clusters evaluation We asked the experts to rate the cohesiveness of clusters using a Likert scale 5+ years experience 4 3
  • 17. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Results Overall median = 4 Overall max = 5 8.2 clusters/app
  • 18. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 RQ2 Does ChangeAdvisor correctly link user feedback clusters to source code components and how does it compare with the state-of-the-art?
  • 19. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Oracle definition We asked the experts to define the link between clusters and classes
  • 20. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Links evaluation We measured the accuracy of ChangeAdvisor using precision and recall
  • 21. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Comparison We exploited BLUiR that links bug reports to classes using the Vector Space Model BLUiR
  • 22. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Results ChangeAdvisor Precision = 81 % Recall = 70 % BLUiR Precision = 34 % Recall = 32 % May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017
  • 23. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Overlap analysis ChangeAdvisor BLUiR May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Number of links correctly identified by one approach and missed by the other
  • 24. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Overlap analysis ChangeAdvisor BLUiR 72 % 5 %23 % May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017
  • 25. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Are the suggestions provided by ChangeAdvisor actually useful for developers? RQ3
  • 26. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Surveying developers Cohesiveness. How well are the user reviews grouped according to the number of source code components that need to be modified? Precision. How well do the proposed classes match the actual set of those needed to be changed in order to satisfy the user requests? Completeness. Evaluate the completeness of the set of classes suggested compared to the actual set of those needed to be modified
  • 27. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Results Cohesiveness = high Precision = very high Completeness = very high
  • 28. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Results I know what changes I have to make in my app when implementing a change. However, a tool like this may help in quantifying the number of classes to be modified.
  • 29. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Future directions • Extend the study involving more apps and developers • Improve our approach to prioritize user feedback based on the number of classes to be modified
  • 30. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 One more thing… http://bit.ly/2r5GzMq ChangeAdvisor
  • 31. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 NLP steps 1. Spelling correction 2. Contractions expansion 3. Nouns and verbs filtering 4. Tokenization 5. Singularization 6. Stopword removal 7. Stemming 8. Repetitions removal 9. Short tokens removal 10.Short tokens removal 11.Short documents removal
  • 32. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Dice similarity
  • 33. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Characteristics of the apps in the dataset
  • 34. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Evaluation of the clusters cohesiveness
  • 35. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 ChangeAdvisor vs BLUiR
  • 36. May 25th, 2017Recommending and Localizing Change Requests for Mobile Apps based on User Reviews ICSE 2017 Surveys results