Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Raula Gaikovina Kula is active.

Publication


Featured researches published by Raula Gaikovina Kula.


ieee international conference on software analysis evolution and reengineering | 2015

Who should review my code? A file location-based code-reviewer recommendation approach for Modern Code Review

Patanamon Thongtanunam; Chakkrit Tantithamthavorn; Raula Gaikovina Kula; Norihiro Yoshida; Hajimu Iida; Ken-ichi Matsumoto

Software code review is an inspection of a code change by an independent third-party developer in order to identify and fix defects before an integration. Effectively performing code review can improve the overall software quality. In recent years, Modern Code Review (MCR), a lightweight and tool-based code inspection, has been widely adopted in both proprietary and open-source software systems. Finding appropriate code-reviewers in MCR is a necessary step of reviewing a code change. However, little research is known the difficulty of finding code-reviewers in a distributed software development and its impact on reviewing time. In this paper, we investigate the impact of reviews with code-reviewer assignment problem has on reviewing time. We find that reviews with code-reviewer assignment problem take 12 days longer to approve a code change. To help developers find appropriate code-reviewers, we propose RevFinder, a file location-based code-reviewer recommendation approach. We leverage a similarity of previously reviewed file path to recommend an appropriate code-reviewer. The intuition is that files that are located in similar file paths would be managed and reviewed by similar experienced code-reviewers. Through an empirical evaluation on a case study of 42,045 reviews of Android Open Source Project (AOSP), OpenStack, Qt and LibreOffice projects, we find that RevFinder accurately recommended 79% of reviews with a top 10 recommendation. RevFinder also correctly recommended the code-reviewers with a median rank of 4. The overall ranking of RevFinder is 3 times better than that of a baseline approach. We believe that RevFinder could be applied to MCR in order to help developers find appropriate code-reviewers and speed up the overall code review process.


software visualization | 2014

Visualizing the Evolution of Systems and Their Library Dependencies

Raula Gaikovina Kula; Coen De Roover; Daniel M. German; Takashi Ishio; Katsuro Inoue

System maintainers face several challenges stemming from a system and its library dependencies evolving separately. Novice maintainers may lack the historical knowledge required to efficiently manage an inherited system. While some libraries are regularly updated, some systems keep a dependency on older versions. On the other hand, maintainers may be unaware that other systems have settled on a different version of a library. In this paper, we visualize how the dependency relation between a system and its dependencies evolves from two perspectives. Our system-centric dependency plots (SDP) visualize the successive library versions a system depends on over time. The radial layout and heat-map metaphor provide visual clues about the change in dependencies along the systems release history. From this perspective, maintainers can navigate to a library-centric dependants diffusion plot (LDP). The LDP is a time-series visualization that shows the diffusion of users across the different versions of a library. We demonstrate on real-world systems how maintainers can benefit from our visualizations through four case scenarios.


international conference on software engineering | 2014

Improving code review effectiveness through reviewer recommendations

Patanamon Thongtanunam; Raula Gaikovina Kula; Ana Erika Camargo Cruz; Norihiro Yoshida; Hajimu Iida

Effectively performing code review increases the quality of software and reduces occurrence of defects. However, this requires reviewers with experiences and deep understandings of system code. Manual selection of such reviewers can be a costly and time-consuming task. To reduce this cost, we propose a reviewer recommendation algorithm determining file path similarity called FPS algorithm. Using three OSS projects as case studies, FPS algorithm was accurate up to 77.97%, which significantly outperformed the previous approach.


mining software repositories | 2013

Who does what during a code review? Datasets of OSS peer review repositories

Kazuki Hamasaki; Raula Gaikovina Kula; Norihiro Yoshida; A. E. Camargo Cruz; Kenji Fujiwara; Hajimu Iida

We present four datasets that are focused on the general roles of OSS peer review members. With data mined from both an integrated peer review system and code source repositories, our rich datasets comprise of peer review data that was automatically recorded. Using the Android project as a case study, we describe our extraction methodology, the datasets and their application used for three separate studies. Our datasets are available online at http://sdlab.naist.jp/reviewmining/.


Empirical Software Engineering | 2018

Do developers update their library dependencies?An empirical study on the impact of security advisories on library migration

Raula Gaikovina Kula; Daniel M. German; Ali Ouni; Takashi Ishio; Katsuro Inoue

Third-party library reuse has become common practice in contemporary software development, as it includes several benefits for developers. Library dependencies are constantly evolving, with newly added features and patches that fix bugs in older versions. To take full advantage of third-party reuse, developers should always keep up to date with the latest versions of their library dependencies. In this paper, we investigate the extent of which developers update their library dependencies. Specifically, we conducted an empirical study on library migration that covers over 4,600 GitHub software projects and 2,700 library dependencies. Results show that although many of these systems rely heavily on dependencies, 81.5% of the studied systems still keep their outdated dependencies. In the case of updating a vulnerable dependency, the study reveals that affected developers are not likely to respond to a security advisory. Surveying these developers, we find that 69% of the interviewees claimed to be unaware of their vulnerable dependencies. Moreover, developers are not likely to prioritize a library update, as it is perceived to be extra workload and responsibility. This study concludes that even though third-party reuse is common practice, updating a dependency is not as common for many developers.


genetic and evolutionary computation conference | 2015

Web Service Antipatterns Detection Using Genetic Programming

Ali Ouni; Raula Gaikovina Kula; Marouane Kessentini; Katsuro Inoue

Service-Oriented Architecture (SOA) is an emerging paradigm that has radically changed the way software applications are architected, designed and implemented. SOA allows developers to structure their systems as a set of ready-made, reusable and compostable services. The leading technology used today for implementing SOA is Web Services. Indeed, like all software, Web services are prone to change constantly to add new user requirements or to adapt to environment changes. Poorly planned changes may risk introducing antipatterns into the system. Consequently, this may ultimately leads to a degradation of software quality, evident by poor quality of service (QoS). In this paper, we introduce an automated approach to detect Web service antipatterns using genetic programming. Our approach consists of using knowledge from real-world examples of Web service antipatterns to generate detection rules based on combinations of metrics and threshold values. We evaluate our approach on a benchmark of 310 Web services and a variety of five types of Web service antipatterns. The statistical analysis of the obtained results provides evidence that our approach is efficient to detect most of the existing antipatterns with a score of 85% of precision and 87% of recall.


source code analysis and manipulation | 2014

Identifying Source Code Reuse across Repositories Using LCS-Based Source Code Similarity

Naohiro Kawamitsu; Takashi Ishio; Tetsuya Kanda; Raula Gaikovina Kula; Coen De Roover; Katsuro Inoue

Developers often reuse source files developed for another project. In order to update a reused file to a newer version released by the original project, developers have to track which revision of a file was reused and how its content was modified. However, such tracking is tedious for developers. Many projects keep older versions of files whose bugs are already fixed in the original project. In this paper, we propose a technique to automatically identify source code reuse relationships between two repositories. Using a similarity metric based on longest common subsequence, we identify pairs of similar revisions of files across the repositories. To evaluate our approach, we have analyzed eight project pairs of open source software projects and compared the result with the recorded information in the repositories. As a result, we have identified 1394 file revisions as instances of source code reuse. While 75.3% of the instances are recorded in the repositories, 20.1% of the instances are unrecorded but recovered by our approach.


international conference on software maintenance | 2014

ReDA: A Web-Based Visualization Tool for Analyzing Modern Code Review Dataset

Patanamon Thongtanunam; Xin Yang; Norihiro Yoshida; Raula Gaikovina Kula; Ana Erika Camargo Cruz; Kenji Fujiwara; Hajimu Iida

ReDA (http://reda.naist.jp/) is a web-based visualization tool for analyzing Modern Code Review (MCR) datasets for large Open Source Software (OSS) projects. MCR is a commonly practiced and lightweight inspection of source code using a support tool such as Gerrit system. Recently, mining code review history of such systems has received attention as a potentially effective method of ensuring software quality. However, due to increasing size and complexity of softwares being developed, these datasets are becoming unmanageable. ReDA aims to assist researchers of mining code review data by enabling better understand of dataset context and identifying abnormalities. Through real-time data interaction, users can quickly gain insight into the data and hone in on interesting areas to investigate. A video highlighting the main features can be found at: http://youtu.be/ fEoTRRas0U.


international symposium on software reliability engineering | 2012

Using Profiling Metrics to Categorise Peer Review Types in the Android Project

Raula Gaikovina Kula; E Carmago Cruz Ana; Norihiro Yoshida; Kazuki Hamasaki; Kenji Fujiwara; Xin Yang; Hajimu Iida

Profiling of open source software (OSS) peer reviewers have many potential benefits related to quality assurance at both software and project levels. In this paper, we investigate its benefits such as identifying hidden experts, identify inactive or disinterested members to gauge the health of the OSS project and assisting aspiring members to monitor performance, identifying opportunities for career improvement. Preliminary results are promising, proving that our categories are practical and opening many avenues for future work. Recent improvements of data repositories mining tools and techniques make this research timely in able to provide quantitative insights for OSS peer review projects.


asia-pacific software engineering conference | 2012

Understanding OSS Peer Review Roles in Peer Review Social Network (PeRSoN)

Xin Yang; Raula Gaikovina Kula; Camargo Cruz Ana Erika; Norihiro Yoshida; Kazuki Hamasaki; Kenji Fujiwara; Hajimu Iida

Due to the distributed collaborations and the volunteering nature of Open Source Software (OSS), OSS peer review processes differs from traditional approaches. Despite the latest research efforts to understand OSS peer review processes, very little is known. Unlike related work, this study investigates OSS peer review processes from a different perspective. We investigate the importance of OSS peer review contributor roles and their review activities by using social network analysis (SNA), proposed as PeRSoN (Peer Review Social Network). As a case study, we extracted and analyzed the review process of Android Open Source Project (AOSP). To the best of our knowledge, this is the first research constructing social networks from mining a peer review repository. Our preliminary results provided hints on relationships among the OSS peer review contributor roles, their activities, and the network structure. The results raised issues that will be used to refine our approach in the future.

Collaboration


Dive into the Raula Gaikovina Kula's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Hajimu Iida

Nara Institute of Science and Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Ken-ichi Matsumoto

Nara Institute of Science and Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Xin Yang

Nara Institute of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Akinori Ihara

Nara Institute of Science and Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Kenji Fujiwara

Nara Institute of Science and Technology

View shared research outputs
Researchain Logo
Decentralizing Knowledge