• DocumentCode
    596238
  • Title

    Understanding the Effects of Code Clones on Modularity in Software Systems

  • Author

    Liguo Yu ; Ramaswamy, Srini ; Vaidyanathan, Aparajithan

  • Author_Institution
    Comput. Sci. & Inf., Indiana Univ. South Bend, South Bend, IN, USA
  • Volume
    2
  • fYear
    2012
  • fDate
    4-7 Dec. 2012
  • Firstpage
    105
  • Lastpage
    111
  • Abstract
    Modularity is an important software design principle. One key point in the design of high quality software products is avoiding code clones, i.e., a portion of source code that is identical or similar to another. During the software evolution process, new code segments are frequently added. It is common to see that code clones accrue with the release of new versions of the product. Such accruement could be more serious in systems software, where new code segments are associated with similar functions or similar drivers. In this paper, we study code clones of two versions of the Linux kernel from the viewpoint of modularity. Our investigation finds that although quite some effort has been spent in Linux to remove some code clones, more code clones are typically added with the release of new versions. This has become a major issue that is potentially causing degradation of the modularity design principle within the Linux kernel.
  • Keywords
    Linux; software engineering; Linux kernel; code clones; high quality software products; modularity design principle; software design principle; software evolution process; software system; source code segments; Cloning; Kernel; Linux; Measurement; Software systems; Linux; code clone; modularity; system software;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering Conference (APSEC), 2012 19th Asia-Pacific
  • Conference_Location
    Hong Kong
  • ISSN
    1530-1362
  • Print_ISBN
    978-1-4673-4930-7
  • Type

    conf

  • DOI
    10.1109/APSEC.2012.49
  • Filename
    6462788