System, method and memory medium for detecting differences between graphical programs
DCFirst Claim
1. A computer-implemented method for detecting differences between first and second graphical programs, wherein the method executes on a computer including a display, the method comprising:
- determining differences between said first graphical program and said second graphical program, wherein said first graphical program and said second gaphical program each comprise graphical code; and
displaying an indication of said differences on the display;
wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program.
1 Assignment
Litigations
0 Petitions
Reexaminations
Accused Products
Abstract
A method for detecting differences between two graphical programs. The graphical programs comprise graphical code. The graphical programs may include objects, preferably arranged as a user interface panel, including controls and indicators, and a block diagram, including graphical code function blocks connected together as a data flow program. Directed graph data structures are created to represent the graphical programs, wherein the vertices of the graphs are the objects of the graphical programs and the edges of the graphs are data flow signals of the block diagram and/or hierarchical relationships of the user interface panel objects. The objects of the two graphical programs are heuristically matched together using a scoring approach. The scores are stored in a match matrix and indicate a degree of similarity between an object in the first graphical program and an object in the second graphical program according to one or more criteria. The matching criteria include object type, object connectivity and object attributes. The match matrix is resolved to generate a 1:1 or 1:0 correspondence between the objects in the first and second graphical programs based on the match scores. The matching information is used to determine differences in the two graphical programs. First, using the matching information and a compare engine, the objects are grouped into exact matching subgraphs and then into non-exact matching subgraphs. Non-exact matching subgraphs are matched and merged where possible using transitivity. Objects in the non-exact matching subgraphs are compared using the compare engine to detect additional differences. All detected differences are stored and displayed for the user. The differences may be displayed in various manners such as drawing a circle around the differences, highlighting the differences by color, and/or displaying a textual description of the differences.
125 Citations
92 Claims
-
1. A computer-implemented method for detecting differences between first and second graphical programs, wherein the method executes on a computer including a display, the method comprising:
-
determining differences between said first graphical program and said second graphical program, wherein said first graphical program and said second gaphical program each comprise graphical code; and displaying an indication of said differences on the display; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
42. A computer-implemented method for detecting differences between first and second graphical programs, wherein the method executes on a computer including a display, the method comprising:
-
creating the first graphical program, wherein the first graphical program comprises first graphical code; creating the second graphical program, wherein the second graphical program comprises second graphical code; determining differences between said first graphical program and said second graphical program; and displaying an indication of said differences on the display; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program. - View Dependent Claims (43, 44, 45, 46)
-
-
47. A computer-implemented method for detecting differences between first and second graphical programs, wherein the method executes on a computer including a display, the method comprising:
-
creating the first graphical program, wherein the first graphical program comprises first graphical code, wherein the first graphical program comprises a first plurality of objects; creating the second graphical program, wherein the second graphical program comprises second graphical code, wherein the second graphical program comprises a second plurality of objects; determining differences between said first plurality of objects in said first graphical program and said second plurality of objects in said second graphical program; and displaying an indication of said differences on the display; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program.
-
-
48. A computer-implemented method for detecting differences between first and second graphical programs, wherein the method executes on a computer including a display, the method comprising:
-
creating the first graphical program, wherein the first graphical program comprises first graphical code, wherein the first graphical program comprises a first plurality of objects; creating the second graphical program, wherein the second graphical program comprises second graphical code, wherein the second graphical program comprises a second plurality of objects; matching said first plurality of objects of said first graphical program with said second plurality of objects of said second graphical program; determining differences between said first graphical program and said second graphical program in response to said matching; and displaying an indication of said differences on the display; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program.
-
-
49. A computer-implemented method for detecting differences between first and second graphical programs, wherein the method executes on a computer including a display, wherein the first and second graphical programs comprise graphical code, wherein the first graphical program comprises a first plurality of objects and wherein the second graphical program comprises a second plurality of objects, the method comprising:
-
matching said first plurality of objects of said first graphical program with said second plurality of objects of said second graphical program; determining differences between said first graphical program and said second graphical program in response to said matching; and displaying an indication of said differences on the display screen; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program.
-
-
50. A computer system for detecting differences between first and second graphical programs, comprising:
-
a central processing unit (CPU); a display coupled to the CPU; and a memory medium coupled to the CPU which stores said first and second graphical programs, wherein each of the said first and second graphical programs comprises graphical code, wherein the memory medium also stores a difference program for detecting differences between said first and second graphical programs; wherein said CPU is operable to execute said difference program to determine differences between said first graphical program and said second graphical program and to display an indication of said differences on the display; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program. - View Dependent Claims (51, 52, 53, 54, 55)
-
-
56. A computer system for detecting differences between first and second graphical programs, comprising:
-
a central processing unit (CPU); a display coupled to the CPU; and a memory medium coupled to the CPU which stores said first and second graphical programs, wherein each of the said first and second graphical programs comprises graphical code, wherein the first graphical program comprises a first plurality of objects and wherein the second graphical program comprises a second plurality of objects, wherein the memory medium also stores a difference program for detecting differences between said first and second graphical programs; wherein said CPU is operable to execute said difference program to; match said first plurality of objects of said first graphical program with said second plurality of objects of said second graphical program; determine differences between said first graphical program and said second graphical program in response to the matching; and display an indication of said differences on the display; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program.
-
-
57. A computer-readable memory medium comprising program instructions for detecting differences between first and second graphical programs, wherein the program instructions execute on a computer including a display, wherein the program instructions are executable to implement:
-
determining differences between said first graphical program and said second graphical program, wherein said first graphical program and said second gaphical program each comprise graphical code; and displaying an indication of said differences on the display; wherein said differences are used to evaluate at least one of the first graphical program and the second graphical program. - View Dependent Claims (58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92)
-
Specification