1,721,090 research outputs found
Six reasons for rejecting an industrial survey paper
Context: Despite their importance in any empirically based research program, industrial surveys are not very common in the software engineering literature. In our experience, a possible reason is their difficulty of publication. Goal: We would like to understand what are the issues that may prevent the publication of papers reporting industrial surveys. Method: In this preliminary work, we analyzed the surveys we conducted and extracted the main lessons learned in terms of issues and problems. Results: Most common critics posed to industrial surveys are: lack of novelty, limitation of the geographic scope and sampling issues. Conclusions: Most objections that led to reject a survey paper actually are not easy to overcome and others are not so serious. These objections could restrain researchers from conducting this type of studies that represent an important methodological asset. For these reasons, we think that reviewers should be less severe to judge survey papers provided that all the limitations of the study are well explained and highlighte
Impact Analysis by means of Unstructured Knowledge in the Context of Bug Repositories
Fixing bugs and implementing enhancements are very relevant activities in a typical software life cycle. They require, as a pre-requisite, the location of a portion of impacted code within a possibly large codebase. This operation can be extremely difficult and time-consuming particularly for developers not much familiar with the software. With that perspective we focus on a simple research question: is it possible to support impact analysis using the information available in software repositories, in particular code comments and version control log? We devised a simple and novel approach, based on Natural Language Processing techniques, that provides support in impact analysis. On the average the proposed approach is very selective with a 99% specificity and achieves a recall of 96% and a precision of 13.6% with respect to a manually built gold standard
Recent Advances in Web Testing
Web applications have become key assets of our society, which depends on web applications for sectors like business, health-care, and public administration. Testing is the most widely used and effective approach to ensure quality and dependability of the software, including web applications. However, web applications are special as compared to traditional software, because they involve dynamic code creation and interpretation and because they implement a specific interaction mode, based on the navigation structure of the web application.
Researchers have investigated approaches and techniques to automate web testing, dealing with the special features of web applications. This chapter contains a comprehensive overview of the research carried out in the last 10 years to support web testing with automated tools. We categorize the works available in the literature according to the specific web testing phase that they address. In particular, we first of all consider the works aiming at building a navigation model of the web application under test. In fact, such a model is often the starting point for test case derivation. Then, we consider the problem of input generation, because the traversal of a selected navigation path requires that appropriate input data are identified and submitted to the server during test execution. Metrics are introduced and used to assess the adequacy of the test cases constructed from the model. The last part of the chapter is devoted to very recent advancements in the area, focused on rich client web applications, which demand a specific approach to modeling and to test case derivation
Going Beyond Counting First Authors in Author Co-citation Analysis
The present study examines one of the fundamental aspects of author co-citation analysis (ACA) - the way co-citation
counts are defined. Co-citation counting provides the data on which all subsequent statistical analyses and mappings
are based, and we compare ACA results based on two different types of co-citation counting - the traditional type that
only counts the first one among a cited work's authors on the one hand and a non-traditional type that takes into
account the first 5 authors of a cited work on the other hand. Results indicate that the picture produced through this non-traditional author co-citation counting contains more coherent author groups and is therefore considerably clearer. However, this picture represents fewer specialties in the research field being studied than that produced through the traditional first-author co-citation counting when the same number of top-ranked authors is selected and analyzed. Reasons for these effects are discussed
Using Multi-Locators to Increase the Robustness of Web Test Cases
The main reason for the fragility of web test cases is the inability of web element locators to work correctly when the web page DOM evolves. Web elements locators are used in web test cases to identify all the GUI objects to operate upon and eventually to retrieve web page content that is compared against some oracle in order to decide whether the test case has passed or not. Hence, web element locators play an extremely important role in web testing and when a web element locator gets broken developers have to spend substantial time and effort to repair it. While algorithms exist to produce robust web element locators to be used in web test scripts, no algorithm is perfect and different algorithms are exposed to different fragilities when the software evolves. Based on such observation, we propose a new type of locator, named multi-locator, which selects the best locator among a candidate set of locators produced by different algorithms. Such selection is based on a voting procedure that assigns different voting weights to different locator generation algorithms. Experimental results obtained on six web applications, for which a subsequent release was available, show that the multi-locator is more robust than the single locators (about -30% of broken locators w.r.t. the most robust kind of single locator) and that the execution overhead required by the multiple queries done with different locators is negligible (2-3% at most)
Empirical evaluation of uml-based model-driven techniques
In this poster, we sketch our research plan about a "massive" empirical evaluation of model-driven techniques following the first two already conducted steps in that respect (an exploratory survey and a series of controlled experiments concerning maintainability). We intend to experiment UML-based model-driven techniques in several contexts (e.g., desktop and Web applications), focusing on several software characteristics (e.g., maintainability and productivity) and employing empirical methods such as controlled experiments, surveys, case studie
Are Web applications more defect-prone than Desktop applications?
A lot of effort in the literature has been devoted to define and validate fault taxonomies and models related to different domains, e.g. Service-oriented and Web systems, and properties, e.g. software quality and security. Nevertheless, few attempts were carried out to understand the specific nature of Web bugs and their distribution among the layers of a typical application’s architecture—presentation layer, business logic and data logic. In this paper, we present an experimental investigation aimed at studying the distribution of bugs among different layers of Web and Desktop applications. The experiment follows a well-defined procedure executed by six bachelor students. Overall, the analysis considers 1,472 bugs belonging to 20 different applications. The experimental study provides strong evidence that the presentation layer in Web applications is more defect-prone than the analogous layer in Desktop applications. An additional factor influencing the distribution of defects is represented by the application domain
Defect location in Traditional vs. Web applications - an empirical investigation
So far, few attempts were carried out in literature to understand the specific nature of Web bugs and their distribution among the tiers of applications' architecture. In this paper we present an experimental investigation conducted with five pairs of homologous applications (Web and traditional) and 780 real bugs taken from SourceForge aimed at studying the distributions of bugs in Web and traditional applications. The investigation follows a rigorous experimental procedure and it was conducted in the context of three bachelor theses. The study results, although preliminarily, provide a clear-cut empirical evidence that the presentation layer in Web applications is more defect-prone when compared to analogous traditional application
Is My Project's Truck Factor Low? Theoretical and Empirical Considerations About the Truck Factor Threshold
The Truck Factor is a simple way, proposed by the agile community, to measure the system's knowledge distribution in a team of developers. It can be used to highlight potential project problems due to the inadequate distribution of the system knowledge. Notwithstanding its relevance, only few studies investigated the Truck Factor and proposed ways to efficiently measure, evaluate and use it. In particular, the effective use of the Truck Factor is limited by the lack of reliable thresholds. In this preliminary paper, we present a theoretical model concerning the Truck Factor and, in particular, we investigate its use to define the maximum achievable Truck Factor value in a project. The relevance of such a value concerns the definition of a reliable threshold for the Truck Factor. Furthermore in the paper, we document an experiment in which we apply the proposed model to real software projects with the aim of comparing the maximum achievable value of the Truck Factor with the unique threshold proposed in literature. The preliminary outcome we achieved shows that the existing threshold has some limitations and problem
- …
