Standard

Detecting Near Duplicates in Software Documentation. / Luciv, D.; Koznov, D.; Chernishev, G. A.; Terekhov, A. N.; Romanovsky, K. Yu; Grigoriev, D. A.

в: Programming and Computer Software, Том 44, № 5, 09.2018, стр. 335-343.

Результаты исследований: Научные публикации в периодических изданияхстатьяРецензирование

Harvard

APA

Vancouver

Author

BibTeX

@article{b9c32f4a94d940069921b8c68c5379de,
title = "Detecting Near Duplicates in Software Documentation",
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.",
keywords = "software documentation, near duplicates, documentation reuse, software clone detection",
author = "D. Luciv and D. Koznov and Chernishev, {G. A.} and Terekhov, {A. N.} and Romanovsky, {K. Yu} and Grigoriev, {D. A.}",
year = "2018",
month = sep,
doi = "10.1134/S0361768818050079",
language = "Английский",
volume = "44",
pages = "335--343",
journal = "Programming and Computer Software",
issn = "0361-7688",
publisher = "МАИК {"}Наука/Интерпериодика{"}",
number = "5",

}

RIS

TY - JOUR

T1 - Detecting Near Duplicates in Software Documentation

AU - Luciv, D.

AU - Koznov, D.

AU - Chernishev, G. A.

AU - Terekhov, A. N.

AU - Romanovsky, K. Yu

AU - Grigoriev, D. A.

PY - 2018/9

Y1 - 2018/9

N2 - 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.

AB - 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.

KW - software documentation

KW - near duplicates

KW - documentation reuse

KW - software clone detection

U2 - 10.1134/S0361768818050079

DO - 10.1134/S0361768818050079

M3 - статья

VL - 44

SP - 335

EP - 343

JO - Programming and Computer Software

JF - Programming and Computer Software

SN - 0361-7688

IS - 5

ER -

ID: 76241604