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 ( 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 (

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 (

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 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 ( or Philipp Leitner ( 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.

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:

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.


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

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.


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.

We are looking for a Research Assistant for a Transfer Project

In the software evolution and architecture lab (s.e.a.l.) at the University of Zurich (Chair: Harald Gall), we have an open position for a master student to work on software development for cloud-based systems. The position is part-time (40-60%) and open from January 2016.

We are specifically interested in applicants with strong technical skills, particularly in the area of frontend development and UX design. The research assistantship will be part of a transfer project aiming at practical solutions for cloud service selection, benchmarking, and application profiling. Close collaboration with 2 to 3 other students as well as the development lead will be required. We offer considerable flexibility in terms of work time as well as physical location.

The task of the research assistant will be to work on an early-stage product for cloud cost estimation and optimisation, in particular to

  • implement Web-based applications
  • employ state of the art software technologies
  • provide input to the specification, design, and architecture of the product
  • write proper technical product documents
  • participate in and contribute to meetups, tutorials, and customer presentations
  • be an active member of the s.e.a.l. research lab

Further, it may be possible to combine the research assistantship with a master’s thesis.

We are looking for a student who:

  • is passionate about software development, and has some experience in building non-trivial applications in object-oriented programming languages
  • is interested in and has talent for designing innovative Web-based user interfaces
  • is passionate about Web development and cloud computing
  • is interested in academic research and able to communicate in English

The day-to-day work of the research assistant will be directed by Dr. Christian Inzinger. If you are interested in this position, please send email containing a short CV (optimally including a link to your public GitHub repo or another repository of previous work) to Dr. Philipp Leitner ( and Dr. Christian Inzinger ( Applications will be evaluated immediately until the position is filled.

Eye Tracking within the IDE

We are happy to announce that the paper “iTrace: Enabling Eye Tracking on Software Artifacts within the IDE to Support Software Engineering Tasks” got accepted at the ESEC/FSE Tool Demo Track! The paper was written in collaboration with Timothy Shaffer, Jenna Wise, Braden Walters, Michael Falcone, and Bonita Sharif from the Youngstown State University in USA.

The paper presents iTrace, an Eclipse plugin that implicitly records developers’ eye movements while they work on change tasks. iTrace records eye movements on various types of software artifacts (Java code, text/html/xml documents, diagrams), as well as Eclipse user interface elements. Currently, the X60 and EyeX eye trackers from Tobii are supported, but iTrace is designed for easy addition of new devices.

This video provides a short demonstration of iTrace:

A preprint of the paper can be found online.

Our paper “Development Emails Content Analyzer: Intention Mining in Developer Discussions” got accepted at ASE’15!

Written development communication (e.g. mailing lists, issue trackers) constitutes a precious source of information to build recommenders for software engineers, for example aimed at suggesting experts, or at redocumenting existing source code. In this paper we propose a novel, semi-supervised approach named DECA (Development Emails Content Analyzer) that uses Natural Language Parsing to classify the content of development emails according to their purpose (e.g. feature request, opinion asking, problem discovery, solution proposal, information giving etc), identifying email elements that can be used for specific tasks.


A study based on data from Qt and Ubuntu, highlights a high precision (90%) and recall (70%) of DECA in classifying email content, outperforming traditional machine learning strategies. Moreover, we successfully used DECA for re-documenting source code of Eclipse and Lucene, improving the recall, while keeping high precision, of a previous approach based on ad-hoc heuristics.