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
Link To Document