723 research outputs found

    Neighborhood Competition in an Old‐Field Plant Community

    Full text link
    Peer Reviewedhttp://deepblue.lib.umich.edu/bitstream/2027.42/119099/1/ecy19876851211.pd

    Clones and Macro co-changes

    Get PDF
    Ideally, any change that modifies the similar parts of a cloned code snippet should be propagated to all its duplicates. In practice however, consistent propagation of changes in clones does not always happen. Current evidence indicates that clone families have a 50% chance of having consistent changes. This paper measures cloning and co-changes at file level as a proxy to assess the frequency of consistent changes. Given that changes to a clone group are not necessarily propagated in the same commit transaction (i.e., late propagations), our analysis uses macro co-changes instead of the traditional definition of co-changes. Macro changes group bursts of changes that are closer among themselves than to other changes, regardless of author or message. Then, macro co-changes are sets of files that change in the same macro changes. Each cloned file is tagged depending on whether any of the files with which it macro co-changes is cloned with it (during the macro change) or not. Contrary to previous results, we discovered that most of the cloned files macro co-change only with files with which they share clones. Thus providing evidence that macro changes are appropriate to study the conjecture of clones requiring co-changes, and indicating that consistent changes might be the norm in cloned code

    Towards Clone Detection in UML Domain Models

    Get PDF

    Revealing Missing Bug-Fixes in Code Clones in Large-Scale Code Bases

    Get PDF
    When a bug is fixed in duplicated code, it is often necessary to modify all duplicates (so-called clones) accordingly.In practice, however, fixes are often incomplete, which causes the bug to remain in one or more of the clones.This paper presents an approach that detects such incomplete bug-fixes in cloned code by analyzing a system's version history to reveal those commits that fix problems.The approach then performs incremental clone detection to reveal those clones that became inconsistent as a result of such a fix.We present results from a case study that analyzed incomplete bug-fixes in six industrial and open-source systems to demonstrate the feasibility and defectiveness of our approach.We identified likely incomplete bug-fixes in all analyzed systems

    Effects of pH on coastal marine phytoplankton

    Get PDF
    Twenty-one studies on the effects of pH on marine phytoplankton were found and are herein reviewed. Under laboratory conditions, the optimum pH for growth is between pH 6.3 and 10. Some species can grow well at a wide range of pH, while others have growth rates that vary greatly over a 0.5 to 1 pH unit change. Different clones of the same species were found to have slightly to strikingly different relationships between pH and growth rate. The pH in typical coastal environments may vary by 1 or more pH units, with over 10% of observations being more than 0.5 units above or below equilibrium pH. This range is great enough, relative to the observed pH effect on growth rate for many species, for seawater pH to affect the growth rate, and hence the timing and abundance of coastal marine phytoplankton species. Effects of pH are not limited to extreme pH conditions. The growth rates of some species are influenced significantly by changes in pH near the equilibrium pH of coastal seawater. Care must be taken in growth experiments with phytoplankton to avoid effects due to pH of the culture media. Eutrophication of coastal waters may amplify the range of pH found in coastal environments

    ASSESSING THE QUALITY OF SOFTWARE DEVELOPMENT TUTORIALS AVAILABLE ON THE WEB

    Get PDF
    Both expert and novice software developers frequently access software development resources available on the Web in order to lookup or learn new APIs, tools and techniques. Software quality is affected negatively when developers fail to find high-quality information relevant to their problem. While there is a substantial amount of freely available resources that can be accessed online, some of the available resources contain information that suffers from error proneness, copyright infringement, security concerns, and incompatible versions. Use of such toxic information can have a strong negative effect on developer’s efficacy. This dissertation focuses specifically on software tutorials, aiming to automatically evaluate the quality of such documents available on the Web. In order to achieve this goal, we present two contributions: 1) scalable detection of duplicated code snippets; 2) automatic identification of valid version ranges. Software tutorials consist of a combination of source code snippets and natural language text. The code snippets in a tutorial can originate from different sources, perhaps carrying stringent licensing requirements or known security vulnerabilities. Developers, typically unaware of this, can reuse these code snippets in their project. First, in this thesis, we present our work on a Web-scale code clone search technique that is able to detect duplicate code snippets between large scale document and source code corpora in order to trace toxic code snippets. As software libraries and APIs evolve over time, existing software development tutorials can become outdated. It is difficult for software developers and especially novices to determine the expected version of the software implicit in a specific tutorial in order to decide whether the tutorial is applicable to their software development environment. To overcome this challenge, in this thesis we present a novel technique for automatic identification of the valid version range of software development tutorials on the Web
    • 

    corecore