1. make a *before* copy of the data 2. let the user make changes to the data 3. if changes were made, ask the user if he/she wants to keep those changes 4. if user wants to keep changes, move or copy the new data to the *current* data if user does not want to keep changes, move or copy *before* data to *current* data