[SalesForce] Need help on architecting a multistep wizard using visual force

We are building a 5 to 6 step wizard in visual force where the user is expected to fill up a form on each step of the page. We plan to use one controller for navigation and 5 visual force pages to handle the input and output fields .Here are things i would need some help.
1. A user can fill the form say 3 steps and abandon and come again later and fill up the form. Has any body done this and if so can you share code snippets or best approach?
2. If a user comes directly and lands on say pag3 of page5, we want the page to check if the form is completed and populate all pages with the data he has filled in. How do we do this?
Any code reference or articles with real examples would really help in this regard?
Thanks
Buyan

Best Answer

The force.com cookbook has a great example to get your feet wet creating Visualforce page wizards.

http://developer.force.com/cookbook/recipe/creating-a-wizard-with-visualforce-pages

In order to support partial completion of wizards, you'll need to maintain the state of each record as steps are completed. You can provide your end users a link to the partially completed record if they want to complete the process later they can copy or save the link. Alternatively, you could look up partially completed records related to running user, and the next time they access your wizard display this list.

Hope this helps.