[論文レビュー] 9.6 Million Links in Source Code Comments: Purpose, Evolution, and Decay
本研究では、25,925のGitリポジトリにまたがる960万件のソースコードコメント内のリンクを分析し、その頻度、目的、進化、劣化の程度を調査した。リンクは主にライセンス、ドキュメンテーション、出典表記の目的で使用されているが、約10%がターゲットの進化や更新の欠如により無効化されている。また、オープンソースプロジェクトにおいてリンク修正のプルリクエストが正常にマージされたことから、このようなリンクの脆さと、それらを維持するためのより良いツールの必要性が浮き彫りになった。
Links are an essential feature of the World Wide Web, and source code repositories are no exception. However, despite their many undisputed benefits, links can suffer from decay, insufficient versioning, and lack of bidirectional traceability. In this paper, we investigate the role of links contained in source code comments from these perspectives. We conducted a large-scale study of around 9.6 million links to establish their prevalence, and we used a mixed-methods approach to identify the links' targets, purposes, decay, and evolutionary aspects. We found that links are prevalent in source code repositories, that licenses, software homepages, and specifications are common types of link targets, and that links are often included to provide metadata or attribution. Links are rarely updated, but many link targets evolve. Almost 10% of the links included in source code comments are dead. We then submitted a batch of link-fixing pull requests to open source software repositories, resulting in most of our fixes being merged successfully. Our findings indicate that links in source code comments can indeed be fragile, and our work opens up avenues for future work to address these problems.
研究の動機と目的
- 実世界のソフトウェアリポジトリにおけるソースコードコメント内のリンクの頻度と目的を理解すること。
- リンクおよびそのターゲットが時間経過とともにどのように変化し、リンク劣化がどの程度進行するかを調査すること。
- プルリクエストを通じてオープンソースプロジェクト内の破損リンクを修正する可能性と影響を評価すること。
- コードコメントにおける外部参照のトレーサビリティ、バージョニング、恒久性を向上させるためのツール支援の機会を同定すること。
提案手法
- 7つのプログラミング言語をサポートするパーサーを用いて、25,925のGitリポジトリのソースコードコメントから960万件のリンクを収集した。
- リポジトリ全体にわたるリンクの頻度と劣化率を評価する大規模な定量的分析を実施した。
- リンクのターゲットと目的を分類するために、1,146件のサンプルリンクを対象とした層別的定性的研究を実施した。
- コミット履歴を分析して、リンクの進化およびターゲットの変更の時間的推移を調査した。
- アクティブなオープンソースプロジェクトに9件のリンク修正プルリクエストを提出し、現実世界における修正可能性とメンテナの対応性を評価した。
- 定量的および定性的手法を統合して、リンク劣化、バージョニングの問題、双方向トレーサビリティのギャップを評価した。
実験結果
リサーチクエスチョン
- RQ1実世界のリポジトリにおけるソースコードコメント内のリンクはどの程度一般的か?
- RQ2ソースコードコメント内のリンクが一般的に参照するターゲットの種類と、その目的は何か?
- RQ3リンクおよびそのターゲットは時間経過とともにどのように変化し、どの程度劣化が進行するか?
- RQ4アクティブなオープンソースプロジェクトにおいて、コードコメント内の破損リンクはどの程度プルリクエストで正常に修正可能か?
主な発見
- 調査対象の25,925リポジトリの80%以上が、少なくとも1件のリンクをソースコードコメントに含んでおり、広範な使用が確認された。
- ライセンス、ソフトウェアのホームページ、仕様書がリンクターゲットとして最も一般的であった。
- リンクはメタデータや出典表記の目的で頻繁に使用されており、10%のリンクがターゲットの変更や利用不能により無効化されていることが判明した。
- 更新頻度が低くても、多くの場合でリンクターゲットが進化しており、リンク劣化に大きく寄与していた。
- 提出した9件のリンク修正プルリクエストすべてがプロジェクトメンテナによって正常にマージされた。これにより、このような修正が実現可能で、受け入れられることを示した。
- 本研究では、コードコメント内のリンクがバージョニングの欠如と双方向トレーサビリティの欠如により脆く、ドキュメンテーションとソフトウェア保守にリスクをもたらしていることが明らかになった。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。