基于版本比较技术的安卓老化检测方法研究开题报告
2020-02-19 22:18:23
1. 研究目的与意义(文献综述)
随着电子信息技术的迅速发展,人们对于软件功能的要求也越来越多,这就使得软件的规模也越来越庞大,代码量也随之增加。当代码量增加到一定程度时,在进行软件测试的时候就很难把所有的代码全部覆盖一遍,这就在软件开发中埋下了老化的隐患。软件老化是指软件系统中性能或功能的逐步退化[1]。软件老化的主要原因是系统内存泄露、未释放的文件描述符、数据腐烂、存储空间碎片以及舍入误差的累积等[2]。在各种软件中都会存在软件老化的问题。比如商业软件[3],操作系统[4],移动终端[5]。软件系统老化会影响计算机的使用效率,尤其是在要求高可靠性、高实时性的系统中,当系统不能高吞吐量、低延迟长时间可靠地运行,将会造成不可估量的经济损失。
近年来,在研究软件老化方面所使用的主要分析技术有以下几种[6]:
(1)基于模型研究
2. 研究的基本内容与方案
一、基本内容:
(1)熟悉android开源源码。android源代码树位于由google托管的git代码库中,git代码库中包含android源代码的元数据,其中包括对源代码进行的更改以及更改日期相关的元数据。可以根据这些修改的元数据定位到具体的源代码。
(2)在android的众多版本中,寻找出适用于版本比较技术的三个版本进行实验。
3. 研究计划与安排
第一阶段(第1周—第3周)(2019/02/07-2019/02/28):查阅有关的参考资料并完成开题报告;翻译英文资料(不少于5000汉字),并交予指导教师检查。
第二阶段(第4周-第5周)(2019/03/01-2019/03/14):通过查阅git版本库中的修改元数据或其他方式,找出适用于版本比较技术的三个不同的android源码版本。
第三阶段(第6周-第7周)(2019/03/15-2019/03/28):实现linux环境下对运行进程的相关参数收集的脚本和android环境下的内存等相关指标的收集的脚本。
4. 参考文献(12篇以上)
[1] langner, f., amp; andrzejak, a. (2013, may). detecting software aging in a cloud computing framework by comparing development versions. in 2013 ifip/ieee international symposium on integrated network management (im 2013)(pp. 896-899). ieee.
[2] bach, t., andrzejak, a., pannemans, r., amp; lo, d. (2017, november). the impact of coverage on bug density in a large industrial software project. in 2017 acm/ieee international symposium on empirical software engineering and measurement (esem) (pp. 307-313). ieee.
[3] grottke, m., matias, r., amp; trivedi, k. s. (2008, november). the fundamentals of software aging. in 2008 ieee international conference on software reliability engineering workshops (pp. 1-6). ieee.