A computer-implemented method for determining data lineage of a selected data element across an enterprise system comprising an enterprise mainframe, an enterprise data warehouse, and at least one enterprise business intelligence tool, comprising: receiving a selection of a data element for tracing across a plurality of different computing applications in an enterprise, the data element being uniquely identified by a hierarchical key and being stored in a repository; parsing a representation of source code to locate computing instructions where the selected data element has been utilized, the parsing comprising interpreting language of the representation of source code for verbs that act on the selected data element; processing the computing instructions to determine how the selected data element is computed; determining at least one computing resource used in the computation of the selected data element; parsing the representation of source code to locate computing instructions where each of the at least one computing resources used in the computation of the selected data element has been utilized; reconstructing a hierarchical key for each of the at least one computing resources used in the computation of the selected data element by determining which computing resource is actually accessed by the computing instructions while an application is operating; linking the selected data element to each of the at least one computing resources used in the computation of the selected data element as at least one source-target pair; combining each of the at least one source-target pair to compute a data lineage for the selected data element; and displaying the data lineage on a graphical user interface accessible to a user, the data lineage comprising a graphical data flow for the selected data element from each source-target pair across the enterprise. receiving a selection of a data element for tracing across a plurality of different computing applications in an enterprise, the data element being uniquely identified by a hierarchical key and being stored in a repository; parsing a representation of source code to locate computing instructions where the selected data element has been utilized, the parsing comprising interpreting language of the representation of source code for verbs that act on the selected data element; processing the computing instructions to determine how the selected data element is computed; determining at least one computing resource used in the computation of the selected data element; parsing the representation of source code to locate computing instructions where each of the at least one computing resources used in the computation of the selected data element has been utilized; reconstructing a hierarchical key for each of the at least one computing resources used in the computation of the selected data element by determining which computing resource is actually accessed by the computing instructions while an application is operating; linking the selected data element to each of the at least one computing resources used in the computation of the selected data element as at least one source-target pair; combining each of the at least one source-target pair to compute a data lineage for the selected data element; and displaying the data lineage on a graphical user interface accessible to a user, the data lineage comprising a graphical data flow for the selected data element from each source-target pair across the enterprise.