Learn More
—Bug fixing accounts for a large amount of the software maintenance resources. Generally, bugs are reported, fixed, verified and closed. However, in some cases bugs have to be reopened. Reopened bugs increase maintenance costs, degrade the overall user-perceived quality of the software and lead to unnecessary rework by busy practitioners. In this paper, we(More)
Bug fixing accounts for a large amount of the software maintenance resources. Generally, bugs are reported, fixed, verified and closed. However, in some cases bugs have to be re-opened. Re-opened bugs increase maintenance costs, degrade the overall user-perceived quality of the software and lead to unnecessary rework by busy practitioners. In this paper, we(More)
Research studying the quality of software applications continues to grow rapidly with researchers building regression models that combine a large number of metrics. However, these models are hard to deploy in practice due to the cost associated with collecting all the needed metrics, the complexity of the models and the black box nature of the models. For(More)
—Current research on code clones tries to address the question whether or not code clones are harmful for the quality of software. As most of these studies are based on the fine-grained analysis of inconsistent changes at the revision level, they capture much of the chaotic and experimental nature inherent to any ongoing software development process.(More)
Development mailing lists play a central role in facilitating communication in open source projects. Since these lists frequently host design and project discussions, knowledgeable contribution to these discussion threads is essential to avoid mis-communication that might slow-down the progress of a project. However, given the sheer volume of emails on(More)
To study the impact of code clones on software quality, researchers typically carry out their studies based on fine-grained analysis of inconsistent changes at the revision level. As a result, they capture much of the chaotic and experimental nature inherent in any ongoing software development process. Analyzing highly fluctuating and short-lived clones is(More)
When changing source code, developers sometimes update the associated comments of the code (a consistent update), while at other times they do not (an inconsistent update). Similarly, developers sometimes only update a comment without its associated code (an inconsistent update). The relationship of such comment update practices and software bugs has never(More)
Localization will play an important role in the Internet of Things (IoT), and will employ several complementary mechanisms, each applicable to Things with different characteristics. This paper investigates the impact of scale and mobility on wireless multi-hop localization mechanisms, which specifically target Things with limited capabilities inhibiting(More)
The popularity of smart objects in our daily life fosters a new generation of applications under the umbrella of the Internet of Things (loT). Such applications are built on a distributed network of heterogeneous context-aware devices, where localization is a key issue. The localization problem is further magnified by loT challenges such as scalability,(More)
—Knowing the position of sensor nodes in an environmental monitoring is useful to identify the location of events. However deploying GPS receivers or other anchor sensors is expensive , since the role of anchor nodes ends after localizing sensor nodes' positions and they are transferred into ordinary sensor nodes. In this paper, we introduce a new(More)