{"title":"Supporting predictive change impact analysis: a control call graph based technique","authors":"L. Badri, M. Badri, Daniel St-Yves","doi":"10.1109/APSEC.2005.100","DOIUrl":null,"url":null,"abstract":"Change impact analysis plays an important role in software maintenance. It allows developers assessing the possible effects of a change. We present, in this paper, a new static technique supporting software change impact analysis. The technique uses a new model based on control call graphs. It captures the control related to components calls and generates the different control flow paths in a program. The generated paths, in a compacted form, are used to identify the potential set of components that may be affected by a given change. Furthermore, the tool developed can be used to perform predictive impact analysis. It can also be used to support regression testing. We performed an experimental study on several Java programs. The reported results show that the proposed technique can predict impact sets that are more accurate than those obtained using traditional approaches based on call graphs.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"60 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"79","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APSEC.2005.100","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 79
Abstract
Change impact analysis plays an important role in software maintenance. It allows developers assessing the possible effects of a change. We present, in this paper, a new static technique supporting software change impact analysis. The technique uses a new model based on control call graphs. It captures the control related to components calls and generates the different control flow paths in a program. The generated paths, in a compacted form, are used to identify the potential set of components that may be affected by a given change. Furthermore, the tool developed can be used to perform predictive impact analysis. It can also be used to support regression testing. We performed an experimental study on several Java programs. The reported results show that the proposed technique can predict impact sets that are more accurate than those obtained using traditional approaches based on call graphs.