[論文レビュー] Datasets of Android Applications: a Literature Review
本文献レビューでは、Androidアプリケーションの31のデータセットを特定・分類し、ソースコードの入手可能性、バージョン管理へのアクセス、APKの含む有無、アプリストアへのリンクといった特徴を評価している。その結果、研究者がソフトウェア工学的実践に関する研究を進めるにあたり、ソースコードやバージョン管理が欠落しているデータセットが大多数を占めているという深刻なギャップが明らかになった。これは、Androidアプリ分析分野におけるこうしたデータへの需要が高まる中で顕著である。
Mobile phones and tablets have become the most widely used computing devices, with a large predominance of the Android platform. As a natural evolution, the development of Android applications has surged and has become a major field of study, with research efforts ranging from energy efficiency, to code smells, performance, maintainability, security, etc. These kind of challenges ask for dedicated solutions, tools, and datasets. This survey identifies and reviews 31 existing datasets of Android applications and classifies each of them according to key features, such as the total number of apps it contains, whether the commit history of the apps is available, whether it focusses on the source code or on the executable binaries of the apps, the sources used for building the dataset, etc. This study can benefit both the experienced and the novice researcher interested on doing research on Android apps, which can use the results of our study as a map for identifying the most suitable datasets for their research objectives.
研究の動機と目的
- モバイルソフトウェア工学分野の研究を支援するため、既存のAndroidアプリケーションデータセットを特定・分類すること。
- ソースコードの入手可能性、バージョン管理へのアクセス、APKの含む有無といった重要な特徴に基づいて、データセットを評価すること。
- セキュリティ、パフォーマンス、保守性といった研究分野ごとの適切さを評価すること。
- 特に特許権のあるアプリ分析を対象とした研究において、ソースコードおよびバージョン管理リポジトリを含むデータセットの不足を浮き彫りにすること。
- 研究者が自らの研究目的に最も適したデータセットを選定できるようにするための参考マップとしての役割を果たすこと。
提案手法
- 2017年から2018年にかけてGoogle Scholarを用いたキーワード検索とスノーボール法を繰り返し適用して文獻的レビューを実施した。
- タイトルおよび要旨のフィルタリングを実施し、Androidアプリケーションデータセットを生成または使用している論文を特定した。
- 引用関係ネットワークを両方向(引用元および引用先)にわたって追跡し、関連研究のデータセットを拡張した。
- アプリ数、ソースコードへのアクセス、バージョン管理、APKの有無、アプリストアへのリンクといった主要なデータセット特性を表形式で収集・要約した。
- データソース(例:F-Droid、Google Play、マルウェアフォーラム)および時間的スコープに応じてデータセットを分類した。
- 静的解析、動的解析、開発実践のマイニングといった特定の研究ニーズに応じた、各データセットの完全性および有用性を評価した。
実験結果
リサーチクエスチョン
- RQ1どのAndroidアプリケーションデータセットが公開されており、そのコアな特徴は何か?
- RQ2既存のデータセットは、どの程度ソースコードおよびバージョン管理リポジトリへのアクセスを提供しているか?
- RQ3アプリ数、データタイプ(ソースコード対バイナリ)およびアプリストアへのリンク性の観点から、データセットはどのように異なるか?
- RQ4現在のデータセットには、Androidアプリにおけるソフトウェア工学的実践に関する研究を支援するうえでどのような制限があるか?
- RQ5セキュリティ、パフォーマンス、保守性といった特定の研究分野において、どのデータセットが最も適しているか?
主な発見
- 31のデータセットのうちわずか12(39%)のみがソースコードへのアクセスを提供しており、バージョン管理リポジトリを含むのはたった7(23%)にとどまっている。
- 最大のデータセットであるAllixら[4]は580万件を超えるAPKを含むが、ソースコードおよびバージョン管理は存在しない。
- ソースコードおよびバージョン管理を含むデータセット、たとえばKrutzら[17]およびGeigerら[12]は、1万件未満のアプリしか含まず、スケーラビリティに制限がある。
- F-Droidは、バージョン管理付きのオープンソースAndroidアプリの最も一般的なソースではあるが、ホスティングが停止しているため、データセットの入手可能性が一貫しない。
- 11のデータセット(35%)のみが、レーティング、レビュー、ダウンロード数といった追加メタデータを入手できるアプリストアへのリンクを提供している。
- 本研究では、コミット履歴やソースコードが欠落していることから、開発実践の縦断的分析を支援するデータセットが極めて少ないという顕著な研究ギャップを同定した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。