1. A computer-implemented method performed by one or more data processing apparatus, comprising: accumulating a plurality of original steps for changing one or more data elements of a design model; identifying one or more sets of possible changes to the design model that may occur for each of the plurality of original steps; for at least one of the one or more sets of possible changes, generating, by a processor, one or more sets of additional steps for producing the set of possible changes; determining whether sorting can be validly completed for the plurality of original steps and any of the one or more sets of additional steps; and adding a selected set of additional steps to the plurality of original steps, the selected set of additional steps being one of the one or more sets of additional steps for which it is determined that the sorting can be validly completed.