Author: Keisuke Fujino, Akinori Ihara, Kiyoshi Honda, Hironori Washizaki and Kenichi Matsumoto
Title: Toward Monitoring Bugs-fixing Process after the Releases in Open Source Software
Abstract: As open source software (OSS) has become an integral part of today’s software businesses, many software companies rely on OSS to develop their customer solutions and products. On the other hand, they face various concerns in using OSS. One of the concerning is software quality, because there are many bugs in OSS soon after the new releases. When the software company begins using OSS, they should use the updated higher quality OSS.
Otherwise, company developers often have to download new patches, and may fix bugs by themselves. However, company developers not sure how they identify the OSS which updated enough and has the required quality (e.g., security, performance). In this study, we propose a bug fixed-curves to monitor the bug convergence process after the release of OSS. The curve shows a process of fixing bugs reported in a release. In particular, in order to select the OSS with the required software quality, we show bug-fixed curves each bug types.
Author: Shin Fujiwara, Hideaki Hata, Akito Monden and Kenichi Matsumoto
Title: Recommending Bug Reports for Debugging
Abstract: Context: In debugging, developers need to understand the causes of bugs, and this understanding requires context information of modules. However, collecting such information is troublesome.
Goal: Our goal is to provide context information to help developers understand modules.
Method: We propose a technique of recommending bug reports related to buggy module as context information. This technique ranks bug reports based on the textual similarity between bug reports and source code of buggy modules using a Vector Space Model (VSM).
Result: We perform experiments on three open source software projects. The results show that our technique can provide appropriate bug reports for 58.70% ~ 96.94% of source codes in the top ten rankings.
Conclusions: Our result suggests that our technique works relatively well. Future work includes evaluating our technique in practical scenario.
Author: Kiyoshi Honda
Title: Prediction about End of Development Considering Dynamics of Software Development
Abstract: Software reliability is a critical component of computer system availability. Software reliability growth models can be used as an indication of whether enough faults have been removed to release the software.
The logistic curve and Gompertz curve are well-known software reliability growth curves.
However, these curves cannot account for the dynamics of software development.
We define the dynamics of software development as changes of project members.
Here, we propose a method which can treats the dynamics of software development and predict the end of development.
Our method uses the repository system which can report the data of issues.
The data of issues include the times when issues have found and when issues have fixed and the user id of project members who have found and fixed issues.
We analyze the data of issues with picking out the number of project members who have found and fixed issues and apply the analyzed data to a generalized software reliability model (GSRM) which we proposed in our early work.
GSRM can treat and describe the dynamics of software development and predict the end of development.
We aim to predict the end of development and fit models to actual development of open source software.
Author: Jirayus Jiarpakdee, Akinori Ihara and Ken-Ichi Matsumoto
Title: Understanding important factors to identify good and bad questions : a case study of StackOverflow
Abstract: StackOverflow is the most popular community for answering questions about software development. There are millions of developers and users who actively contribute to the community by asking and answering questions. It contains many valuable knowledges for developers. However, some questions cannot grab community’s attention and getting useful answers. Hence, we consider how you ask your question plays important role toward how you get useful answers. In this study, in order to understand how to write good question to get useful answer, we investigate the questions with hierarchical clustering in terms of two aspects: textual aspect and community-related aspect. From this study, we will understand the factors of good questions.
Author: Stevche Radevski, Hideaki Hata, and Kenichi Matsumoto
Title: Monitoring Neural State in Assessing and Improving Software Developers’ Productivity
Abstract: High productivity is what distinguishes expert developers from novices, and good companies from bad ones. Therefore, being able to measure productivity in a quantitative manner, and afterwards assess and improve it, depending on the level of improvement, can have minor to major impact on the success of individuals and companies.
Performance and productivity of humans, as well as ease of use of devices have been researched for almost a century by fields such as Human Factors and Ergonomics and Human-Computer Interaction on a physical, cognitive, and organizational level. Also, two relatively new areas of research have already addressed performance on a neural level, focusing mostly on military application, and on critical situations (landing and takeoff, driving, air traffic control, etc.). Monitoring productivity and performance on a daily basis is something, to our best of knowledge, that hasn’t yet been addressed.
In this research work, we propose a system for continuous monitoring of various neural artifacts (stress, workload, emotions, etc.) by using a commercial EEG device. Furthermore, we propose possible applications of such system.
Author: Jiachen Yang
Title: Revealing Purity and Side Effects on Functions for Reusing Libraries and Automatic Parallelization
Abstract: Purity and side effects are important properties of methods that often are neglected by the documentations of the object oriented languages such as Java. In this research, we started as a pilot study by using a static analysis technique to automatically infer the state dependencies for the return value and side effects of functions. We continue this research by utilizing the purity information to achieve automatic parallelization. We will present the current status of this research.
Author: Takashi Kobayashi and Akihiro Yamamori
Title: Context Aware Change Guide based on Interaction Data Analysis
Abstract: We introduce a change guide method based on interaction data analysis. Our method calculates candidates of next change based on the recommendation history and fine-grained interaction history which consists of read and write access records of artifacts. We show performance of our method and discuss about a concept of a method based on coarse-grained interaction data.
Author: Daiki Hoshino
Title: Toward Detecting Smells in Edit History
Abstract: In this poster, we discuss the concept of bad smells in edit history of source code and an automated technique for detecting them. The history refactoring technique for improving the understandability and/or usability of edit history is useful. However, it is unclear how we refactor for which kinds of edit history. We defined several symptoms of edit history to be refactored as smells by analyzing existing history.
Author: Norihito Kitagawa, Hideaki Hata, Kenichi Matsumoto, and Kiminao Kogiso
Title: Estimating Developers’ Believes in OSS Contributions: A Game Theoretical Approach
Abstract: In OSS projects, the number of committers, who have permissions to commit code to central repositories, is essential in success. Although contributors who have worked actively can be good candidates to committers, it can be risk for future maintenance if they will leave the projects soon after becoming contributors. In this study, we try to estimate contributors’ believes (higher/lower continuity) for inviting them as future committers. We are building a game theoretic framework to estimate contributors’ believes using a Bayesian formulation. We plan to analyze both theoretical models and empirical data.