Patent US5774644A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5774644A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for generating a pair of interoperating communications programs

Assignee: International Business Machines Corp
•
Filing: 1993-12-17
•
Granted: 1998-06-30
•
Expires: 2013-12-17
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Apparatus and an accompanying method for automatically assessing a communicative capability of two communications programs. In particular, two pre-exiting communications programs are compared, errors in each program that inhibit communication between the programs are then determined and resolved. To accomplish this, computer code contained in one communications program is compared to that contained in the other communications program. Determining and resolving such errors ensures that the computer code contained in one communications program is responsive to computer code contained in the other communications program and vice versa. Furthermore, if only one pre-existing communications program is available, this method and apparatus generates a second communications program from the is pre-existing communications program. Consequently, the pre-existing program is fully conversant with the second communications program.

Inventors

  • 👤 Philip William McKinstry

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 12:31
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/30

Claims Analysis

Total Claims: 46
Claim 1
Independent Claim 222 words
A method for automatically testing a pair of communications programs for utilization within a computer network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said method comprising the steps of: (a) comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing step further comprising the steps of: (1) determining whether said first or second communications program is controlling said communication link; (2) processing verbs contained in a first function of the controlling communications program; (3) processing verbs contained in a first function of the non-controlling communications program that is a responsive function to said first function in said controlling communications program; (4) repetitively comparing processed functions and verbs contained in said controlling communications program with responsive processed functions and verbs in said non-controlling communications program; and (5) repetitively comparing processed functions and verbs in said non-controlling communications program with the responsive processed functions and verbs in said controlling communications program; (b) determining errors in said communications programs that would inhibit establishment of said communication link; and (c) resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 2
Independent Claim 222 words
A method for automatically testing a pair of communications programs for utilization within a computer network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said method comprising the steps of: (a) comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing step further comprising the steps of: (1) determining whether said first or second communications program is controlling said communication link; (2) processing verbs contained in a first function of the controlling communications program; (3) processing verbs contained in a first function of the non-controlling communications program that is a responsive function to said first function in said controlling communications program; (4) repetitively comparing processed functions and verbs contained in said controlling communications program with responsive processed functions and verbs in said non-controlling communications program; and (5) repetitively comparing processed functions and verbs in said non-controlling communications program with the responsive processed functions and verbs in said controlling communications program; (b) determining errors in said communications programs that would inhibit establishment of said communication link; and (c) resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 3
Independent Claim 215 words
A method for automatically testing a pair of communications programs for utilization within a computer network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said method comprising the steps of: (a) comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing step further comprising the steps of: (1) finding a first function in said first communications program; (2) finding a first function in said second communications program; (3) determining which first function controls a prospective communication link between said first and said second communications programs; (4) if neither or both first functions control said prospective communication link, producing an error flag; (5) otherwise, naming the communications program having the controlling function as a transaction program and the communications program having the non-controlling function as a partner transaction program; and (6) determining whether said non-controlling first function is responsive to said controlling first function; (b) determining errors in said communications programs that would inhibit establishment of said communication link; and (c) resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 4
Independent Claim 215 words
A method for automatically testing a pair of communications programs for utilization within a computer network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said method comprising the steps of: (a) comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing step further comprising the steps of: (1) finding a first function in said first communications program; (2) finding a first function in said second communications program; (3) determining which first function controls a prospective communication link between said first and said second communications programs; (4) if neither or both first functions control said prospective communication link, producing an error flag; (5) otherwise, naming the communications program having the controlling function as a transaction program and the communications program having the non-controlling function as a partner transaction program; and (6) determining whether said non-controlling first function is responsive to said controlling first function; (b) determining errors in said communications programs that would inhibit establishment of said communication link; and (c) resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 5
Dependent Claim 97 words
The method of claim 2 further comprising the steps of: determining if a next function in said partner transaction program is a controlling function; if said next function is a controlling function, re-naming said partner transaction program as a transaction program and said transaction program as a partner transaction program; otherwise, maintaining the communications program names as presently named; determining whether a next function in said partner transaction program is responsive to said next function in said transaction program; repeating said determining, re-naming, and determining steps until all the functions in said communications programs have been compared.
Claim 6
Dependent Claim 36 words
The method of claim 3 wherein said error determining step further comprises the step of producing an error flag whenever said function in said partner transaction program is non-responsive to said function in said transaction program.
Claim 7
Dependent Claim 45 words
The method of claim 4 wherein said error determining step further comprises the step of producing an error flag whenever said function in either said partner transaction program or said transaction program and a state variable is not appropriate for a current function being processed.
Claim 8
Dependent Claim 15 words
The method of claim 5 wherein said functions are implemented by at least one verb.
Claim 9
Dependent Claim 29 words
The method of claim 6 wherein said error determining step further comprises the step of producing an error flag whenever said verb does not correspond to an appropriate function.
Claim 10
Independent Claim 154 words
A method for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said method comprising the steps of: (a) inspecting computer code contained in said existing communications program to determine whether said existing communications program contains a first controlling function; (b) if said existing communications program contains said first controlling function: (1) prompting a user to select a responsive function for insertion into said second communications program such that said responsive function is responsive to said first controlling function; and (2) inserting appropriate computer code providing said responsive function into said second communications program such that said existing communications program can establish a communication link to said second communications program; and (c) if said existing communications program does not contain said first controlling function, prompting a user to insert said first controlling function into said second communications program.
Claim 11
Independent Claim 154 words
A method for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said method comprising the steps of: (a) inspecting computer code contained in said existing communications program to determine whether said existing communications program contains a first controlling function; (b) if said existing communications program contains said first controlling function: (1) prompting a user to select a responsive function for insertion into said second communications program such that said responsive function is responsive to said first controlling function; and (2) inserting appropriate computer code providing said responsive function into said second communications program such that said existing communications program can establish a communication link to said second communications program; and (c) if said existing communications program does not contain said first controlling function, prompting a user to insert said first controlling function into said second communications program.
Claim 12
Independent Claim 152 words
A method for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said method comprising the steps of: (a) inspecting computer code contained in said existing communications program, said inspecting step comprising the steps of: (1) finding a first function in said existing communications program; (2) determining whether said first function controls the communication link; (3) if said first function does not control said communication link, producing an error flag; and (4) otherwise, naming the existing communications program a transaction program and said second communications program as a partner transaction program. (b) determining appropriate computer code to correspond to said computer code contained in said existing communications program; and (c) inserting said appropriate computer code into said second communications program such that said existing communications program can establish a communication link to said second communications program.
Claim 13
Independent Claim 152 words
A method for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said method comprising the steps of: (a) inspecting computer code contained in said existing communications program, said inspecting step comprising the steps of: (1) finding a first function in said existing communications program; (2) determining whether said first function controls the communication link; (3) if said first function does not control said communication link, producing an error flag; and (4) otherwise, naming the existing communications program a transaction program and said second communications program as a partner transaction program. (b) determining appropriate computer code to correspond to said computer code contained in said existing communications program; and (c) inserting said appropriate computer code into said second communications program such that said existing communications program can establish a communication link to said second communications program.
Claim 14
Dependent Claim 64 words
The method of claim 9 wherein said determining step further comprises the steps of: resolving said error flag by determining a controlling function and verb to be inserted into said second communications program; inserting said controlling function and verb into said second communications program; and naming said second communications program as a transaction program and said existing communications program as a partner transaction program.
Claim 15
Dependent Claim 130 words
The method of claim 10 further comprising steps of: determining if a next function in said partner transaction program is a controlling function; if said next function is a controlling function, re-naming said partner transaction program as a transaction program and said transaction program as a partner transaction program; otherwise, maintaining the present program names; determining whether a next function in said partner transaction program exists; if said next function exists, ensuring that said next function in said partner transaction program is responsive to said next function in said transaction program; if said next function does not exist or said next function is non-responsive, then inserting a responsive next function into said partner transaction program; and repeating the aforementioned steps until all the functions in said programs have been compared.
Claim 16
Dependent Claim 33 words
The method of claim 11 further comprising the step of producing an error flag whenever said function in said partner transaction program is non-responsive to said function in said transaction program or non-existent.
Claim 17
Dependent Claim 40 words
The method of claim 12 further comprising the step of producing an error flag whenever said function in either said partner transaction program or said transaction program and a state variable is not appropriate for a present function being processed.
Claim 18
Dependent Claim 15 words
The method of claim 13 wherein said functions are implemented by at least one verb.
Claim 19
Dependent Claim 24 words
The method of claim 14 further comprising the step of producing an error flag whenever a verb does not correspond to an appropriate function.
Claim 20
Dependent Claim 42 words
The method of claim 15 further comprising the steps of: prompting a user with a menu of alternative program corrections that may be selected to correct an identified error; and inserting a selected program correction into a program having the identified error.
Claim 21
Dependent Claim 15 words
The method of claim 16 wherein said existing and second communications programs are skeletal programs.
Claim 22
Dependent Claim 38 words
The method of claim 17 further comprising the step of compiling source code for each communications program, where each communications program is compiled into pre-defined computer languages that operate on specific pre-defined computer systems running pre-defined operating systems.
Claim 23
Dependent Claim 30 words
The method of claim 18 wherein said compiling step further comprises the step of prompting a user to enter or select parameters for each verb in each of the programs.
Claim 24
Dependent Claim 234 words
Apparatus for automatically testing a pair of communications programs for utilization within a communications network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said apparatus comprising: (a) means for comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing means comprising: (1) means for determining whether said first or second communications program is controlling said communication link; (2) means for processing verbs contained in a first function of said controlling communications program; (3) means for processing verbs contained in a first function of said non-controlling communications program that is a responsive function to said first function in said controlling communications program; (4) means for repetitively comparing processed functions and verbs contained in said controlling communications program with responsive processed functions and verbs in said non-controlling communications program; and (5) means for repetitively comparing processed functions and verbs in said non-controlling communications program with the responsive processed functions and verbs in said controlling communications program; (b) means for determining errors in either said first or second communications programs that would inhibit establishment of the communication link; and (c) means for resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 25
Dependent Claim 234 words
Apparatus for automatically testing a pair of communications programs for utilization within a communications network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said apparatus comprising: (a) means for comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing means comprising: (1) means for determining whether said first or second communications program is controlling said communication link; (2) means for processing verbs contained in a first function of said controlling communications program; (3) means for processing verbs contained in a first function of said non-controlling communications program that is a responsive function to said first function in said controlling communications program; (4) means for repetitively comparing processed functions and verbs contained in said controlling communications program with responsive processed functions and verbs in said non-controlling communications program; and (5) means for repetitively comparing processed functions and verbs in said non-controlling communications program with the responsive processed functions and verbs in said controlling communications program; (b) means for determining errors in either said first or second communications programs that would inhibit establishment of the communication link; and (c) means for resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 26
Dependent Claim 228 words
Apparatus for automatically testing a pair of communications programs for utilization within a communications network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said apparatus comprising: (a) means for comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing means comprising: (1) means for finding a first function in said first communications program; (2) means for finding a first function in said second communications program; (3) means for determining which first function controls a prospective communication link between said first and said second communications programs; (4) means for producing an error flag if neither or both first functions control said prospective communication link; (5) means for naming the communications program having the controlling function as a transaction program and the communications program having the non-controlling function as a partner transaction program; and (6) means for determining whether said non-controlling first function is responsive to said controlling first function; (b) means for determining errors in either said first or second communications programs that would inhibit establishment of the communication link; and (c) means for resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 27
Dependent Claim 228 words
Apparatus for automatically testing a pair of communications programs for utilization within a communications network environment wherein said communications programs are used to establish a communication link between two computer systems, each of which executes one of said communications programs, said apparatus comprising: (a) means for comparing a first communications program with a second communications program to determine whether the communications programs are capable of establishing said communication link, said comparing means comprising: (1) means for finding a first function in said first communications program; (2) means for finding a first function in said second communications program; (3) means for determining which first function controls a prospective communication link between said first and said second communications programs; (4) means for producing an error flag if neither or both first functions control said prospective communication link; (5) means for naming the communications program having the controlling function as a transaction program and the communications program having the non-controlling function as a partner transaction program; and (6) means for determining whether said non-controlling first function is responsive to said controlling first function; (b) means for determining errors in either said first or second communications programs that would inhibit establishment of the communication link; and (c) means for resolving said errors in such a manner as to enable the establishment of said communication link between said first and second communications programs.
Claim 28
Dependent Claim 118 words
The apparatus of claim 21 further comprising: means for determining if a next function in said partner transaction program is a controlling function; means for re-naming said partner transaction program as a transaction program and said transaction program as a partner transaction program, if said next function is determined to be a controlling function; means for maintaining the program names as presently named, if said next function is not determined to be a controlling function; means for determining whether a next function in said partner transaction program is responsive to said next function in said transaction program; means for repetitively engaging said determining, re-naming, and determining means until all the functions in said communications programs have been compared.
Claim 29
Dependent Claim 35 words
The apparatus of claim 22 wherein said error determining means further comprises means for producing an error flag whenever said function in said partner transaction program is non-responsive to said function in said transaction program.
Claim 30
Dependent Claim 44 words
The apparatus of claim 23 wherein said error determining means further comprises means for producing an error flag whenever said function in either said partner transaction program or said transaction program and a state variable is not appropriate for a current function being processed.
Claim 31
Dependent Claim 15 words
The apparatus of claim 24 wherein said functions are implemented by at least one verb.
Claim 32
Dependent Claim 28 words
The apparatus of claim 25 wherein said error determining means further comprises means for producing an error flag whenever said verb does not correspond to an appropriate function.
Claim 33
Dependent Claim 157 words
Apparatus for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said apparatus comprising: (a) means for inspecting computer code contained in said existing communications program to determine whether said existing communications program contains a first controlling function; (b) means responsive to said existing communications program containing said first controlling function for: (1) prompting a user to select a responsive function for insertion into said second communications program such that said responsive function is responsive to said first controlling function; and (2) inserting appropriate computer code providing said responsive function into said second communications program such that said existing communications program can establish a communication link to said second communications program; and (c) means responsive to said existing communications program not containing said first controlling function for prompting said user to insert said first controlling function into said second communications program.
Claim 34
Dependent Claim 157 words
Apparatus for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said apparatus comprising: (a) means for inspecting computer code contained in said existing communications program to determine whether said existing communications program contains a first controlling function; (b) means responsive to said existing communications program containing said first controlling function for: (1) prompting a user to select a responsive function for insertion into said second communications program such that said responsive function is responsive to said first controlling function; and (2) inserting appropriate computer code providing said responsive function into said second communications program such that said existing communications program can establish a communication link to said second communications program; and (c) means responsive to said existing communications program not containing said first controlling function for prompting said user to insert said first controlling function into said second communications program.
Claim 35
Dependent Claim 165 words
Apparatus for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said apparatus comprising: (a) means for inspecting computer code contained in said existing communications program, said inspecting means further comprises: (1) means for finding a first function in said existing communications program; (2) means for determining whether first function controls the communication link; (3) means for producing an error flag if said first function does not control said conversation; and (4) means for naming the existing communications program a transaction program and said second communications program as a partner transaction program if said first function does control said conversation (b) means for determining appropriate computer code to correspond to said computer code contained in said existing communications program; and (c) means for inserting said appropriate computer code into said second communications program such that said existing communications program can establish a communication link to said second communications program.
Claim 36
Dependent Claim 165 words
Apparatus for generating a second communications program from an existing communications program such that the two communications programs provide a communication link within a computer network environment, said apparatus comprising: (a) means for inspecting computer code contained in said existing communications program, said inspecting means further comprises: (1) means for finding a first function in said existing communications program; (2) means for determining whether first function controls the communication link; (3) means for producing an error flag if said first function does not control said conversation; and (4) means for naming the existing communications program a transaction program and said second communications program as a partner transaction program if said first function does control said conversation (b) means for determining appropriate computer code to correspond to said computer code contained in said existing communications program; and (c) means for inserting said appropriate computer code into said second communications program such that said existing communications program can establish a communication link to said second communications program.
Claim 37
Dependent Claim 67 words
The apparatus of claim 28 wherein said determining means further comprises: means for resolving said error flag by determining a controlling function and verbs to be inserted into said second communications program; means for inserting said controlling function and verbs into said second communications program; and means for naming said second communications program as a transaction program and said existing communications program as a partner transaction program.
Claim 38
Dependent Claim 152 words
The apparatus of claim 29 further comprising: means for determining if a next function in said partner transaction program is a controlling function, means for re-naming, if said next function is a controlling function, said partner transaction program as a transaction program and said transaction program as a partner transaction program; means for maintaining, if said next function is not a controlling function, the present program names; means for determining whether a next function in said partner transaction program exists; means for ensuring, if said next function exists, that said next function in said partner transaction program is responsive to said next function in said transaction program; means for inserting, if said next function does not exist or said next function is non-responsive, a responsive next function into said partner transaction program; and means for repetitively engaging each of the aforementioned means until all the functions in said programs have been compared.
Claim 39
Dependent Claim 32 words
The apparatus of claim 30 further comprising means for producing an error flag whenever said function in said partner transaction program is non-responsive to said function in said transaction program or non-existent.
Claim 40
Dependent Claim 39 words
The apparatus of claim 30 further comprising means for producing an error flag whenever said function in either said partner transaction program or said transaction program and a state variable is not appropriate for a present function being processed.
Claim 41
Dependent Claim 15 words
The apparatus of claim 32 wherein said functions are implemented by at least one verb.
Claim 42
Dependent Claim 23 words
The apparatus of claim 33 further comprising means for producing an error flag whenever a verb does not correspond to an appropriate function.
Claim 43
Dependent Claim 43 words
The apparatus of claim 34 further comprising: means for prompting a user with a menu of alternative program corrections that may be selected to correct an identified error; and means for inserting a selected program correction into a program having the identified error.
Claim 44
Dependent Claim 15 words
The apparatus of claim 35 wherein said existing and second communications programs are skeletal programs.
Claim 45
Dependent Claim 37 words
The apparatus of claim 36 further comprising means for compiling source code for each communications program, where each communications program is compiled into pre-defined computer languages that operate on specific pre-defined computer systems running pre-defined operating systems.
Claim 46
Dependent Claim 29 words
The apparatus of claim 37 wherein said compiling means further comprises means for prompting a user to enter or select parameters for each verb in each of the programs.

References Cited (Backward Citations)

US4788637A Cited
US4791558A Cited
US4914619A Cited
US5155847A Cited
US5448738A Cited
US5142528A Cited
US5357627A Cited
US5450589A Cited
US5426773A Cited
US5223788A Cited
US5444716A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-06-29 2001-12-29 2002-06-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-06-29 2005-12-29 2006-06-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-06-29 2009-12-29 2010-06-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag