Comparative Study of Partitioning Methods for Program Testing

S. Kaur and G. Singh (India)


Static Analysis, Dynamic Analysis, Program partitioning, Partitioning Methods.


Static analysis and Dynamic analysis are two common techniques used for detecting bugs in a system. Neither static nor dynamic analysis is individually known to be able to exhaustively analyze all paths in a program in order to find bugs. There is a need to increase the effectiveness of detecting bugs in a system. In program partitioning, the original program is divided into two or more partitions each of which may be individually compiled and executed, and may be statically analyzed separately. Partitioning allows a static analyzer to perform a more thorough analysis of the reduced code, thereby reducing the noise or increasing the effectiveness of static analysis. In addition, partitioning can also be used as one of the means to combine static and dynamic analysis, by pruning out the part of code already covered by dynamic analysis, and subjecting the remaining code to static analysis. This increases the overall effectiveness of analysis of the entire program. Random partitioning strategy has been implemented to perform the task of partitioning. Two Partitioning methods (maximal and minimal) are employed to decide how the partition is generated from the information provided by the partitioning strategy and then in last these methods are compared.

Important Links:

Go Back