Как правильно сохранить данные из формы?
С точки зрения юзабилити лучше сохранять промежуточные этапы. 
Статьи тут никакие не нужны. Надо только представить себя на месте юзера, у которого завис браузер, или коорый срочно отошел, а когда вернулся то сессия уже протухла, или при сохранении всех данных скопом произошла ошибка. И сравнить свои эмоции когда надо вводить всё заново или только то что не успел ввести раньше.

Если все данные обязательны для дальнейшей работы с сайтом, то это тоже делается стандартно - флагом, точно так же, как с подтверждением емейла: перед пользованием сайтом вы должны загрузить все данные.
Если допустимы частичные данные, то можете каждый шаг сохранять. Если нужны все, то на последнем шаге.
Как в примере, обычно разделяют и пользователь может потом вернуться для дополнения недостающими данных.