A data processing method comprising: creating and storing a plurality of analytical notebooks in digital computer storage, wherein each of the analytical notebooks comprises notebook metadata that specifies a kernel for execution, and one or more computational cells, wherein each of the cells comprises cell metadata, a source code reference and an output reference; receiving, in association with a first cell among the one or more cells, first input specifying computer program source code of a function, wherein the function defines an input dataset to the function, a transformation, and one or more variables associated with output data from the function; storing the first input, excluding the output data, using a first digital data storage system and updating the source code reference to identify the first data storage system; using the kernel specified in the notebook metadata, executing an executable version of the source code to result in generating the output data; storing the output data using a second digital data storage system that is separate from the first digital data storage system and updating the output reference to identify the second data storage system; creating and storing, as part of the cell metadata, a library versionset value that represents all program code libraries and all version numbers of the program code libraries on which the source depends; creating and storing, as part of the cell metadata, a dataset versionset value that represents version values for one or more datasets that the source code specifies as input sources; receiving input requesting to execute the first cell; determining whether the first cell is connected to program code libraries having version numbers that correspond to the library versionset value in the cell metadata of the first cell; performing one or more of generating a notification message or blocking execution of the first cell when the first cell is connected to program code libraries having version numbers that do not correspond to the library versionset value in the cell metadata of the first cell; determining whether the first cell is connected to one or more datasets that the source code specifies as input sources and having dataset version values that match a dataset versionset value in the cell metadata of the first cell; and performing one or more of generating a notification message or blocking execution of the first cell when the first cell is connected to one or more datasets having dataset version numbers that do not correspond to the dataset versionset value in the cell metadata of the first cell. creating and storing a plurality of analytical notebooks in digital computer storage, wherein each of the analytical notebooks comprises notebook metadata that specifies a kernel for execution, and one or more computational cells, wherein each of the cells comprises cell metadata, a source code reference and an output reference; receiving, in association with a first cell among the one or more cells, first input specifying computer program source code of a function, wherein the function defines an input dataset to the function, a transformation, and one or more variables associated with output data from the function; storing the first input, excluding the output data, using a first digital data storage system and updating the source code reference to identify the first data storage system; using the kernel specified in the notebook metadata, executing an executable version of the source code to result in generating the output data; storing the output data using a second digital data storage system that is separate from the first digital data storage system and updating the output reference to identify the second data storage system; creating and storing, as part of the cell metadata, a library versionset value that represents all program code libraries and all version numbers of the program code libraries on which the source depends; creating and storing, as part of the cell metadata, a dataset versionset value that represents version values for one or more datasets that the source code specifies as input sources; receiving input requesting to execute the first cell; determining whether the first cell is connected to program code libraries having version numbers that correspond to the library versionset value in the cell metadata of the first cell; performing one or more of generating a notification message or blocking execution of the first cell when the first cell is connected to program code libraries having version numbers that do not correspond to the library versionset value in the cell metadata of the first cell; determining whether the first cell is connected to one or more datasets that the source code specifies as input sources and having dataset version values that match a dataset versionset value in the cell metadata of the first cell; and performing one or more of generating a notification message or blocking execution of the first cell when the first cell is connected to one or more datasets having dataset version numbers that do not correspond to the dataset versionset value in the cell metadata of the first cell.