Detecting Near Duplicates in Software Documentation
Contemporary software documentation is as complicated as the software itself. During its lifecycle, the documentation accumulates a lot of near duplicate fragments, i.e. chunks of text that were copied from a single source and were later modified in different ways. Such near duplicates decrease docu...
Gespeichert in:
Veröffentlicht in: | arXiv.org 2017-11 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | |
---|---|
container_issue | |
container_start_page | |
container_title | arXiv.org |
container_volume | |
creator | Luciv, D V Koznov, D V Chernishev, G A Terekhov, A N |
description | Contemporary software documentation is as complicated as the software itself. During its lifecycle, the documentation accumulates a lot of near duplicate fragments, i.e. chunks of text that were copied from a single source and were later modified in different ways. Such near duplicates decrease documentation quality and thus hamper its further utilization. At the same time, they are hard to detect manually due to their fuzzy nature. In this paper we give a formal definition of near duplicates and present an algorithm for their detection in software documents. This algorithm is based on the exact software clone detection approach: the software clone detection tool Clone Miner was adapted to detect exact duplicates in documents. Then, our algorithm uses these exact duplicates to construct near ones. We evaluate the proposed algorithm using the documentation of 19 open source and commercial projects. Our evaluation is very comprehensive - it covers various documentation types: design and requirement specifications, programming guides and API documentation, user manuals. Overall, the evaluation shows that all kinds of software documentation contain a significant number of both exact and near duplicates. Next, we report on the performed manual analysis of the detected near duplicates for the Linux Kernel Documentation. We present both quantative and qualitative results of this analysis, demonstrate algorithm strengths and weaknesses, and discuss the benefits of duplicate management in software documents. |
doi_str_mv | 10.48550/arxiv.1711.04705 |
format | Article |
fullrecord | <record><control><sourceid>proquest_arxiv</sourceid><recordid>TN_cdi_arxiv_primary_1711_04705</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2076319055</sourcerecordid><originalsourceid>FETCH-LOGICAL-a525-59761f245d87e57c37adebab536cae0cb1a53aae72c9cb2636b9dc6b29ae964b3</originalsourceid><addsrcrecordid>eNotz0tLw0AUBeBBECy1P8CVAdeJ88idSZbS-IKiC7sPdyY3MqVN4mTi498bW1dnczicj7ErwbO8AOC3GL79ZyaMEBnPDYcztpBKibTIpbxgq3Hccc6lNhJALZiqKJKLvntPXghDUk3D3juMNCa-S976Nn5hoKTq3XSgLmL0fXfJzlvcj7T6zyXbPtxv10_p5vXxeX23SREkpFAaLVqZQ1MYAuOUwYYsWlDaIXFnBYJCJCNd6azUStuycdrKEqnUuVVLdn2aPYrqIfgDhp_6T1YfZXPj5tQYQv8x0RjrXT-Fbv5US260EiWfkb880FDE</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2076319055</pqid></control><display><type>article</type><title>Detecting Near Duplicates in Software Documentation</title><source>arXiv.org</source><source>Free E- Journals</source><creator>Luciv, D V ; Koznov, D V ; Chernishev, G A ; Terekhov, A N</creator><creatorcontrib>Luciv, D V ; Koznov, D V ; Chernishev, G A ; Terekhov, A N</creatorcontrib><description>Contemporary software documentation is as complicated as the software itself. During its lifecycle, the documentation accumulates a lot of near duplicate fragments, i.e. chunks of text that were copied from a single source and were later modified in different ways. Such near duplicates decrease documentation quality and thus hamper its further utilization. At the same time, they are hard to detect manually due to their fuzzy nature. In this paper we give a formal definition of near duplicates and present an algorithm for their detection in software documents. This algorithm is based on the exact software clone detection approach: the software clone detection tool Clone Miner was adapted to detect exact duplicates in documents. Then, our algorithm uses these exact duplicates to construct near ones. We evaluate the proposed algorithm using the documentation of 19 open source and commercial projects. Our evaluation is very comprehensive - it covers various documentation types: design and requirement specifications, programming guides and API documentation, user manuals. Overall, the evaluation shows that all kinds of software documentation contain a significant number of both exact and near duplicates. Next, we report on the performed manual analysis of the detected near duplicates for the Linux Kernel Documentation. We present both quantative and qualitative results of this analysis, demonstrate algorithm strengths and weaknesses, and discuss the benefits of duplicate management in software documents.</description><identifier>EISSN: 2331-8422</identifier><identifier>DOI: 10.48550/arxiv.1711.04705</identifier><language>eng</language><publisher>Ithaca: Cornell University Library, arXiv.org</publisher><subject>Algorithms ; Commercial buildings ; Computer Science - Software Engineering ; Documentation ; Qualitative analysis ; Reproduction (copying) ; Requirements specifications ; Software</subject><ispartof>arXiv.org, 2017-11</ispartof><rights>2017. This work is published under http://arxiv.org/licenses/nonexclusive-distrib/1.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.</rights><rights>http://arxiv.org/licenses/nonexclusive-distrib/1.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,776,780,881,27902</link.rule.ids><backlink>$$Uhttps://doi.org/10.48550/arXiv.1711.04705$$DView paper in arXiv$$Hfree_for_read</backlink><backlink>$$Uhttps://doi.org/10.1134/S0361768818050079$$DView published paper (Access to full text may be restricted)$$Hfree_for_read</backlink></links><search><creatorcontrib>Luciv, D V</creatorcontrib><creatorcontrib>Koznov, D V</creatorcontrib><creatorcontrib>Chernishev, G A</creatorcontrib><creatorcontrib>Terekhov, A N</creatorcontrib><title>Detecting Near Duplicates in Software Documentation</title><title>arXiv.org</title><description>Contemporary software documentation is as complicated as the software itself. During its lifecycle, the documentation accumulates a lot of near duplicate fragments, i.e. chunks of text that were copied from a single source and were later modified in different ways. Such near duplicates decrease documentation quality and thus hamper its further utilization. At the same time, they are hard to detect manually due to their fuzzy nature. In this paper we give a formal definition of near duplicates and present an algorithm for their detection in software documents. This algorithm is based on the exact software clone detection approach: the software clone detection tool Clone Miner was adapted to detect exact duplicates in documents. Then, our algorithm uses these exact duplicates to construct near ones. We evaluate the proposed algorithm using the documentation of 19 open source and commercial projects. Our evaluation is very comprehensive - it covers various documentation types: design and requirement specifications, programming guides and API documentation, user manuals. Overall, the evaluation shows that all kinds of software documentation contain a significant number of both exact and near duplicates. Next, we report on the performed manual analysis of the detected near duplicates for the Linux Kernel Documentation. We present both quantative and qualitative results of this analysis, demonstrate algorithm strengths and weaknesses, and discuss the benefits of duplicate management in software documents.</description><subject>Algorithms</subject><subject>Commercial buildings</subject><subject>Computer Science - Software Engineering</subject><subject>Documentation</subject><subject>Qualitative analysis</subject><subject>Reproduction (copying)</subject><subject>Requirements specifications</subject><subject>Software</subject><issn>2331-8422</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2017</creationdate><recordtype>article</recordtype><sourceid>BENPR</sourceid><sourceid>GOX</sourceid><recordid>eNotz0tLw0AUBeBBECy1P8CVAdeJ88idSZbS-IKiC7sPdyY3MqVN4mTi498bW1dnczicj7ErwbO8AOC3GL79ZyaMEBnPDYcztpBKibTIpbxgq3Hccc6lNhJALZiqKJKLvntPXghDUk3D3juMNCa-S976Nn5hoKTq3XSgLmL0fXfJzlvcj7T6zyXbPtxv10_p5vXxeX23SREkpFAaLVqZQ1MYAuOUwYYsWlDaIXFnBYJCJCNd6azUStuycdrKEqnUuVVLdn2aPYrqIfgDhp_6T1YfZXPj5tQYQv8x0RjrXT-Fbv5US260EiWfkb880FDE</recordid><startdate>20171113</startdate><enddate>20171113</enddate><creator>Luciv, D V</creator><creator>Koznov, D V</creator><creator>Chernishev, G A</creator><creator>Terekhov, A N</creator><general>Cornell University Library, arXiv.org</general><scope>8FE</scope><scope>8FG</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>HCIFZ</scope><scope>L6V</scope><scope>M7S</scope><scope>PIMPY</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20171113</creationdate><title>Detecting Near Duplicates in Software Documentation</title><author>Luciv, D V ; Koznov, D V ; Chernishev, G A ; Terekhov, A N</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a525-59761f245d87e57c37adebab536cae0cb1a53aae72c9cb2636b9dc6b29ae964b3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2017</creationdate><topic>Algorithms</topic><topic>Commercial buildings</topic><topic>Computer Science - Software Engineering</topic><topic>Documentation</topic><topic>Qualitative analysis</topic><topic>Reproduction (copying)</topic><topic>Requirements specifications</topic><topic>Software</topic><toplevel>online_resources</toplevel><creatorcontrib>Luciv, D V</creatorcontrib><creatorcontrib>Koznov, D V</creatorcontrib><creatorcontrib>Chernishev, G A</creatorcontrib><creatorcontrib>Terekhov, A N</creatorcontrib><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Engineering Collection</collection><collection>Engineering Database</collection><collection>Publicly Available Content Database</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>Engineering Collection</collection><collection>arXiv Computer Science</collection><collection>arXiv.org</collection><jtitle>arXiv.org</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Luciv, D V</au><au>Koznov, D V</au><au>Chernishev, G A</au><au>Terekhov, A N</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Detecting Near Duplicates in Software Documentation</atitle><jtitle>arXiv.org</jtitle><date>2017-11-13</date><risdate>2017</risdate><eissn>2331-8422</eissn><abstract>Contemporary software documentation is as complicated as the software itself. During its lifecycle, the documentation accumulates a lot of near duplicate fragments, i.e. chunks of text that were copied from a single source and were later modified in different ways. Such near duplicates decrease documentation quality and thus hamper its further utilization. At the same time, they are hard to detect manually due to their fuzzy nature. In this paper we give a formal definition of near duplicates and present an algorithm for their detection in software documents. This algorithm is based on the exact software clone detection approach: the software clone detection tool Clone Miner was adapted to detect exact duplicates in documents. Then, our algorithm uses these exact duplicates to construct near ones. We evaluate the proposed algorithm using the documentation of 19 open source and commercial projects. Our evaluation is very comprehensive - it covers various documentation types: design and requirement specifications, programming guides and API documentation, user manuals. Overall, the evaluation shows that all kinds of software documentation contain a significant number of both exact and near duplicates. Next, we report on the performed manual analysis of the detected near duplicates for the Linux Kernel Documentation. We present both quantative and qualitative results of this analysis, demonstrate algorithm strengths and weaknesses, and discuss the benefits of duplicate management in software documents.</abstract><cop>Ithaca</cop><pub>Cornell University Library, arXiv.org</pub><doi>10.48550/arxiv.1711.04705</doi><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | EISSN: 2331-8422 |
ispartof | arXiv.org, 2017-11 |
issn | 2331-8422 |
language | eng |
recordid | cdi_arxiv_primary_1711_04705 |
source | arXiv.org; Free E- Journals |
subjects | Algorithms Commercial buildings Computer Science - Software Engineering Documentation Qualitative analysis Reproduction (copying) Requirements specifications Software |
title | Detecting Near Duplicates in Software Documentation |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-10T02%3A15%3A11IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_arxiv&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Detecting%20Near%20Duplicates%20in%20Software%20Documentation&rft.jtitle=arXiv.org&rft.au=Luciv,%20D%20V&rft.date=2017-11-13&rft.eissn=2331-8422&rft_id=info:doi/10.48550/arxiv.1711.04705&rft_dat=%3Cproquest_arxiv%3E2076319055%3C/proquest_arxiv%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2076319055&rft_id=info:pmid/&rfr_iscdi=true |