中文

Android 应用的多目标改进

软件工程 2023-08-23 v1

摘要

非功能属性(如运行时间或内存使用)对移动应用用户和开发者十分重要,因其影响用户体验。先前关于移动应用非功能属性自动改进的工作未能解决这些属性间固有的权衡。我们提出一种实用方法及首个开源工具 GIDroid (2023),用于 Android 应用的多目标自动改进。具体而言,我们使用遗传改进(Genetic improvement),一种基于搜索的技术,在软件变体空间中导航以寻找改进软件。我们使用基于仿真的测试框架大幅提升搜索速度。GIDroid 包含三种最先进的多目标算法,以及两个缓存方法调用结果的新变异算子。遗传改进依赖测试来验证补丁。先前工作表明开源 Android 应用中的测试稀缺。因此我们为 7 个 Android 应用的 21 个版本编写了测试,创建了性能改进的新基准。我们使用 GIDroid 改进了开发者先前已发现运行时间、内存和带宽使用方面改进的移动应用版本。我们的技术自动重新发现了 64% 的已有改进。我们随后将方法应用于无已知改进的软件当前版本。我们能够在这些应用中将执行时间最多提升 35%,内存使用最多降低 33%。

关键词

引用

@article{arxiv.2308.11387,
  title  = {Multi-Objective Improvement of Android Applications},
  author = {James Callan and Justyna Petke},
  journal= {arXiv preprint arXiv:2308.11387},
  year   = {2023}
}

备注

32 pages, 8 Figures