Font Size: a A A

Change Impact Analysis Based On Concurrent Program Slicing

Posted on:2018-03-16Degree:MasterType:Thesis
Country:ChinaCandidate:H ZhangFull Text:PDF
GTID:2348330542451527Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Software maintenance is an indispensable stage in the evolution of software,software evolution refers to the dynamic behavior of software maintenance and changing in the life cycle of the software system,including the development and testing of new functions.The most basic element is software change.Changes made to software will inevitably cause some unpredicted and undesirable effects to other parts of the software.In order to compensate for the inconsistency caused by the software changes,the other parts of the software also need to be modified.Before the implementation of each modification,we need to make change impact analysis for the program.Change impact analysis is identifying the potential consequences of a change,or estimating what needs to be modified to accomplish a change.Change impact analysis as an important part of software maintenance,it plays an important role in the software development and testing.If the cost of implementing the modification is high,it may be considered to be replaced by other modifications.If the modification is accepted,the elements affected by the modification need to be estimated to guide the scope of testers to test and improve the efficiency of the test.In order to improve the rationality of decision making in the software development process and reduce the cost of regression testing,this thesis studies the concurrent program slicing technology.Based on this,a change impact analysis method based on concurrent program slicing is proposed.This method obtains the dependencies between programs by analyzing the abstract syntax tree of the source code,and analyzes the dependencies among the multi-threads,constructs the multithreaded dependence graph,and use the concurrent program slicing algorithm to calculate the slices.Eventually,the impacted set is calculated according to the slices,then make change impact analysis.Compared with the traditional methods of change impact analysis.The final experiment shows that the impacted set calculated by this method has a better coverage and accuracy for the non-concurrent program,and the method can analyze the concurrent programs,applicability is more extensive.
Keywords/Search Tags:Change impact analysis, Software evolution, Regression test, Concurrent program slicing, Multithreaded dependence graph
PDF Full Text Request
Related items