Analyzing and Forecasting Near-Miss Clones in Evolving Software: An Empirical Study

Effort for development and maintenance of complex large software is believed to have dependency on the amount of duplicated code fragments (code clones) present in code-bases. For example, clones need to be carefully and consistently maintained and/or refactored for preventing accidental error propa...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Zibran, M F, Saha, R K, Asaduzzaman, M, Roy, C K
Format: Tagungsbericht
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 304
container_issue
container_start_page 295
container_title
container_volume
creator Zibran, M F
Saha, R K
Asaduzzaman, M
Roy, C K
description Effort for development and maintenance of complex large software is believed to have dependency on the amount of duplicated code fragments (code clones) present in code-bases. For example, clones need to be carefully and consistently maintained and/or refactored for preventing accidental error propagation. Thus it is important to understand the proportion and evolution of clones in evolving software systems for cost estimation or the like. This paper presents a study on the evolution of near-miss clones at release level in medium to large open source software systems of different types (operating systems, database systems, editors, etc.) written in three different programming languages namely C, C#, and Java. Using a hybrid clone detector, NiCad, we detected both exact and near-miss clones at different levels of similarity. Applying statistical methods we investigated, from different dimensions, the evolution of both exact and near-miss clones, and also forecasted the amount of clones in future releases of the software systems. Our study offers significant insights into the existence and evolution of code clones and their relationships with programming language or paradigm and program size.
doi_str_mv 10.1109/ICECCS.2011.36
format Conference Proceeding
fullrecord <record><control><sourceid>ieee_6IE</sourceid><recordid>TN_cdi_ieee_primary_5773403</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>5773403</ieee_id><sourcerecordid>5773403</sourcerecordid><originalsourceid>FETCH-LOGICAL-i215t-45dec04853a4739a208bd6220bc2972587587fc725b4c59c010dc7dc713aace3</originalsourceid><addsrcrecordid>eNotTstKxDAUjYigjt26cZMf6Jj3w10JHR0YddHZD2maSqTTDkkdqV9vix4O3POAywHgHqM1xkg_bk1pTLUmCOM1FRfgFkmhOaMKk0uQaamwwEQxxSm5BllKn2iGEJpSegOqorfd9BP6D2j7Bm6G6J1N4-LfvI35a0gJmm7ofYKhh-V56M5LWQ3t-G2jf4LFnB5PIQZnO1iNX810B65a2yWf_d8V2G_KvXnJd-_PW1Ps8kAwH3PGG-_QsssySbUlSNWNIATVjmhJuJIzWzermjmuHcKocXImptY6T1fg4e9t8N4fTjEcbZwOXErKEKW_-f9Pgg</addsrcrecordid><sourcetype>Publisher</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype></control><display><type>conference_proceeding</type><title>Analyzing and Forecasting Near-Miss Clones in Evolving Software: An Empirical Study</title><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Zibran, M F ; Saha, R K ; Asaduzzaman, M ; Roy, C K</creator><creatorcontrib>Zibran, M F ; Saha, R K ; Asaduzzaman, M ; Roy, C K</creatorcontrib><description>Effort for development and maintenance of complex large software is believed to have dependency on the amount of duplicated code fragments (code clones) present in code-bases. For example, clones need to be carefully and consistently maintained and/or refactored for preventing accidental error propagation. Thus it is important to understand the proportion and evolution of clones in evolving software systems for cost estimation or the like. This paper presents a study on the evolution of near-miss clones at release level in medium to large open source software systems of different types (operating systems, database systems, editors, etc.) written in three different programming languages namely C, C#, and Java. Using a hybrid clone detector, NiCad, we detected both exact and near-miss clones at different levels of similarity. Applying statistical methods we investigated, from different dimensions, the evolution of both exact and near-miss clones, and also forecasted the amount of clones in future releases of the software systems. Our study offers significant insights into the existence and evolution of code clones and their relationships with programming language or paradigm and program size.</description><identifier>ISBN: 9781612848532</identifier><identifier>ISBN: 1612848532</identifier><identifier>EISBN: 0769543812</identifier><identifier>EISBN: 9780769543819</identifier><identifier>DOI: 10.1109/ICECCS.2011.36</identifier><language>eng</language><publisher>IEEE</publisher><subject>clone evolution ; Cloning ; code clone ; Correlation ; empirical study ; Java ; Linux ; reverse engineering ; software maintenance ; Software systems</subject><ispartof>2011 16th IEEE International Conference on Engineering of Complex Computer Systems, 2011, p.295-304</ispartof><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/5773403$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>309,310,780,784,789,790,2058,27925,54920</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/5773403$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Zibran, M F</creatorcontrib><creatorcontrib>Saha, R K</creatorcontrib><creatorcontrib>Asaduzzaman, M</creatorcontrib><creatorcontrib>Roy, C K</creatorcontrib><title>Analyzing and Forecasting Near-Miss Clones in Evolving Software: An Empirical Study</title><title>2011 16th IEEE International Conference on Engineering of Complex Computer Systems</title><addtitle>iceccs</addtitle><description>Effort for development and maintenance of complex large software is believed to have dependency on the amount of duplicated code fragments (code clones) present in code-bases. For example, clones need to be carefully and consistently maintained and/or refactored for preventing accidental error propagation. Thus it is important to understand the proportion and evolution of clones in evolving software systems for cost estimation or the like. This paper presents a study on the evolution of near-miss clones at release level in medium to large open source software systems of different types (operating systems, database systems, editors, etc.) written in three different programming languages namely C, C#, and Java. Using a hybrid clone detector, NiCad, we detected both exact and near-miss clones at different levels of similarity. Applying statistical methods we investigated, from different dimensions, the evolution of both exact and near-miss clones, and also forecasted the amount of clones in future releases of the software systems. Our study offers significant insights into the existence and evolution of code clones and their relationships with programming language or paradigm and program size.</description><subject>clone evolution</subject><subject>Cloning</subject><subject>code clone</subject><subject>Correlation</subject><subject>empirical study</subject><subject>Java</subject><subject>Linux</subject><subject>reverse engineering</subject><subject>software maintenance</subject><subject>Software systems</subject><isbn>9781612848532</isbn><isbn>1612848532</isbn><isbn>0769543812</isbn><isbn>9780769543819</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>2011</creationdate><recordtype>conference_proceeding</recordtype><sourceid>6IE</sourceid><sourceid>RIE</sourceid><recordid>eNotTstKxDAUjYigjt26cZMf6Jj3w10JHR0YddHZD2maSqTTDkkdqV9vix4O3POAywHgHqM1xkg_bk1pTLUmCOM1FRfgFkmhOaMKk0uQaamwwEQxxSm5BllKn2iGEJpSegOqorfd9BP6D2j7Bm6G6J1N4-LfvI35a0gJmm7ofYKhh-V56M5LWQ3t-G2jf4LFnB5PIQZnO1iNX810B65a2yWf_d8V2G_KvXnJd-_PW1Ps8kAwH3PGG-_QsssySbUlSNWNIATVjmhJuJIzWzermjmuHcKocXImptY6T1fg4e9t8N4fTjEcbZwOXErKEKW_-f9Pgg</recordid><startdate>20110101</startdate><enddate>20110101</enddate><creator>Zibran, M F</creator><creator>Saha, R K</creator><creator>Asaduzzaman, M</creator><creator>Roy, C K</creator><general>IEEE</general><scope>6IE</scope><scope>6IL</scope><scope>CBEJK</scope><scope>RIE</scope><scope>RIL</scope></search><sort><creationdate>20110101</creationdate><title>Analyzing and Forecasting Near-Miss Clones in Evolving Software: An Empirical Study</title><author>Zibran, M F ; Saha, R K ; Asaduzzaman, M ; Roy, C K</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-i215t-45dec04853a4739a208bd6220bc2972587587fc725b4c59c010dc7dc713aace3</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>2011</creationdate><topic>clone evolution</topic><topic>Cloning</topic><topic>code clone</topic><topic>Correlation</topic><topic>empirical study</topic><topic>Java</topic><topic>Linux</topic><topic>reverse engineering</topic><topic>software maintenance</topic><topic>Software systems</topic><toplevel>online_resources</toplevel><creatorcontrib>Zibran, M F</creatorcontrib><creatorcontrib>Saha, R K</creatorcontrib><creatorcontrib>Asaduzzaman, M</creatorcontrib><creatorcontrib>Roy, C K</creatorcontrib><collection>IEEE Electronic Library (IEL) Conference Proceedings</collection><collection>IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume</collection><collection>IEEE Xplore All Conference Proceedings</collection><collection>IEEE Electronic Library (IEL)</collection><collection>IEEE Proceedings Order Plans (POP All) 1998-Present</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Zibran, M F</au><au>Saha, R K</au><au>Asaduzzaman, M</au><au>Roy, C K</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>Analyzing and Forecasting Near-Miss Clones in Evolving Software: An Empirical Study</atitle><btitle>2011 16th IEEE International Conference on Engineering of Complex Computer Systems</btitle><stitle>iceccs</stitle><date>2011-01-01</date><risdate>2011</risdate><spage>295</spage><epage>304</epage><pages>295-304</pages><isbn>9781612848532</isbn><isbn>1612848532</isbn><eisbn>0769543812</eisbn><eisbn>9780769543819</eisbn><abstract>Effort for development and maintenance of complex large software is believed to have dependency on the amount of duplicated code fragments (code clones) present in code-bases. For example, clones need to be carefully and consistently maintained and/or refactored for preventing accidental error propagation. Thus it is important to understand the proportion and evolution of clones in evolving software systems for cost estimation or the like. This paper presents a study on the evolution of near-miss clones at release level in medium to large open source software systems of different types (operating systems, database systems, editors, etc.) written in three different programming languages namely C, C#, and Java. Using a hybrid clone detector, NiCad, we detected both exact and near-miss clones at different levels of similarity. Applying statistical methods we investigated, from different dimensions, the evolution of both exact and near-miss clones, and also forecasted the amount of clones in future releases of the software systems. Our study offers significant insights into the existence and evolution of code clones and their relationships with programming language or paradigm and program size.</abstract><pub>IEEE</pub><doi>10.1109/ICECCS.2011.36</doi><tpages>10</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier ISBN: 9781612848532
ispartof 2011 16th IEEE International Conference on Engineering of Complex Computer Systems, 2011, p.295-304
issn
language eng
recordid cdi_ieee_primary_5773403
source IEEE Electronic Library (IEL) Conference Proceedings
subjects clone evolution
Cloning
code clone
Correlation
empirical study
Java
Linux
reverse engineering
software maintenance
Software systems
title Analyzing and Forecasting Near-Miss Clones in Evolving Software: An Empirical Study
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-01T03%3A20%3A47IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-ieee_6IE&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=proceeding&rft.atitle=Analyzing%20and%20Forecasting%20Near-Miss%20Clones%20in%20Evolving%20Software:%20An%20Empirical%20Study&rft.btitle=2011%2016th%20IEEE%20International%20Conference%20on%20Engineering%20of%20Complex%20Computer%20Systems&rft.au=Zibran,%20M%20F&rft.date=2011-01-01&rft.spage=295&rft.epage=304&rft.pages=295-304&rft.isbn=9781612848532&rft.isbn_list=1612848532&rft_id=info:doi/10.1109/ICECCS.2011.36&rft_dat=%3Cieee_6IE%3E5773403%3C/ieee_6IE%3E%3Curl%3E%3C/url%3E&rft.eisbn=0769543812&rft.eisbn_list=9780769543819&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rft_ieee_id=5773403&rfr_iscdi=true