2017 IEEE 11th International Workshop on Software Clones (IWSC)

21-21 Feb. 2017

Filter Results

Displaying Results 1 - 16 of 16
  • [Front cover]

    Publication Year: 2017, Page(s):1 - 2
    Request permission for commercial reuse | PDF file iconPDF (311 KB)
    Freely Available from IEEE
  • Author index

    Publication Year: 2017, Page(s): 1
    Request permission for commercial reuse | PDF file iconPDF (21 KB)
    Freely Available from IEEE
  • Table of contents

    Publication Year: 2017, Page(s): 1
    Request permission for commercial reuse | PDF file iconPDF (43 KB)
    Freely Available from IEEE
  • Welcome

    Publication Year: 2017, Page(s):1 - 2
    Request permission for commercial reuse | PDF file iconPDF (35 KB)
    Freely Available from IEEE
  • Detecting and analyzing code clones in HDL

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (152 KB)

    In this paper, we study code clones in hardware description languages (HDLs) in comparison with general programming languages. For this purpose, we have developed a method for detecting code clones in Verilog HDL. A key idea of the proposed method is to convert the Verilog HDL code into the pseudo C++ code, which is then processed by an existing code clone detector for C++. We conducted an experim... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Using compilation/decompilation to enhance clone detection

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (188 KB) | HTML iconHTML

    We study effects of compilation and decompilation to code clone detection in Java. Compilation/decompilation canonicalise syntactic changes made to source code and can be used as source code normalisation. We used NiCad to detect clones before and after decompilation in three open source software systems, JUnit, JFreeChart, and Tomcat. We filtered and compared the clones in the original and decomp... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Rearranging the order of program statements for code clone detection

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (895 KB) | HTML iconHTML

    A code clone is a code fragment identical or similar to another code fragment in source code. Some of code clones are considered as a factor of bug replications and make it more difficult to maintain software. Various code clone detection tools have been proposed so far. However, in most algorithms adopted by existing clone detection tools, if program statements are reordered, they are not detecte... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Web-service for finding cloned files using b-bit minwise hashing

    Publication Year: 2017, Page(s):1 - 2
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (71 KB) | HTML iconHTML

    Source code reuse is a common practice in software development. Since industrial developers may accidentally reuse source files developed by open source software, clone detection tools are used to detect open source files in their closed source project. To execute a clone detection, developers need a database of existing open source software. While a web-service providing clone detection using a c... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Codeease: harnessing method clone structures for reuse

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1001 KB) | HTML iconHTML

    Searching for code examples on the Internet is commonly and frequently performed by software developers but wastes a lot of their time and reduces their productivity. To aid developers with this problem, a system is needed that can allow them to get appropriate code recommendations for reuse within the IDE. In this paper, we present our prototype tool CodeEase, developed as an Eclipse plugin, whic... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Software clones in scratch projects: on the presence of copy-and-paste in computational thinking learning

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (354 KB) | HTML iconHTML

    Computer programming is being introduced in schools worldwide as part of a movement that promotes Computational Thinking (CT) skills among young learners. In general, learners use visual, block-based programming languages to acquire these skills, with Scratch being one of the most popular ones. Similar to professional developers, learners also copy and paste their code, resulting in duplication. I... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Does cloned code increase maintenance effort?

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (261 KB) | HTML iconHTML

    In-spite of a number of in-depth investigations regarding the impact of clones in the maintenance phase there is no concrete answer to the long lived research question, “Does the presence of code clones increase maintenance effort?”. Existing studies have measured different change related metrics for cloned and non-cloned regions, however, no study calculates the maintenance effort s... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Refactoring patterns study in code clones during software evolution

    Publication Year: 2017, Page(s):1 - 2
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (549 KB)

    To investigate how code clones are handled by developers when they perform refactorings during software releases, we performed a longitudinal study on different versions of five Java systems. Our results show that a small proportion of code clones are refactored during the releases and code clones of same clone class are refactored consistently. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Evolution of code clone ratios throughout development history of open-source C and C++ programs

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (244 KB)

    A code clone is a fragment of code which is duplicated throughout the source code of a project. Code clones have been shown to make a project less maintainable because all code clones will share potential bugs and problems. Unlike other code clone research, this study analyzes the code clone ratios over the entire development lifetime of three open-source projects written in C/C++ to understand co... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A technique to detect multi-grained code clones

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (2125 KB) | HTML iconHTML

    It is said that the presence of code clones makes software maintenance more difficult. For such a reason, it is important to understand how code clones are distributed in source code. A variety of code clone detection tools has been developed before now. Recently, some researchers have detected code clones from a large set of source code to find library candidates or overlooked bugs. In general, t... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Enhancing program dependency graph based clone detection using approximate subgraph matching

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (722 KB) | HTML iconHTML

    Software code clone detection techniques and tools play a major role in improving the software quality as well as saving maintenance cost and effort. Program Dependency Graph (PDG) based clone detection techniques have a key advantage over other techniques as they are capable of detecting non-contiguous code clones in addition to contiguous clones. We propose further enhancement to current state o... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Rethinking dependence clones

    Publication Year: 2017, Page(s):1 - 7
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (402 KB) | HTML iconHTML

    Semantic code clones are regions of duplicated code that may appear dissimilar but compute similar functions. Since in general it is algorithmically undecidable whether two or more programs compute the same function, locating all semantic code clones is infeasible. One way to dodge the undecidability issue and find potential semantic clones, using only static information, is to search for recurrin... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.