ARdoc: App Reviews Development Oriented Classifier @ FSE 2016

We are happy to announce that the paper “ARdoc: App Reviews Development Oriented Classifier” got accepted at the FSE 2016 Demonstrations Track! The authors of the paper are: Sebastiano Panichella, Andrea Di Sorbo, Emitza Guzman, Corrado Aaron Visaggio, Gerardo Canfora and Harald Gall.

The paper presents ARdoc (App Reviews Development Oriented Classifier) a Java tool that automatically recognizes natural language fragments in user reviews that are relevant for developers to evolve their applications. Specifically, natural language fragments are extracted according to a taxonomy of app reviews categories that are relevant to software maintenance and evolution. The categories were defined in our previous paper entitled “How Can I Improve My App? Classifying User Reviews for Software Maintenance and Evolution” ) and are: (i) Information Giving, (ii) Information Seeking, (iii) Feature Request and (iv) Problem Discovery. ARdoc implements an approach that merges three techniques: (1) Natural Language Processing, (2) Text Analysis and (3) Sentiment Analysis
(SA) to automatically classify useful feedback contained in app reviews important for performing software maintenance and evolution tasks.

Our quantitative and qualitative analysis (involving mobile professional developers) demonstrate that ARdoc correctly classifies feedback useful for maintenance perspectives in user reviews with high precision (ranging between 84% and 89%), recall (ranging between 84% and 89%), and an F-Measure (ranging between 84% and 89%). While evaluating our tool we also found that ARdoc substantially helps to extract important maintenance tasks for real world applications.

This video provides a short demonstration of ARdoc:

ARdoc is available for download at http://www.ifi.uzh.ch/en/seal/people/panichella/tools/ARdoc.html

What Would Users Change in My App? Summarizing App Reviews for Recommending Software Changes @ FSE 2016

We’re happy to announce that the paper

“What Would Users Change in My App? Summarizing App Reviews for
Recommending Software Changes” has been accepted into FSE 2016 as a full paper. The authors of the paper are:  Andrea Di Sorbo, Sebastiano Panichella,
Carol Alexandru, Junji Shimagaki, Corrado Visaggio, Gerardo Canfora and Harald
Gall.

Abstract:
Mobile app developers constantly monitor feedback in user reviews with the goal of improving their mobile apps and better meeting user expectations. Thus, automated approaches have been proposed in literature with the aim of reducing the effort required for analyzing feedback contained in user reviews via automatic classification (or prioritization) according to specific topics (e.g., bugs, features etc.).

ApproachOverview

In this paper, we introduce SURF (Summarizer of User Reviews Feedback), a novel approach to condense the enormous amount of information that developers of popular apps have to manage due to user feedback received on a daily basis. SURF relies on a conceptual model for capturing user needs useful for developers performing maintenance and evolution tasks. Then it uses sophisticated summarisation techniques for summarizing thousands of reviews and generating an interactive, structured and condensed agenda of recommended software changes. We performed an end-to-end evaluation of SURF on user reviews of 17 mobile apps (5 of them developed by Sony Mobile), involving 23 developers and researchers in total. Results demonstrate high accuracy of SURF in summarizing reviews and the usefulness of the recommended changes. In evaluating our approach we found that SURF helps developers in better understanding user needs, substantially reducing the time required by developers compared to manually analyzing user (change) requests and planning future software changes.

Journal of Systems and Software: Eye Gaze and Interaction Contexts for Change Tasks – Observations and Potential

The more we know about software developers’ detailed navigation behavior for change
tasks, the better we are able to provide effective tool support. In this article, we extend our work on the fine-granular navigation behavior of developers (see blogpost) and explore the potential of the more detailed and fine-granular data by examining the use of the captured change task context to predict perceived task difficulty and to provide better and more fine-grained navigation recommendations.

 

Check out our Journal article!

Three Open Positions for Researchers / PhD Students in Software Development for Cloud and Mobile Apps

The software evolution and architecture lab (s.e.a.l.) at the University of Zurich, Switzerland (http://www.ifi.uzh.ch/seal.html) is seeking applications for three PhD students in the areas of software development for cloud and mobile applications. All positions are fully funded, available immediately, and open until filled.

One student will work with Dr. Philipp Leitner and Prof. Harald Gall on the SNF-funded project “MINCA – Models to Increase the Cost Awareness of Cloud Developers”. The student shall be interested in the intersection of software engineering and cloud computing (distributed systems) research, and be able and willing to pursue empirical research (e.g., repository mining, interview or survey research, concept prototyping, and statistical modelling and analysis). Some more information on this line of research can be found on Philipp Leitner’s web page (http://wp.ifi.uzh.ch/leitner/).

Two students will work with Dr. Sebastiano Panichella and Prof. Harald Gall on the SNF-funded project “SURF-MobileAppsData”. This project focuses on mining mobile apps data available in app stores to support software engineers in better maintenance and evolution 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. Some more information on this line of research can be found on Sebastiano Panichella’s web page (http://www.ifi.uzh.ch/seal/people/panichella.html).

Our group consists of 2 professors, 3 post-docs, and 8-10 PhD students, all working on how to improve software developer productivity and software quality. We have a track record of substantial impact at international venues and are well funded, both on the national and European level. We cooperate with researchers around the world, including companies such as Microsoft, Google, IBM, ABB, or SAP.

The Department of Informatics is the competence center for Informatics at the University of Zurich. Ten tenured professors, four assistant professors, and approximately 100 PhD students and postdoctoral researchers instruct and conduct research at the department. Zurich is a leading global city and among the world’s largest financial centers. The city is home to a large number of financial institutions and IT companies. Most of Switzerland’s research and development centers are concentrated in Zurich and the low tax rates attract overseas companies to set up their headquarters there. Quality of life is very high in Zurich.

English is the working and teaching language all over computer science. Germans generally have reasonable command of English; and in day-to-day life, you can easily get along with English as your only language.

Mandatory conditions of employment are:

– Master’s degree (MSc) in Computer Science and/or Software Engineering

– Fluency in English

The position requires relocating to Zurich.

We offer an internationally competitive salary in accordance with University of Zurich regulations. The university aims to increase the number of women in this field. Therefore, women are especially encouraged to apply for this position.

Starting date: The positions are available immediately. Applications are accepted until the positions are filled.

Applications: Please email a statement of interest, detailed CV, a writing sample (e.g., a published or submitted paper, or your thesis), and at least one letter of reference from a faculty member (either from your home institution or a past collaborator), as one PDF document to seal-jobs@ifi.uzh.ch. Please indicate which position you are applying to by using the tag [CLOUD-Student] or [MOBILE-Student] as part of your subject line.

More information: Please contact Sebastiano Panichella (panichella@ifi.uzh.ch) or Philipp Leitner (leitner@ifi.uzh.ch) for questions.

A Search-based Training Algorithm for Cost-aware Defect Prediction @ GECCO 2016

We’re happy to announce that the paper

“A Search-based Training Algorithm for Cost-aware Defect Prediction”

has been accepted into GECCO 2016 as a full paper. The paper was written in collaboration with our good friends at the TU Delft software engineering research group (SERG). It is authored by Annibale Panichella and co-authored by Carol V. Alexandru, Sebastiano
Panichella, Alberto Bacchelli and Harald C. Gall. GECCO is an A conference on Genetic and Evolutionary Computations.

Abstract:
Research has yielded approaches to predict future defects in software artifacts based on historical information, thus assisting companies in effectively allocating limited development resources and developers in reviewing each others’ code changes. Developers are unlikely to devote the same effort to inspect each software artifact predicted to contain defects, since the effort varies with the artifacts’ size (cost) and the number of defects it exhibits (effectiveness). We propose to use Genetic Algorithms (GAs) for training prediction models to maximize their cost-effectiveness. We evaluate the approach on two well-known models, Regression Tree and Generalized Linear Model, and predict defects between multiple releases of six open source projects. Our results show that regression models trained by GAs significantly outperform their traditional counterparts, improving the cost-effectiveness by up to 240%. Often the top 10% of predicted lines of code contain up to twice as many defects.

Survey on Release Processes

We are currently conducting a study on modern release processes and we want invite you to participate in our survey. Our goal is to obtain a better understanding of how practices often associated with Continuous Delivery are used in industry.

The survey will take approximately 7-9 minutes.
This is the link to the survey: https://sealuzh.typeform.com/to/k6SR2t

With your participation, you get the chance to enter in our lottery to win one of two 50$ Amazon Gift Cards at the end of the survey.

We will handle all responses confidentially and anonymize all collected data before publishing it. We will not attribute answers to any particular participant. At the end of the survey, you may provide your email address voluntarily if you wish to participate in the lottery and/or in case you wish to be notified about the survey results.

We would greatly appreciate your participation! Thank you!

Please feel free to contact Gerald Schermann if you have any further questions.

screenshot_survey

DECA: Development Emails Content Analyzer

We are happy to announce that the paper “DECA: Development Emails Content Analyzer” got accepted at the ICSE 2016 Demonstrations Track! The paper was written in collaboration with the University of Sannio. The authors of the paper are: Andrea Di Sorbo, Sebastiano Panichella, Corrado A. Visaggio, Massimiliano Di Penta, Gerardo Canfora and Harald C. Gall.

The paper presents DECA (Development Emails Content Analyzer)  a Java tool to automatically recognize natural language fragments in emails that are relevant in the software engineering domain. Actually, DECA implements an approach which allows to recognize most informative sentences for development purposes by exploiting a set of recurrent natural language patterns that developers often use in such communication channel. DECA purpose is to capture the intent of each informative sentence (requesting a new feature, description of a problem, or proposing a solution) and consequently to allow developers to better manage the information contained in emails.

This video provides a short demonstration of DECA:

DECA is available for download at http://www.ifi.uzh.ch/seal/people/panichella/tools/DECA.html.

seal @ ICSE 2016

We are very happy to announce that our research group got two papers and a technical briefing accepted at ICSE 2016 in Austin, Texas.

The first accepted paper entitled “The Impact of Test Case Summaries on Bug Fixing Performance: An Empirical Investigation” was written in collaboration with the University of Delft. The authors of the paper are : Sebastiano Panichella, Annibale Panichella, Moritz Beller, Andy Zaidman and Harald Gall.

Abstract: “Automated test generation tools have been widely investigated with the goal of reducing the cost of testing activities. However, generated tests have been shown not to help developers in detecting and finding more bugs even though they reach higher structural coverage compared to manual testing. The main reason is that generated tests are difficult to understand and maintain.

Test Case Summarizer

Our paper proposes an approach which automatically generates test case summaries of the portion of code exercised by each individual test, thereby improving understandability. We argue that this approach can complement the current techniques around automated unit test generation or search-based techniques designed to generate a possibly minimal set of test cases. In evaluating our approach we found that (1) developers find twice as many bugs, and (2) test case summaries significantly improve the comprehensibility of test cases, which is considered particularly useful by developers.”

A preprint of the paper can be found online.

The second paper is entitled “Using (Bio)Metrics to Predict Code Quality Online” and was written by Sebastian Müller and Thomas Fritz. The paper investigates the use of biometrics, such as heart rate variability (HRV) or electro-dermal activity (EDA) to determine the difficulty that developers experience while working on real world change tasks and automatically identify code quality concerns while a developer is making a change to the code.

overview

A preprint of the paper will be available soon.

Additionally, we had a technical briefing on “Using Docker Containers to Improve Reproducibility in Software Engineering Research”, by Jürgen Cito and Harald Gall, accepted, where we will present opportunities to aid reproducibility to the SE community.