1. A computer-implemented method of versioning a business process model, the method comprising: decomposing the business process model into a plurality of artifacts; generating a hierarchical dependency graph for an artifact of the plurality of artifacts, the hierarchical dependency graph comprising a set of referencing artifacts that reference and are therefore dependent on the artifact and a set of referenced artifacts that the artifact references and is therefore dependent upon; traversing the hierarchical dependency graph during a first build process to transform process model data into a first executable process based on the process model, the traversing comprising compiling each referenced artifact of the set of referenced artifacts prior to the artifact and compiling each referencing artifact of the set of referencing artifacts after the artifact, the compiling comprising creating a runtime format for each of the artifact and the referencing and referenced artifacts and computing a unique version identifier for the artifact, for each referencing artifact of the set of referencing artifacts, and for each referenced artifact of the set of referenced artifacts; incorporating the unique version identifier for each referenced artifact of the set of referenced artifacts into the unique version identifier of the artifact and also incorporating the unique version identifier for the artifact into the unique version identifier for each referencing artifact of the set of referencing artifacts; modifying the unique version identifier of the artifact to reflect a change to a new version of one referenced artifact of the set of referenced artifacts and also modifying at least one referencing artifact of the set of referencing artifacts to reflect the modifying of the unique version identifier of the artifact, the modifying and the also modifying occurring without altering the unique version identifier of referenced artifacts of the set of referenced artifacts other than the one referenced artifact changed to the new version; redirecting, based on the modifying, the unique version identifier of the artifact incorporated in the unique version identifier of each referencing artifact of the set of referencing artifacts; and re-traversing the hierarchical dependency graph during a second build process to transform process model data into a second executable process based on the process model, the re-traversing comprising incorporating the modified unique version identifier of the artifact and the redirected unique version identifier of the artifact incorporated in the unique version identifier of each referencing artifact of the set of referencing artifacts such that the first executable process is not affected by the modifying and the redirecting.