Learn More
ÐA code clone is a code portion in source files that is identical or similar to another. Since code clones are believed to reduce the maintainability of software, several code clone detection techniques and tools have been proposed. This paper proposes a new clone detection technique, which consists of the transformation of input source text and a(More)
The increasing performance-price ratio of computer hardware makes possible to explore a distributed approach at code clone analysis. This paper presents D-CCFinder, a distributed approach at large-scale code clone analysis. D-CCFinder has been implemented with 80 PC workstations in our student laboratory, and a vast collection of open source software with(More)
Open Source communities typically use a software repository to archive various software projects with their source code, mailing list discussions, documentation, bug reports, and so forth. For example, SourceForge currently hosts over seventy thousand Open Source software systems. Because of the size of the rich information content, such repositories offer(More)
To analyze the complexity of object-oriented software, several metrics have been proposed. Among them, Chi-damber and Kemerer's metrics are well-known ones as object-oriented metrics. Also, the effectiveness has been empirically evaluated from the viewpoints of estimating the fault-proneness of object-oriented software. In the evaluations, their metrics(More)
Function point analysis(FPA) was proposed to help measure the size of a computerized business information system. It is widely used in the actual software development. However , it has been reported that since function point counting involves judgment on the part of the counter, some difference for the same product would be caused even in the same(More)
The reuse of free and open source software (FOSS) components is becoming more prevalent. One of the major challenges in finding the right component is finding one that has a license that is e for its intended use. The license of a FOSS component is determined by the licenses of its source code files. In this paper, we describe the challenges of identifying(More)
The number of software systems is increasing at a rapid rate. For example, SourceForge currently has about sixty thousand software systems registered, twenty-two thousand of which were added in the past twelve months. It is important for software evolution to search and use existing similar software systems from software archive. An evolution history of an(More)
Java programs distributed through Internet are now suffering from program theft. It is because Java programs can be easily decomposed into reusable class files and even decompiled into source code by program users. In this paper we propose a practical method that discourages program theft by embedding Java programs with a digital watermark. Embedding a(More)
Collections of already developed programs are important resources for efficient development of reliable software systems. In this paper, we propose a novel method of ranking software components, called <i>Component Rank</i>, based on analyzing actual use relations among the components and propagating the significance through the use relations. We have(More)