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 :
بازگشت