# US 7,613,803 B2 · Middle-ware interface status tool and method for using same

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,613,803 B2
- Document ID: US7613803B2
- Status: Granted
- Kind: B2
- Application number: 10/456,560
- Filed: 2003-06-09
- Published: 2004-12-09
- Granted: 2009-11-03
- Earliest claimed: 2003-06-09
- Assignees: Lockheed Martin Corporation
- Inventors: Bennett G. Pioso
- Web page: https://patentgrep.com/patent/US7613803B2

## CPC

- G06F 11/324: {Display of status information}
- G06F 11/0709: {in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems}
- G06F 11/0751: {Error or fault detection not based on redundancy (power supply failures G06F1/30; network fault management H04L41/06)}
- G06F 11/0769: {Readable error formats, e.g. cross-platform generic formats, human understandable formats}
- G06F 11/0784: {Routing of error reports, e.g. with a specific transmission path or data flow}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The MIST provides a mechanism to dynamically determine and characterize the status of distributed objects that communicate in a complex, multiple sub-system, and systems integration environment. At run time, objects that should be participating in the environment are determined. A static database or dynamic learning mechanism is used to characterize the platform's interface graph. The status of event channels and servers, and their corresponding interfaces, are continuously determined and depicted. Status is graphically displayed by using various filtering, a circular interface display, and 2-D graph displays to allow a user to rapidly identify the occurrence, source, and impact of system interface faults.

## Claims

### Claim 1

An apparatus for identifying, monitoring and displaying the status of interfaces in a system, comprising:
a middle-ware interface status tool (MIST) that communicates with a system to determine interfaces in the system, monitor the interfaces, and generate an interface status graph (ISG) depicting a status of the interfaces, wherein the system includes at least one sub-system that includes at least one host and a plurality of data objects that are originated, produced and received within the system;
means for retrieving information that characterizes the system;
means for determining information from a name server (NS), wherein the NS includes a hierarchical directory of the plurality of data objects within the system and object references (ORs) for the data objects;
means for receiving event channel status information from one or more event channels, each event channel being operatively connected to the MIST, wherein the event channel status information includes connection status, connection updates, and exception information; and
means for receiving server object status from one or more middle-ware servers, each middle-ware server operatively connected to the MIST,
wherein the ISG has a structure that depicts the interfaces in the system and the middle-ware interface status tool indicates the mode of operation in which the ISG structure is populated with the information that characterizes the system, determined from the hierarchical directory of the NS, and the ORs from the NS.

### Claim 2 (depends on 1)

The apparatus recited in claim 1, further comprising an interface database (IDB), the IDB containing information that characterizes the system, wherein the middle-ware interface status tool includes a static mode of operation.

### Claim 3 (depends on 1)

The apparatus recited in claim 1, further comprising an interface database (IDB), the IDB containing information that characterizes the system, wherein the event channel status information includes recipient sub-system and host information, the middle-ware interface status tool includes a partially dynamic mode of operation, and the recipient sub-system and host information from the one or more event channels.

### Claim 4 (depends on 1)

The apparatus recited in claim 1, wherein the event channel status information includes recipient sub-system and host information and methods, the middle-ware interface status tool includes a dynamic mode of operation, and the recipient sub-system and host information and methods from the at least one event channel.

### Claim 5 (depends on 4)

The apparatus recited in claim 4, wherein the MIST determines the information from the hierarchical directory by walking the hierarchical directory.

### Claim 6 (depends on 1)

The apparatus recited in claim 1, further comprising:
means for retrieving operational information from an operation database (ODB), wherein the ODB comprises a mapping of detected interface faults to operational impacts.

### Claim 7 (depends on 1)

The apparatus recited in claim 1, further comprising:
means for retrieving system information from a system user manual (SUM), wherein the means for retrieving system information comprises a mapping of detected errors to at least one page in the SUM.

### Claim 8 (depends on 1)

The apparatus recited in claim 1, wherein the information that characterizes the system includes information corresponding to: (i) data groups, (ii) middle-ware objects, (iii) object methods, (iv) Providers, (v) Recipients, and (vi) Originators.

### Claim 9 (depends on 1)

The apparatus recited in claim 1, further comprising instrumented management interfaces (IMIs) connecting the middle-ware interface status tool with each event channel.

### Claim 10 (depends on 1)

The apparatus recited in claim 1, wherein the middle-ware interface status tool periodically queries the at least one middle-ware server to verify object processes running and wherein the middle-ware interface status tool uses periodic middle-ware calls to server methods to determine server object status.

### Claim 11 (depends on 1)

The apparatus recited in claim 1, wherein the middle-ware interface status tool includes a graphical user interface (GUI) that displays the ISG.

### Claim 12 (depends on 11)

The apparatus recited in claim 11, wherein the GUI is a circular display.

### Claim 13 (depends on 12)

The apparatus recited in claim 12, wherein the circular display includes succeeding rings that depict succeeding levels of the ISG.

### Claim 14 (depends on 13)

The apparatus recited in claim 13, wherein an innermost ring depicts Originators, Producers, and Recipients and a next succeeding ring depicts sub-systems.

### Claim 15 (depends on 12)

The apparatus recited in claim 12, wherein the circular display includes a circular display pane and a tree filter pane.

### Claim 16 (depends on 15)

The apparatus recited in claim 15, wherein the tree filter pane includes a tree filter that can be expanded or collapsed to permit user selection of the amount of information depicted in the circular display pane.

### Claim 17 (depends on 11)

The apparatus recited in claim 11, wherein content of the GUI is altered by user selection.

### Claim 18 (depends on 11)

The apparatus recited in claim 11, wherein the GUI provides a horizontal slicing mechanism and a vertical slicing mechanism for limiting the display of information in the ISG.

### Claim 19 (depends on 18)

The apparatus recited in claim 18, wherein the horizontal slicing mechanism limits the display in the ISG to status of sub-systems or status of data groups, wherein data groups are related groupings of data objects.

### Claim 20 (depends on 19)

The apparatus recited in claim 19, wherein the vertical slicing mechanism limits the display in the ISG to a status of a selected sub-system or a selected data group.

### Claim 21 (depends on 11)

The apparatus recited in claim 11, wherein the GUI includes one or more display tools chosen from a list consisting of: a link elements tool, a cause-effect analysis tool, a data source status tool, an operation impact tool, and, a user manual link tool.

### Claim 22

An apparatus for identifying, monitoring and displaying the status of interfaces in a system, comprising:
a middle-ware interface status tool (MIST) implemented in a data processing system that communicates with a system to determine interfaces in the system, monitor the interfaces, and generate an interface status graph (ISG) depicting a status of the interfaces, wherein the system includes at least one sub-system that includes at least one host and a plurality of data objects that are originated, produced and received within the system;
an interface database (IDB), operatively connected to the MIST, the IDB comprising information that characterizes the system;
a name server (NS), operatively connected to the MIST, wherein the NS includes a hierarchical directory of the plurality of data objects within the system and IIOP object references (ORs) for the data objects;
one or more event channels, operatively connected to the MIST, wherein each event channel provides event channel status information including connection status, connection updates, and exception information to the MIST; and
one or more middle-ware servers, operatively connected to the MIST, wherein each middle-ware server provides server object status to the MIST.

### Claim 23

A method for monitoring status of a system, comprising steps of:
retrieving information that characterizes a system, the system including at least one sub-system that includes at least one host and a plurality of data objects that are originated, produced and received within the system;
populating data structures of a connectivity interface status graph (ISG) with the retrieved information;
scanning objects and mapping the scanned objects to hosts and subsystems;
updating the data structures of the ISG based on the mapping step;
subscribing to an instrumented management interface (IMI) for each of a plurality of event channels;
pinging Originators and Producers for status information;
monitoring IMI event channels to determine event channel status information;
monitoring servers to determine server object status information; and
updating the ISG with the status information from the pinging and monitoring steps.

### Claim 24 (depends on 23)

The method as recited in claim 23, further comprising a step of:
determining data groups and objects in the system by walking a name server, the name server mapping middle-ware objects to hostname objects, wherein the updating step updates the data structures of the ISG dynamically based on the determined structure.

### Claim 25 (depends on 23)

The method as recited in claim 23, further comprising a step of partially populating an information database (IDB) with the information that characterizes the system prior to the retrieving step.

### Claim 26 (depends on 23)

The method as recited in claim 23, further comprising a step of displaying the ISG on a circular display.

### Claim 27 (depends on 26)

The method as recited in claim 26, wherein the displaying step displays the ISG using colors to indicate a varying severity of alerts in the system.

### Claim 28 (depends on 23)

The method as recited in claim 23, wherein the ISG fully describes data connectivity of the system.

### Claim 29 (depends on 23)

The method as recited in claim 23, wherein the system includes methods, the method further including determining faults in methods in the system.

### Claim 30 (depends on 29)

The method as recited in claim 29, wherein ISG depicts methods connected to data objects, the method further including determining faults in data objects if methods connected to the data objects aggregate one or more faults.

### Claim 31 (depends on 30)

The method as recited in claim 30, wherein the data objects include originator, producer and recipient data objects, the method further including determining faults in recipient data objects if faults exists in methods connected to corresponding originator or producer data objects.

### Claim 32 (depends on 30)

The method as recited in claim 30, wherein the ISG depicts data groups that include one or more functionally related data objects connected to the data group, the method further including determining faults in data groups if data objects connected to the data groups aggregate one or more faults.

### Claim 33 (depends on 32)

The method as recited in claim 32, wherein the ISG depicts at least one host including connected data groups, the method further including determining a fault in the at least one host if data groups connected to the host aggregate one or more faults.

### Claim 34 (depends on 23)

The method as recited in claim 23, wherein the ISG depicts at least one sub-system including connected hosts, the method further including determining a fault in the at least one sub-system if the hosts connected to the at least one sub-system aggregates one or more faults.

### Claim 35 (depends on 23)

The method as recited in claim 23, wherein the monitoring servers step comprises performing server calls.

### Claim 36

A method for monitoring status of a system, comprising:
determining data groups and objects in the system by walking a name server, the name server mapping middle-ware objects to hostname objects;
populating data structures of a connectivity interface status graph (ISG) with the determined structure;
scanning objects and mapping objects to hosts and subsystems;
updating the data structures in the ISG based on the mapping step;
subscribing to an instrumented management interface (IMI) for each of a plurality of event channels;
pinging Originators and Producers for status information;
monitoring IMI event channels to determine event channel status information;
monitoring servers to determine server object status information; and
updating the ISG with the status information from the pinging and monitoring steps.

### Claim 37

An apparatus for identifying, monitoring and displaying the status of interfaces in a system, comprising:
at least one event channel including an instrumented management interface (IMI) for providing status information regarding end-to-end receipt of data in a system:
a middle-ware interface status tool (MIST) implemented in a data processing system that communicates with a system via said IMI to determine interfaces in the system, monitoring the interfaces, and generate an interface status graph (ISG) depicting a status of the interfaces, wherein the system includes at least one sub-system that includes at least one host and a plurality of data objects that are originated, produced and received within the system.

### Claim 38 (depends on 37)

The apparatus as recited in claim 37, further comprising:
an interface database (IDB), operatively connected to the MIST, the IDB comprising information that characterizes the system.

### Claim 39 (depends on 37)

The apparatus as recited in claim 37, further comprising:
a name server (NS), operatively connected to the MIST, wherein the NS includes a hierarchical directory of the plurality of data objects within the system and IIOP object references (ORs) for the data objects.

### Claim 40 (depends on 37)

The apparatus as recited in claim 37, further comprising:
one or more event channels, operatively connected to the MIST, wherein each event channel provides event channel status information including connection status, connection updates, and exception information to the MIST.

### Claim 41 (depends on 37)

The apparatus as recited in claim 37, further comprising:
one or more middle-ware servers, operatively connected to the MIST, wherein each middle-ware server provides server object status to the MIST.
