November 15-16 (Saturday/Sunday), HKUST, Hong Kong
Free event! Everyone is welcome. Register now! Seats are limited and the registration will be ending quickly.

Next Generation of Mining Software Repositories, Hong Kong 2014

We would like to invite you to the Next Generation (NG) of Mining Software Repositories (MSR) at the Hong Kong University of Science and Technology (HKUST) in Hong Kong on Nov 16, right before FSE 2014.

Over the past decade, the MSR community has grown at a tremendous rate. The impact of MSR on software research and practice is already visible, which is breath-taking for one of Software Engineering’s youngest sub-fields.

As we prepare for another decade of MSR successes and challenges, it is important to step back and reflect on viable future directions for MSR: What are the next grand challenges? What are promising data sources? How can we enable stronger adoption of our research?

To address these issues, we have invited top researchers in MSR (for the list, please visit http://msr-ng.cse.ust.hk). Each invited speaker will have a short talk about next MSR challenges and promising research directions. After each talk, they will lead the discussion with participants.

This is a free event and everyone is welcome. Please register at http://msr-ng.cse.ust.hk by September 20, 2014, if you want to participate in MSR-NG. Please note that the seats are limited so the registration will be ending quickly.

We look forward to seeing you in Hong Kong!

Ahmed Hassan, Tom Zimmermann, Yasu Kamei, and Sung Kim
MSR-NG 2014 Co-Organizers

{ Comments on this entry are closed }

The first time a player sits down with a game is critical for their engagement. Games are a voluntary activity and easy to abandon. If the game cannot hold player attention, it will not matter how much fun the game is later on if the player quits early. Worse, if the initial experience was odious enough, the player will dissuade others from playing. Industry advice is to make the game fun from the start to hook the player. In our exploratory analysis of over 200 game reviews and interviews with industry professionals, we advance an alternative, complementary solution. New design terminology is introduced such as “holdouts” (what keeps players playing despite poor game design) and the contrast between momentary fun vs. intriguing experiences. Instead of prioritizing fun, we assert that intrigue and information should be seen as equally valuable for helping players determine if they want to continue playing. The first sustained play session (coined “first hour”), when inspected closely, offers lessons for game development and our understanding of how players evaluate games as consumable products.

[click for more details...]

{ Comments on this entry are closed }

With the advent of increased computing on mobile devices such as phones and tablets, it has become crucial to pay attention to the energy consumption of mobile applications. The software engineering field is now faced with a whole new spectrum of energy-related challenges, ranging from power budgeting to testing and debugging the energy consumption. In this paper, we present our work on analyzing energy patterns for the Windows Phone platform. We first describe the data that is collected for testing (power traces and execution logs). We then present several approaches for describing power consumption and detecting anomalous energy patterns and potential energy defects. Finally we show prediction models based on usage of individual modules that can estimate the overall energy consumption with high accuracy. The techniques presented in the paper allow assessing the individual impact of modules on the overall energy consumption and support overall energy planning.

[click for more details...]

{ Comments on this entry are closed }

Large organizations like Microsoft tend to rely on formal requirements documentation in order to specify and design the software products that they develop. These documents are meant to be tightly coupled with the actual implementation of the features they describe. In this paper we evaluate the value of high-level topic-based requirements traceability and issue report traceability in the version control system, using Latent Dirichlet Allocation (LDA). We evaluate LDA topics on practitioners and check if the topics and trends extracted match the perception that industrial Program Managers and Developers have about the effort put into addressing certain topics. We then replicate this study again on Open Source Developers using issue reports from issue trackers instead of requirements, confirming our previous industrial conclusions. We found that efforts extracted as commits from version control systems relevant to a topic often matched the perception of the managers and developers of what actually occurred at that time. Furthermore we found evidence that many of the identified topics made sense to practitioners and matched their perception of what occurred. But for some topics, we found that practitioners had difficulty interpreting and labelling them. In summary, we investigate the high-level traceability of requirements topics and issue/bug report topics to version control commits via topic analysis and validate with the actual stakeholders the relevance of these topics extracted from requirements and issues.

[click for more details...]

{ Comments on this entry are closed }

I

t is widely believed that refactoring improves software quality and developer productivity. However, few empirical studies quantitatively assess refactoring benefits or investigate developers’ perception towards these benefits. This paper presents a field study of refactoring benefits and challenges at Microsoft through three complementary study methods: a survey, semi-structured interviews with professional software engineers, and quantitative analysis of version history data. Our survey finds that the refactoring definition in practice is not confined to a rigorous definition of semantics-preserving code transformations and that developers perceive that refactoring involves substantial cost and risks. We also report on interviews with a designated refactoring team that has led a multi-year, centralized effort on refactoring Windows. The quantitative analysis of Windows 7 version history finds the top 5 percent of preferentially refactored modules experience higher reduction in the number of inter-module dependencies and several complexity measures but increase size more than the bottom 95 percent. This indicates that measuring the impact of refactoring requires multi-dimensional assessment.

[click for more details...]

{ Comments on this entry are closed }

Here are the slides for a keynote that I gave at the International Workshop on Recommendation Systems for Software Engineering (RSSE 2014).

https://speakerdeck.com/tomzimmermann/hello-clippy-lessons-learned-from-rsses

{ Comments on this entry are closed }

These are the slides for a keynote that I gave at the International Workshop on Software Engineering Research and Industrial Practices (SER&IPs).

There’s a guy. There’s a girl. In the beginning they don’t like each other. Then they fall in love but when they fall in love their families do not accept. In the end, how they unite is the story of many Bollywood movies. Research-practice partnerships are similar. How research and practice can overcome hurdles and join together is the topic of this talk.

At Microsoft Research I am in the fortunate position of being able to bridge two worlds. As part of my work, I collaborate with engineers from large-scale software projects at Microsoft as well as students and professors from universities all over the world. I will describe the collaboration model of the Empirical Software Engineering (ESE) group at Microsoft Research and share my experiences based on several successful collaborations over the past years. I will discuss best practices, challenges, common mistakes, and lessons learned based on several empirical studies related to refactoring, bug reporting, and analytics in general.

{ Comments on this entry are closed }