How to create dynamic forms that are defined by user

How can i build a form system. So that a website user can define a form template. With different questions, choices and options.
And how to later store answers to that form on my CMS collection.