44,780 research outputs found

    Mining Fix Patterns for FindBugs Violations

    Get PDF
    In this paper, we first collect and track a large number of fixed and unfixed violations across revisions of software. The empirical analyses reveal that there are discrepancies in the distributions of violations that are detected and those that are fixed, in terms of occurrences, spread and categories, which can provide insights into prioritizing violations. To automatically identify patterns in violations and their fixes, we propose an approach that utilizes convolutional neural networks to learn features and clustering to regroup similar instances. We then evaluate the usefulness of the identified fix patterns by applying them to unfixed violations. The results show that developers will accept and merge a majority (69/116) of fixes generated from the inferred fix patterns. It is also noteworthy that the yielded patterns are applicable to four real bugs in the Defects4J major benchmark for software testing and automated repair.Comment: Accepted for IEEE Transactions on Software Engineerin

    On Productivity Measurement and Interpretation: Some Insights on Italy in the European Context. LEQS Paper No. 142/2019 March 2019

    Get PDF
    Over the period 1995–2016, the Italian performance in terms of productivity was poor in historical terms and in comparison with its main international partners. This issue goes beyond Italy, with declining productivity growth observed, from the second half of the nineties, in several other advanced economies. Possible explanations for the slowdown include factors such as lower capital investment by firms, decreased competition, excessive regulation, and capital misallocation. The diffuse slowing rates of measured productivity growth has also raised questions on whether GDP and output current compilation methods are adequate (i.e. the mis-measurement hypothesis). The “ICT revolution” has created new ways of exchanging and providing goods and services as result of increased connectivity. These developments challenge the way economic activity is traditionally measured. There are also measurement problems associated with estimating output and input volumes especially related to the quality of price indexes for some products and services. These problems have an impact on productivity estimates and might impair international comparability. In this paper, we intend to investigate what the core problems in productivity measurement and interpretation are in the European context, with a specific focus on Italy

    SZZ Unleashed: An Open Implementation of the SZZ Algorithm -- Featuring Example Usage in a Study of Just-in-Time Bug Prediction for the Jenkins Project

    Full text link
    Numerous empirical software engineering studies rely on detailed information about bugs. While issue trackers often contain information about when bugs were fixed, details about when they were introduced to the system are often absent. As a remedy, researchers often rely on the SZZ algorithm as a heuristic approach to identify bug-introducing software changes. Unfortunately, as reported in a recent systematic literature review, few researchers have made their SZZ implementations publicly available. Consequently, there is a risk that research effort is wasted as new projects based on SZZ output need to initially reimplement the approach. Furthermore, there is a risk that newly developed (closed source) SZZ implementations have not been properly tested, thus conducting research based on their output might introduce threats to validity. We present SZZ Unleashed, an open implementation of the SZZ algorithm for git repositories. This paper describes our implementation along with a usage example for the Jenkins project, and conclude with an illustrative study on just-in-time bug prediction. We hope to continue evolving SZZ Unleashed on GitHub, and warmly invite the community to contribute
    • 

    corecore