Patent ID: 7506320
Filing Date: 2009-03-17
Classification: G06F

Abstract:
1. A computer-implement method of analyzing static source code of a computer program, comprising: selecting the source code files to be analyzed; parsing said source code files to determine method declarations, constructor declarations, variable declarations, method invocations and constructor invocations; resolving all method and constructor declarations to determine return type of methods and their signatures; resolving all method invocations having compound statements to determine the data type of both the variables on which said method invocations are invoked and the implicit methods invoked on said methods; determining the classes corresponding to said variables and said implicit methods; resolving the order in which said method invocations are invoked; generating different call trees with each call tree of said different call trees generated for a given start point defined by a selected class and method in said selected class in said source code files using the resolved order in which said methods are invoked by said method in said selected class and storing the data structure of each of said different call trees; generating a sequence diagram from each call tree of said different call trees by using the method calls as messages in the same order as they exist in said call tree; updating selected ones of said sequence diagrams generated by said different call trees and saving the updated data as updated work product files; storing the time stamps of selected source code files; comparing the latest time stamps of selected source code files to be analyzed with the stored time stamps to determine those source code files having a mismatch indicating the source code files have changed; searching through said work products files to determine which files are impacted by those source code files that have changed; and updating the impacted work product files.