I am in the planning phase of building a Drupal 7 site that is supposed to function as a data portal with features like surveys and data dashboards. We have a definition of surveys that we need to run through the site and we have a list of people (participant) who will be answering our surveys. There are three surveys. The first is the initial evaluation, the second is the follow-up, and the third is the assessment. Each participant will answer the initial evaluation once. Each participant will answer the follow-up as many times as he or she wants. Each participant will answer the assessment survey as many times as he or she wants.
Also, each survey will be answered in an interview bases. So, one of our field workers will be asking the participant the survey questions and filling in the answers via the web form.
Given that a participant has one initial evaluation, 0 or many follow-up, surveys and 0 or more assessments, I am not sure how to plan out the data model in Drupal.
Another issue I am trying to figure out how to handle is not allowing the initial evaluation survey to be created more than once for a participant. I have done this sort of thing before in other programming based frameworks, but not a CMS. I have no idea what modules might handle this for me.
Thanks for help.