A framework for studying and predicting bug propagation through code cloning for mobile apps
A framework for studying and predicting bug propagation through code cloning for mobile apps
批准号:
543819-2019
负责人:
Roy, Chanchal
金额:
$1.82万
依托单位国家:
加拿大
项目类别:
Engage Grants Program
财政年份:
2019
资助国家:
加拿大
项目状态:
已结题
起止时间:
2019-01-01 至 2020-12-31
中文摘要
代码克隆(即复制/粘贴)是一种常见但有争议的软件工程实践,程序员在开发和维护过程中经常会为了重复常见的功能而进行这种实践。这种做法会导致代码库中存在相同或几乎相似的代码片段,也称为代码克隆。两个彼此相似的代码片段形成克隆对。虽然一些研究已经确定了密码克隆的一些积极影响,但其他研究也表明了负面影响的强有力的经验证据。代码克隆可能与代码库中的错误和不一致直接相关。如果代码库中的特定代码片段包含临时隐藏的错误,并且程序员在不知道错误的存在的情况下将该片段复制到其他几个位置,则原始片段中的错误将被传播。考虑到软件错误是任何软件的主要关注点,人们必须拥有工具和框架来处理软件错误。然而,没有关于代码克隆过程中错误传播的频率的研究。如果不研究错误传播的强度,我们就不能正确地认识到代码克隆对软件演化和维护的影响。此外,还没有研究针对移动应用程序的代码克隆传播的错误。考虑到推送交互主要开发移动应用程序,确保他们的软件应用程序不会有许多这样的传播错误是很重要的。然而,到目前为止,他们还没有任何这样的框架可以通过代码克隆来研究错误的传播(通过复制/粘贴现有的有错误的代码片段来传播错误)。此外,重要的是要有一个预测模型,以便该模型可以预测哪些克隆片段在未来的进化过程中可能会遇到这样的传播错误。有了这样的工具集,推送交互将能够清楚地了解他们的移动应用程序中是否存在代码克隆,它们与错误的关系,将发现哪些克隆可能涉及错误,并可以预测有错误的克隆。这将确保其移动软件应用程序得到适当的维护和发展。
英文摘要
Code cloning (i.e., copy/pasting) is a common yet controversial software engineering practice, which is often practised by the programmers during development and maintenance for repeating common functionalities. Such a practice results the existence of identical or nearly similar code fragments, also known as code clones, in a code-base. Two code fragments that are similar to each other form a clone-pair. While a number of studies have identified some positive impacts of code clones, other studies have shown strong empirical evidence of negative impacts too. Code clones can be directly related to bugs and inconsistencies in the code-base. If a particular code fragment in a code-base contains a temporarily hidden bug, and a programmer copies that fragment to several other places being unaware of the presence of the bug, the bug in the original fragment gets propagated. Given that software bugs are of primary concerns of any software, one must need to have tools and frameworks to deal with software bugs. However, there is no study on how frequently bug-propagation occurs during code cloning. Without studying the intensity of bug-propagation we cannot properly realize the impacts of code clones on software evolution and maintenance. Furthermore, there are no studies that investigated the propagated bugs for code clones for mobile applications. Given that Push Interactions mainly develop mobile applications, it is important for Push to make sure that their software applications do not have many of these propagated bugs. However, until now they do not have any such frameworks that can study the bug propagation through code cloning (propagation of bugs through copy/pasting of existing buggy code fragments). Furthermore, it is important to have a prediction model so that the model could predict which clone fragments might experience such propagated bugs in future during the evolution. With such toolset, Push Interactions would be able to have a clear idea about the presence of code clones in their mobile applications, their relationships to bugs, will find which clones are likely involve with bugs, and can predict the buggy clones. These will ensure proper maintenance and evolution of their mobile software applications.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Change, Similarity and Redundancy in Software
-
批准号:RGPIN-2015-04396
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$6.27万
-
财政年份:2021
-
负责人:Roy, Chanchal
-
依托单位:
Change, Similarity and Redundancy in Software
-
批准号:RGPIN-2015-04396
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.13万
-
财政年份:2020
-
负责人:Roy, Chanchal
-
依托单位:
Change, Similarity and Redundancy in Software
-
批准号:RGPIN-2015-04396
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.13万
-
财政年份:2019
-
负责人:Roy, Chanchal
-
依托单位:
Change, Similarity and Redundancy in Software
-
批准号:RGPIN-2015-04396
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.13万
-
财政年份:2018
-
负责人:Roy, Chanchal
-
依托单位:
Change, Similarity and Redundancy in Software
-
批准号:RGPIN-2015-04396
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.13万
-
财政年份:2017
-
负责人:Roy, Chanchal
-
依托单位:
Change, Similarity and Redundancy in Software
-
批准号:RGPIN-2015-04396
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.13万
-
财政年份:2016
-
负责人:Roy, Chanchal
-
依托单位:
Change, Similarity and Redundancy in Software
-
批准号:RGPIN-2015-04396
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.13万
-
财政年份:2015
-
负责人:Roy, Chanchal
-
依托单位:
海外基金