1. A method for developing software in a parallel computing environment comprising the steps of: developing a sequential implementation of the software in a sequential processing environment; verifying that the sequential implementation of the software works as expected; developing a parallel implementation of the sequential implementation of the software in a parallel processing environment; verifying the results of the parallel implementation of the software against the results of the sequential implementation of the software.