If you are capturing case/support feedback and want to integrate with Salesforce, I think the best way to do this is by storing the feedback response in to two objects.
First, pass the feedback about the operational aspects of the case (e.g. speed of response, professionalism etc.) in to the case itself and pass any overall Key Feedback Indicators (KFIs. E.g. Loyalty, advocacy and overall satisfaction) in to a generic custom object. This way you can store KFIs from many different surveys in one place and use reports and dashboards as required.
The screen below shows an example of how this operational feedback can be stored against a case:
You can see we have also used a graphic formula field to show an amazon style rating for the case. In this instance, the rating is made up from the scores given to three questions.
We also use a generic 'KFI' object to capture the overall feedback. Link the KFI to the case but, in addition, classify what type of survey it was, maintain a link to the survey and again used a formula field to display an Amazon style rating. This KFI can be seen from the case as a related list but also, powerfully, enables us to report on the same KFIs across many different surveys.
I think this is the best combination of capturing feedback for cases. It has the power for individual line managers and support teams to see and understand how they deal with individual cases but also enables senior management teams to see how different operational issues affect loyalty, advocacy and overall satisfaction.
There really is no point in collecting feedback unless you are going to do something with it -this approach really helps to turn insight in to action.