Searched for: +
(1 - 20 of 38)

Pages

document
Spadini, D. (author), Schvarcbacher, Martin (author), Oprescu, Ana (author), Bruntink, Magiel (author), Bacchelli, A. (author)
Test smells are poor design decisions implemented in test code, which can have an impact on the effectiveness and maintainability of unit tests. Even though test smell detection tools exist, how to rank the severity of the detected smells is an open research topic. In this work, we aim at investigating the severity rating for four test smells...
conference paper 2020
document
Spadini, D. (author), Calikli, Gul (author), Bacchelli, A. (author)
In contemporary code review, the comments put by reviewers on a specific code change are immediately visible to the other reviewers involved. Could this visibility prime new reviewers' attention (due to the human's proneness to availability bias), thus biasing the code review outcome In this study, we investigate this topic by conducting a...
conference paper 2020
document
di Biase, M. (author), Bruntink, Magiel (author), van Deursen, A. (author), Bacchelli, A. (author)
Background: Code review is a cognitively demanding and time-consuming process. Previous qualitative studies hinted at how decomposing change sets into multiple yet internally coherent ones would improve the reviewing process. So far, literature provided no quantitative analysis of this hypothesis.<br/>Aims: (1) Quantitatively measure the effects...
journal article 2019
document
Kovalenko, V.V. (author), Bogomolov, Egor (author), Bryksin, Timofey (author), Bacchelli, A. (author)
One recent, significant advance in modeling source code for machine learning algorithms has been the introduction of path-based representation - an approach consisting in representing a snippet of code as a collection of paths from its syntax tree. Such representation efficiently captures the structure of code, which, in turn, carries its...
conference paper 2019
document
Kovalenko, V.V. (author), Tintarev, N. (author), Pasynkov, Evgeny (author), Bird, Christian (author), Bacchelli, A. (author)
Selecting reviewers for code changes is a critical step for an efficient code review process. Recent studies propose automated reviewer recommendation algorithms to support developers in this task. However, the evaluation of recommendation algorithms, when done apart from their target systems and users (i.e., code review tools and change...
journal article 2019
document
Pascarella, L. (author), Palomba, F. (author), Bacchelli, A. (author)
Defect prediction models focus on identifying defect-prone code elements, for example to allow practitioners to allocate testing resources on specific subsystems and to provide assistance during code reviews. While the research community has been highly active in proposing metrics and methods to predict defects on long-term periods (i.e.,at...
journal article 2019
document
Spadini, D. (author), Palomba, F. (author), Baum, Tobias (author), Hanenberg, Stefan (author), Bruntink, Magiel (author), Bacchelli, A. (author)
Test-Driven Code Review (TDR) is a code review practice in which a reviewer inspects a patch by examining the changed test code before the changed production code. Although this practice has been mentioned positively by practitioners in informal literature and interviews, there is no systematic knowledge of its effects, prevalence, problems, and...
conference paper 2019
document
Pascarella, L. (author), Bruntink, Magiel (author), Bacchelli, A. (author)
Code comments are a key software component containing information about the underlying implementation. Several studies have shown that code comments enhance the readability of the code. Nevertheless, not all the comments have the same goal and target audience. In this paper, we investigate how 14 diverse Java open and closed source software...
journal article 2019
document
Sawant, A.A. (author), Robbes, Romain (author), Bacchelli, A. (author)
Application Programming Interfaces (API) provide reusable functionality to aid developers in the development process. The features provided by these APIs might change over time as the API evolves. To allow API consumers to peacefully transition from older obsolete features to new features, API producers make use of the deprecation mechanism...
journal article 2019
document
Pascarella, L. (author), Spadini, D. (author), Palomba, F. (author), Bruntink, Magiel (author), Bacchelli, A. (author)
Contemporary code review is a widespread practice used by software engineers to maintain high software quality and share project knowledge. However, conducting proper code review takes time and developers often have limited time for review. In this paper, we aim at investigating the information that reviewers need<br/>to conduct a proper code...
journal article 2018
document
Sawant, A.A. (author), Huang, Guangzhe (author), Vilen, Gabriel (author), Stojkovski, Stefan (author), Bacchelli, A. (author)
In this study, we investigate why API producers deprecate features. Previous work has shown us that knowing the rationale behind deprecation of an API aids a consumer in deciding to react, thus hinting at a diversity of deprecation reasons. We manually analyze the Javadoc of 374 deprecated methods pertaining four mainstream Java APIs to see...
conference paper 2018
document
Pascarella, L. (author), Palomba, F. (author), Di Penta, Massimiliano (author), Bacchelli, A. (author)
Recent research has provided evidence that, in the industrial context, developing video games diverges from developing software systems in other domains, such as office suites and system utilities. In this paper, we consider video game development in the open source system (OSS) context. Specifically, we investigate how developers contribute to...
conference paper 2018
document
Sawant, A.A. (author), Aniche, Maurício (author), van Deursen, A. (author), Bacchelli, A. (author)
Deprecation is a language feature that allows API producers to mark a feature as obsolete. We aim to gain a deep understanding of the needs of API producers and consumers alike regarding deprecation. To that end, we investigate why API producers deprecate features, whether they remove deprecated features, how they expect consumers to react, and...
conference paper 2018
document
Spadini, D. (author), Palomba, F. (author), Zaidman, A.E. (author), Bruntink, Magiel (author), Bacchelli, A. (author)
Test smells are sub-optimal design choices in the implementation of test code. As reported by recent studies, their presence might not only negatively affect the comprehension of test suites but can also lead to test cases being less effective in finding bugs in production code. Although significant steps toward understanding test smells, there...
conference paper 2018
document
Pascarella, L. (author), Geiger, Franz-Xaver (author), Palomba, F. (author), Di Nucci, Dario (author), Malavolta, Ivano (author), Bacchelli, A. (author)
To gain a deeper empirical understanding of how developers work on Android apps, we investigate self-reported activities of Android developers and to what extent these activities can be classified with machine learning techniques. To this aim, we firstly create a taxonomy of self-reported activities coming from the manual analysis of 5,000...
conference paper 2018
document
Geiger, Franz-Xaver (author), Malavolta, Ivano (author), Pascarella, L. (author), Palomba, F. (author), Di Nucci, D. (author), Bacchelli, A. (author)
Obtaining a good dataset to conduct empirical studies on the engineering of Android apps is an open challenge. To start tackling this challenge, we present AndroidTimeMachine, the first, self-contained, publicly available dataset weaving spread-out data sources about real-world, open-source Android apps. Encoded as a graph-based database,...
conference paper 2018
document
Spadini, D. (author), Aniche, Maurício (author), Bacchelli, A. (author)
Software repositories contain historical and valuable information about the overall development of software systems. Mining software repositories (MSR) is nowadays considered one of the most interesting growing fields within software engineering. MSR focuses on extracting and analyzing data available in software repositories to uncover...
conference paper 2018
document
Kovalenko, V.V. (author), Bacchelli, A. (author)
Onboarding is a critical stage in the tenure of software developers with a project, because meaningful contribution requires familiarity with the codebase. Some software teams employ practices, such as mentoring, to help new developers get accustomed faster. Code review, i.e., the manual inspection of code changes, is an opportunity for...
conference paper 2018
document
Pascarella, L. (author), Palomba, F. (author), Bacchelli, A. (author)
Bug prediction is aimed at supporting developers in the identification of code artifacts more likely to be defective. Researchers have proposed prediction models to identify bug prone methods and provided promising evidence that it is possible to operate at this level of granularity. Particularly, models based on a mixture of product and process...
conference paper 2018
document
Spadini, D. (author), Aniche, Maurício (author), Storey, Margaret-Anne (author), Bruntink, Magiel (author), Bacchelli, A. (author)
Automated testing is considered an essential process for ensuring software quality. However, writing and maintaining high-quality test code is challenging and frequently considered of secondary importance. For production code, many open source and industrial software projects employ code review, a well-established software quality practice, but...
conference paper 2018
Searched for: +
(1 - 20 of 38)

Pages