Acredito que isso é muito relativo, pela quantidade de informacao que vc precisa armazenar, ou mesmo pelo volume de usuários que podem vir a utilizar o seu sistema. Mas é a forma mais fácil, talves algunas informações vc possa ate manter em cookies caso a sessao do usuario expire, e caso ele retorne, vc pode recuperar algumas informações para que não fique tão chato recomeçar o cadastro… Como nos shoppings virtuais.
Ter tabelas temporárias tb não é nenhum problema, pode ser uma boa solução, aí vc pode ter uma rotina de limpeza de cadastros nao terminados…
Aí depende da necessidade, e da disponibilidade que vc quer…