1 changes.{ Inconsistency : con gurations combinations

1 The contextAlthough GDB people’s newer release 4.17 of GNU debugger came up with var-ious new features but it doesn’t integrate with graphic front-end DDD. This isa typical example of Yesterday my program worked, today it does not” prob-lem. In order to nd the cause this problem, di erences between old version’sand newer version’s con gurations could be a great starting state which is alsocalled delta debugging. But one programmer can produce so many changes thatthese di erences are practically too large for any person. But, delta debuggingbecomes an alternative when the di erences can be narrowed down automati-cally. Ness and Ngo’s method for compiler development, ordered changes froma con guration management archive continuously applies the changes until itsregression testing fails.Regression containment’s linear search is not sucient in below scenarios:{ Interference : A combination of several changes.{ Inconsistency : con gurations combinations of changes that do not result ina testable program.{ Granularity : one needs facilities to break changes into smaller chunks.2 Automated Delta Debuggingdd+ algorith, an automated delta debugging techniques is presented which gen-eralize regression containment such that interference, inconsistencies, and gran-ularity problems are dealt. this method includes detects arbitrary interferences,detects individual failure-inducing changes and handles inconsistencies. Our goalis to nd minimal failure-inducing change set.If con guration does not ful ll anyof its speci c properties, then there are probabilities that one of its subsets satisfythem. Thus, below divide and conquer algorithm is based on this idea.2.1 The dd AlgorithmPartition sets into 2 subsets and look out for outcomes, on basis of which youcan decide whether you want to continue search by further partitioning for thatinterference. This dd algorithmic function returns all failure-inducing changes.dd’s time complexity is at worst linear. Extended algorithm dd+, based on 3cases Found – if testing fails, Interference – if testing in subset and it’s complimentpasses and Preference – if testing is unresolved, we repeat the process with 2nsubsets with optimized actions for those 3 cases. dd+ nds a minimal set offailure-inducing changes and all changes that are safe and not failure-inducingare guaranteed to be excluded.2.2 Avoid InconsistencyGrouping Related Changes: It is useful to group changes together whicha ect any speci c function (Syntactic criteria) or that appeared at a samedate (Process criteria).Predicting Test Outcomes: If observation states that speci c con gurationswill be inconsistent, we can predict their test outcomes as unresolved insteadof carrying out that test itself. Predicting the outcomes are especially usefulif we can impose an ordering on the changes. Moreover, this makes dd+algorithm work like binary search algorithm.Conclusions and Future Work: It is recommended that delta debugging be anintegrated part of regression testing. Every time a regression test fails, a deltadebugging program should be started to the rescue. future work of this researchpaper will concentrate on avoiding inconsistencies by exploiting domain knowl-edge. Slice of the program where program execution may be altered by apply-ing the change, determine forward slices then group changes by the commonnodes containing respective slices. Also further studies will validate intertwiningof changes to construction commands, system models, and actual source codemust be handled, possibly by multiversion system models


I'm Viola!

Would you like to get a custom essay? How about receiving a customized one?

Check it out