A method performed by one or more processors, the method comprising: receiving (3.1) one or more data transformation commands through a console in a console session, the one or more data transformation commands relating to one or more initial datasets; executing (3.2) the one or more data transformation commands using the one or more initial datasets to modify at least one of the one or more initial datasets to generate a modified dataset; determining which of the initial datasets has been modified, comprising: determining which initial datasets were accessed during execution of the data transformation command, wherein the one or more accessed datasets comprises a plurality of data elements; hashing one or more of the accessed datasets after executing the data transformation command to generate current hashed values of the one or more accessed datasets, wherein hashing the one or more accessed datasets comprises summing hashes of the plurality of data elements; and comparing the current hashed values of the accessed one or more datasets to hashed values of the one or more initial datasets to determine which of the one or more accessed datasets was modified by the data transformation command; generating (3.3) a set of environment flags for the command to indicate that the one or more initial datasets has been accessed and the at least one dataset that has been modified, wherein the set of environment flags comprises an indication of variables accessed at an associated line in the console session and an indication of which accessed variables have been modified by the data transformation command input at that line; and updating (3.4) a set of line dependencies after the execution of each command in the console based on the generated set of environmental flags and previously generated sets of environmental flags for one or more previously executed commands. receiving (3.1) one or more data transformation commands through a console in a console session, the one or more data transformation commands relating to one or more initial datasets; executing (3.2) the one or more data transformation commands using the one or more initial datasets to modify at least one of the one or more initial datasets to generate a modified dataset; determining which of the initial datasets has been modified, comprising: determining which initial datasets were accessed during execution of the data transformation command, wherein the one or more accessed datasets comprises a plurality of data elements; hashing one or more of the accessed datasets after executing the data transformation command to generate current hashed values of the one or more accessed datasets, wherein hashing the one or more accessed datasets comprises summing hashes of the plurality of data elements; and comparing the current hashed values of the accessed one or more datasets to hashed values of the one or more initial datasets to determine which of the one or more accessed datasets was modified by the data transformation command; determining which initial datasets were accessed during execution of the data transformation command, wherein the one or more accessed datasets comprises a plurality of data elements; hashing one or more of the accessed datasets after executing the data transformation command to generate current hashed values of the one or more accessed datasets, wherein hashing the one or more accessed datasets comprises summing hashes of the plurality of data elements; and comparing the current hashed values of the accessed one or more datasets to hashed values of the one or more initial datasets to determine which of the one or more accessed datasets was modified by the data transformation command; generating (3.3) a set of environment flags for the command to indicate that the one or more initial datasets has been accessed and the at least one dataset that has been modified, wherein the set of environment flags comprises an indication of variables accessed at an associated line in the console session and an indication of which accessed variables have been modified by the data transformation command input at that line; and updating (3.4) a set of line dependencies after the execution of each command in the console based on the generated set of environmental flags and previously generated sets of environmental flags for one or more previously executed commands.