Architect This! Implementing a Java Based Survey Tool
I thought it would be interesting to get community feedback on the following problem. The basic requirement is to write a web based survey tool. Of course, my preference for this would be Java, and I jumped to some conclusions on what frameworks I should use to implement it.
What It Needs To Do
A simple list of requirements for this application is as follows:
- An administration interface for the creation of new surveys
- A reporting tool for survey results - exporting to PDF or Excel
- Graph based reports
- Different question types such as multiple-choice and free text
- The ability to change the sequence of the questions
- Copy and deletion of questions
- Email notifications when a survey is filled in
- User login (and registration) for participating in surveys
- A snappy user interface for users to do the survey
First on my list was Spring Web Flow - it definitely suits certain types of application, but does it fit here? There's good tooling available with the SpringSource Tool Suite. Options I instantly disregarded was plain old Servlets or JSPs - but this was because I knew there were "better frameworks" out there. Did I make the wrong assumption?
So, I'm leaving it open to the community now. What would your technology stack be for such an application? Of course, I'd like to see reasons why for any of your choices.
I'd like to point out that I'm not asking anyone to do my homework for me here! I think it's an interesting way of seeing what frameworks are in fashion at the moment.