{"title":"具有混合粒度和变量映射的Java程序的自动修复","authors":"Heling Cao, Zhiying Cui, Miaolei Deng, Yonghe Chu, Yangxia Meng","doi":"10.5755/j01.itc.52.1.30715","DOIUrl":null,"url":null,"abstract":"During the process of software repair, since the granularity of repair is too coarse and the way of fixing ingredient is too simple, the repair efficiency needs to be further improved. To resolve the problems, we propose a Mixed Granularity and Variable Mapping based automatic software Repair (MGVMRepair). We adopt random search algorithm as the framework of program evolution, and utilize the mapping relationship between variables as an auxiliary specification. Firstly, fault localization is used to locate the suspicious statements and to form a list of modification points. Secondly, the ingredient of program repair at statement level is obtained, and the mapping relationship of variables is established. Then, the test case prioritization is improved from the perspective of the modification point. Finally, a program passes all test cases or the program iteration terminates. The experimental results show that MGVMRepair has a higher repair success rate than GenProg, CapGen, SimFix, jKali, jMutRepair and SketchFix on Defects4J.","PeriodicalId":54982,"journal":{"name":"Information Technology and Control","volume":"9 1","pages":"68-84"},"PeriodicalIF":2.0000,"publicationDate":"2023-03-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Automatic Repair of Java Programs with Mixed Granularity and Variable Mapping\",\"authors\":\"Heling Cao, Zhiying Cui, Miaolei Deng, Yonghe Chu, Yangxia Meng\",\"doi\":\"10.5755/j01.itc.52.1.30715\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"During the process of software repair, since the granularity of repair is too coarse and the way of fixing ingredient is too simple, the repair efficiency needs to be further improved. To resolve the problems, we propose a Mixed Granularity and Variable Mapping based automatic software Repair (MGVMRepair). We adopt random search algorithm as the framework of program evolution, and utilize the mapping relationship between variables as an auxiliary specification. Firstly, fault localization is used to locate the suspicious statements and to form a list of modification points. Secondly, the ingredient of program repair at statement level is obtained, and the mapping relationship of variables is established. Then, the test case prioritization is improved from the perspective of the modification point. Finally, a program passes all test cases or the program iteration terminates. The experimental results show that MGVMRepair has a higher repair success rate than GenProg, CapGen, SimFix, jKali, jMutRepair and SketchFix on Defects4J.\",\"PeriodicalId\":54982,\"journal\":{\"name\":\"Information Technology and Control\",\"volume\":\"9 1\",\"pages\":\"68-84\"},\"PeriodicalIF\":2.0000,\"publicationDate\":\"2023-03-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Information Technology and Control\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://doi.org/10.5755/j01.itc.52.1.30715\",\"RegionNum\":4,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q3\",\"JCRName\":\"AUTOMATION & CONTROL SYSTEMS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Information Technology and Control","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.5755/j01.itc.52.1.30715","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"AUTOMATION & CONTROL SYSTEMS","Score":null,"Total":0}
Automatic Repair of Java Programs with Mixed Granularity and Variable Mapping
During the process of software repair, since the granularity of repair is too coarse and the way of fixing ingredient is too simple, the repair efficiency needs to be further improved. To resolve the problems, we propose a Mixed Granularity and Variable Mapping based automatic software Repair (MGVMRepair). We adopt random search algorithm as the framework of program evolution, and utilize the mapping relationship between variables as an auxiliary specification. Firstly, fault localization is used to locate the suspicious statements and to form a list of modification points. Secondly, the ingredient of program repair at statement level is obtained, and the mapping relationship of variables is established. Then, the test case prioritization is improved from the perspective of the modification point. Finally, a program passes all test cases or the program iteration terminates. The experimental results show that MGVMRepair has a higher repair success rate than GenProg, CapGen, SimFix, jKali, jMutRepair and SketchFix on Defects4J.
期刊介绍:
Periodical journal covers a wide field of computer science and control systems related problems including:
-Software and hardware engineering;
-Management systems engineering;
-Information systems and databases;
-Embedded systems;
-Physical systems modelling and application;
-Computer networks and cloud computing;
-Data visualization;
-Human-computer interface;
-Computer graphics, visual analytics, and multimedia systems.