SNSF Project - SURF MobileAppsData

Web page mainly maintained by

Dr. Panichella, Grano, Vassallo and Prof. Gall.

Contacts:

PI: Dr. Sebastiano PanichellaProf. Dr. Harald Gall

PhD Students:

Giovanni Grano 

Carmine Vassallo

In this page we report the (1) Work Packages (WPs) of the proposal (linking the papers to the WPs), (2) report the papers (and the associated slides), (3) tools, and datasets.

 

General Achievements of the PI according to the [Results reported by the JSS journal]:

During the period of funding, Dr. Panichella was selected as one of thethe top-20 (second in Switzerland) Most Active Early Stage Researchers in Software Engineering (SE). We this opportunity to thank the SNF for supporting our research in SE and mobile computing with the project "SURF-MobileAppsData SNF project".

 

 

Description of the project:

The SURF-MobileAppsData project will investigate concepts, techniques, and tools for mining mobile apps data available in app stores to support software engineers in the maintenance and evolution activities for these apps. In particular, the goal of mining data of mobile apps is to build an analysis framework and a feedback-driven environment to help developers to build better mobile applications by supporting them to (i) shorten the development life cycle, and (ii) to accommodate actual user needs. Hence, the main purpose of the SURF-MobileAppsData project is to surf the large amount of data that characterize any app in an app store with the aim of substantially advancing the current state-of-the-art in mining mobile apps in several novel directions: by providing a multi-level, multi-source feedback mechanism for developers and users; by devising means for multi-source interlinking of user requests and actual changes; and by better wiring up feature development and bug fixing.

Duration: September 2016 - August 2019

Funding: SNF (Total Costs: 349.926 CHF)

 

(1) Work packages (WPs):

Multi-source Interlinking Mechanism. This track focuses on using the novel types of data created through the first track to conceive novel techniques to interlink customers requests (the implementation of new features, bug fixing, or the improvement of existing features) and the source code entities (or components). Its goal is to defined a new mechanism that (i) links maintenance tasks mined from user feedback in app stores with the source code entities (or components) that should be changed to answer such requests; (ii) the interlinking between code concerns highlighted in the previous track and the software artifacts that should be actually changed to fix these problems.

Paper linked to this WP: [C23], [C24], [C26], [C28], [C32], 

Spotting Security Risk, Legal Issues & Other Concerns. This track focuses on using the novel types of data created thought the previous two tracks in order to support developers to prevent the delivery of low-quality apps by (i) directly spotting vulnerabilities of mobile software (before or after its delivery) and (ii) by identifying and suggesting to developers the legal issues related to software mobility that may occur in mobile applications. Moreover, we develop novel strategies based on dynamic and static analysis to suggest possible solutions directly consumable by developers to handle the recurrent memory and energy usage issues (whose related the source code entities are located in the previous track).

Paper linked to this WP: [C27], [C34], [C35], [C36], [40]

Linking Developers & Feedback-mechanisms. This track focuses on using the novel types of data created through all the previous tracks for the depiction of historical facts coming from diverse sources. The information will be described and presented in a developer-centric way, depending on the role played by each mobile developer (tester, architect etc.), and the task to perform in the context of mobile software development (e.g. testing the app, perform bug fixing or a feature enhancement etc.). In this track we also plan to define a learning approach that determines which kind of user feedback were and were not addressed by developers in the past; then, these historical information will be used in order to suggest and present earlier to the developers those incoming user-feedback that are more likely to be addressed.

Paper linked to this WP: [C31], [C33], [J6], [39], [41], [42], [43], [44], [J7]

A Feedback-mechanism for Users. In this last track we are interested in enabling a feedback mechanism for the users, which might be interested in being alerted when developers are performing maintenance and development tasks. Specifically, users are interested to know whether their feedback is directly taken into account by developers during app maintenance, e.g., whether developers are implementing the required new features or whether the developers are fixing specific bugs highlighted in previous user reviews. This track will use the multi-source Interlinking implemented in the second track (and extended in the subsequent tracks) to automatically enable a feedback mechanism to alert the users when the app developers are addressing their requests. In addition, we also plan to include an alert-mechanism which highlights the users the potential violation and legal issues related to app mobility.

Paper linked to this WP: [C29], [C37], [C38]

(2) Publications, (3) Tools and Datasets

(2) Publications

 

2018

 

 

Ardoc

[C44] Carol V. Alexandru; José J. Merchante; Sebastiano Panichella; Sebastian Proksch; Harald C. Gall; Gregorio Robles.: On the Usage of Pythonic Idioms.  Onward 2018 (RANK: C)  

 
Ardoc

[J7] Y. Zhou, C. Wang, Y. Xin, T. Chen, S. Panichella, and H. Gall.: Automatic Detection and Repair Recommendation of Directive Defects in Java API Documentation.  Transaction on Software Engineering 2018

 
Ardoc

[C43]  C. Vassallo, F. Palomba, H.C. Gall:   Continuous Refactoring in CI: A Preliminary Study On the Perceived Advantages and Barriers 
In Proceedings of the  34th International Conference on Software Maintenance and Evolution, ICSME 2018 RANK: A .

Ardoc

[C42]  C. Vassallo, F. Palomba, A. Bacchelli, H.C. Gall:   Continuous Code Quality: Are We (Really) Doing That? 
In Proceedings of the 33rd IEEE/ACM International Conference on Automated Software Engineering, ASE 2018  RANK: A .

Ardoc

[C41]  S. Scalabrino, G. Grano, D. Di Nucci, M. Guerra, A. De Lucia, H.C. Gall, R. Oliveto:   OCELOT: A Search-Based Test Data Generation Tool for C
In Proceedings of the 33rd IEEE/ACM International Conference on Automated Software Engineering, ASE 2018  RANK: A  

Ardoc

[C40] C. Vassallo, S. Proksch, T. Zemp, H.C. Gall: Un-Break My Build: Assisting Developers with Build Repair Hints. 

In Proceedings of the 26th International Conference on Program Comprehension, ICPC 2018  RANK: C     

Ardoc

[C39]  G. Grano, S. Scalabrino, H.C. Gall, R. Oliveto:  An Empirical Investigation on the Readability of Manual and Generated Test Cases
In Proceedings of the 26th International Conference on Program Comprehension, ICPC 2018  RANK: C     

Ardoc

[J6] Carol Alexandru,Sebastiano Panichella, Sebastian Proksch and Harald GallRedundancy-free Analysis of Multi-revision Software Artifacts.  Empirical Software Engineering Journal. 

 
Ardoc

[C38]  S. Panichella: Summarization Techniques for Code, Change, Testing and User Feedback . In Proceedings of the IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER 2018) RANK: B   

 
Ardoc

[C37]  A. Ciurumelea, S. Panichella, H. Gall.: Automated User Reviews Analyser. In Proceedings of the 40th International Conference on Software Engineering (ICSE 2018).  RANK: B.   

Ardoc

[C36]  L. Pelloni, G. Grano, A. Ciurumelea, S. Panichella, F. Palomba, H. Gall.: BECLoMA: Augmenting Stack Traces with User Review Information. Proceedings of the IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER 2018) RANK: B.   

Ardoc

[C35] G. Grano, T. Titov, S. Panichella, H. Gall:  How High Will It Be? Using Machine Learning Models to Predict Branch Coverage in Automated Testing. MaLTeSQuE (co-located with SANER 2018)RANK: B.    

Ardoc

[C34]  G. Grano, A. Ciurumelea, S. Panichella, F. Palomba, H. Gall.: Exploring the Integration of User Feedback in Automated Testing of Android Applications. Proceedings of the IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER 2018) RANK: B.   

Ardoc

[C33] C. Vassallo, S. Panichella, F. Palomba, S. Proksch, A. Zaidman and H. Gall:  Context is King: The Developer Perspective on the Usage of Static Analysis Tools. Proceedings of the IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER 2018)RANK: B.    

2017

Ardoc

[C32]  G. Grano, A. Di Sorbo, F. Mercaldo, C. Visaggio, G. Canfora, S. Panichella: Android Apps and User Feedback: a Dataset for Software Evolution and Quality Improvement. Proceedings of the International Workshop on App Market Analytics (WAMA 2017). Pderborn, Germany.  

Ardoc

[C31] C. Vassallo, G. Schermann, F. Zampetti, D. Romano, P. Leitner, A. Zaidman, M. di Penta, S. Panichella: A Tale of CI Build Failures: an Open Source and a Financial Organization Perspective. Proceedings of the 33rd International Conference on Software Maintenance and Evolution (ICSME 2017). Shangai, Asia. RANK: A.   

Ardoc

[C29] Andrea Di Sorbo, Sebastiano PanichellaCarol Alexandru, Corrado A. Visaggio, Gerardo Canfora, Harald GallSURF: Summarizer of User Reviews Feedback. Proceedings of the 39th IEEE International Conference on Software Engineering (ICSE 2017). Buenos Aires, Argentina. RANK: A* 

Ardoc 

[C28] F. Palomba, P. Salza,Adelina Ciurumelea,Sebastiano PanichellaHarald Gall, F. Ferrucci, A. De Lucia:   Recommending and Localizing Change Requests for Mobile Apps based on User Reviews. Proceedings of the 39th IEEE International Conference on Software Engineering (ICSE 2017). Buenos Aires, Argentina. RANK: A* 

Ardoc

[C27] Y. Zhou, R. Gu, T. Chen, Z. Huang, Sebastiano PanichellaHarald GallAnalyzing APIs Documentation and Code to Detect Directive Defects. Proceedings of the 39th IEEE International Conference on Software Engineering (ICSE 2017). Buenos Aires, Argentina. RANK: A* 

Ardoc

[C26] Adelina Ciurumelea, Andreas Schaufelbühl, Sebastiano Panichella and Harald GallAnalyzing Reviews and Code of Mobile Apps for better Release Planning. Proceedings of the 24th IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2017). Klagenfurt, Austria. RANK: B   

2016

Ardoc

[C24] Sebastiano Panichella, Andrea Di Sorbo, Emitza Guzman, Corrado Aaron Visaggio, Gerardo Canfora and Harald GallARdoc: App Reviews Development Oriented Classifier. 24th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE 2016). Seattle, WA, USA. RANK: A  

ApproachOverview
[C23] Andrea Di Sorbo, Sebastiano Panichella, Carol Alexandru, Junji Shimagaki, Aaron Visaggio, Gerardo Canfora and Harald Gall : What Would Users Change in My App? Summarizing App Reviews for Recommending Software Changes. 24th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE 2016). Seattle, WA, USA. RANK: A   

 

(3) Tools:

LISA

BECLoMA

DRONE

DECA-tool 

SURF-tool  

- AUREA-tool  (video demonstration at https://youtu.be/V62ngWVvFpc )

Datasets,  Replication Packages and Appendices:

- Replication Package for "Exploring the Integration of User Feedback in Automated Testing of Android Applications. "

Replication Package for "Redundancy-free Analysis of Multi-revision Software Artifacts "

SURF-Replication-Package  

Replication Package for: "Analyzing APIs Documentation and Code to Detect Directive Defects" 

Dataset of the paper: Android Apps and User Feedback: a Dataset for Software Evolution and Quality Improvement.

Recommending and Localizing Code Changes for Mobile Apps based on User Reviews: Online Appendix

- Replication Package for "Analyzing Reviews and Code of Mobile Apps for a better Release Planning Organization".

Replication Package for "What Would Users Change in My App? Summarizing App Reviews for Recommending Software Changes"