Recovery of Concurrent Processes using Rules and Data Dependencies