# US 2017/0286264 A1 · System and method for data element tracing

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

- Number: US 2017/0286264 A1
- Document ID: US20170286264A1
- Status: Published application
- Kind: A1
- Application number: 15/471,982
- Filed: 2017-03-28
- Published: 2017-10-05
- Earliest claimed: 2016-03-29
- Assignees: Infosys Limited
- Applicants: Infosys Limited
- Inventors: Pradeep Kumar Kondagula Surnarayana
- Web page: https://patentgrep.com/patent/US20170286264A1

## CPC

- G06F 11/3636: {by tracing the execution of the program}
- G06F 11/34: Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation {; Recording or statistical evaluation of user activity, e.g. usability assessment}
- G06F 11/3466: {Performance evaluation by tracing or monitoring}
- G06F 11/3608: {using formal methods, e.g. model checking, abstract interpretation (theorem proving G06N5/013)}
- G06F 11/362: Debugging of software
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method and system of a method of tracing a data element for flow analysis includes receiving an input of a data element to be traced, tagging the data element to be traced and selecting one or more tiers of an application to trace the flow of the tagged data element. The selected one or more tiers of the application are parsed through a plugin associated with a software programming language and an entry is recorded at the plugin associated with a software programming language, when an instance of traced data element is encountered. A database entry is created for every encounter of the tagged data element. Further, a data flow graph is generated to trace the data element across the at least one application tier.

## Claims

### Claim 1

A method of tracing a data element for flow analysis, comprising:
receiving, through a data processing device, an input of a data element to be traced;
tagging, through a data processing device, the data element to be traced;
selecting, through a data processing device, at least one tier of an application to trace the flow of the tagged data element;
parsing, through a data processing device, the selected at least one tier of the application through a plugin associated with a software programming language,
wherein the plugin associated with the software programming language is invoked on determination of the software programming language, and
wherein, based on the flow, another plugin associated with another software programming language is invoked on determination of the another software programming language;
generating, through a data processing device, based on the parsing, a data flow graph to trace the data element across the at least one application tier; and
creating, through a data processing device, a database entry for every encounter of the tagged data element in the at least one application tier.

### Claim 2 (depends on 1)

The computer implemented method of claim 1, wherein at least one of an assignment and a modification associated with the tagged data element is traced.

### Claim 3 (depends on 1)

The computer implemented method claim 1, wherein the input is at least one of a program name, a start point, an end point, assignment operation, modification operation, location of a directory, or software code.

### Claim 4 (depends on 1)

The computer implemented method of claim 1, further comprising:
recording, through a data processing device, an entry at the plugin associated with a software programming language, when an instance of traced data element is encountered.

### Claim 5 (depends on 1)

The computer implemented method of claim 1, wherein the plugin and the another plugin are stored on a plugin database accessible over a computer network.

### Claim 6

A system of tracing a data element for flow analysis, comprising:
a computer network;
data processing device associated with at least one processor;
a user interface operably associated with the data processing device and a graphic processing device; and
at least one memory unit operatively coupled to the data processing device over the computer network and having instructions stored thereon that, when executed by the at least one processor, cause the data processing device to: receive, through the data processing device, an input of a data element to
be traced;
tag, through the data processing device, the data element to be traced,
select, through the data processing device, at least one tier of an application to trace the flow of the tagged data element,
parse, through the data processing device, the selected at least one tier of the application through a plugin associated with a software programming language,
wherein the plugin associated with the software programming language is invoked on determination of the software programming language, and
wherein, based on the flow, another plugin associated with another software programming language is invoked on determination of the another software programming language,
generate a data flow graph based on the parsing to trace the data element across the at least one application tier,
wherein at least one of an assignment and a modification associated with the tagged data element is traced,
create, through the data processing device, a database entry for every encounter of the tagged data element in the at least one application tier,
record, through the data processing device, an entry at the plugin associated with a software programming language, when an instance of traced data element is encountered, and
display, through the user interface and the graphic processing device, the data flow graph.

### Claim 7 (depends on 6)

The system of claim 6, wherein at least one of an assignment and a modification associated with the tagged data element is traced.

### Claim 8 (depends on 6)

The system of claim 6, wherein the input is at least one of a program name, a start point, an end point, assignment operation, modification operation, location of a directory, or software code.

### Claim 9 (depends on 6)

The system of claim 6, wherein an entry at the plugin associated with a software programming language is recorded through the data processing device, when an instance of traced data element is encountered.

### Claim 10 (depends on 6)

The system of claim 6, wherein the plugin and the another plugin are stored on a plugin database accessible over a computer network.

### Claim 11

One or more non-transitory machine-readable media comprising computer-executable instructions that, when executed, cause a computing system to perform a method of tracing a data element for flow analysis, the method comprising:
receiving, through a data processing device, an input of a data element to be traced;
tagging, through a data processing device, the data element to be traced;
selecting, through a data processing device, at least one tier of an application to trace the flow of the tagged data element;
parsing, through a data processing device, the selected at least one tier of the application through a plugin associated with a software programming language,
wherein the plugin associated with the software programming language is invoked on determination of the software programming language, and
wherein, based on the flow, another plugin associated with another software programming language is invoked on determination of the another software programming language;
generating, through a data processing device, based on the parsing, a data flow graph to trace the data element across the at least one application tier; and
creating, through a data processing device, a database entry for every encounter of the tagged data element in the at least one application tier.
