it could be possible to design such a solution in QlikView. Given below are my suggestions.
Requirements and respective solution approach.
1. requirement: Identify when an end user opens a document for the 10 times.
approach: for this you may need to have another qvw whose job would be reading the QlikView session log and prepare a table having User name and the no. of active sessions over the period of time for that user.
2. requirement: Prompt end user when they login for the 11th time.
approach: a. you can read the user session info table created in the previous step in to your final QVW.
b. If the number of sessions for that user (to identify the user on UI you can use QVUser() or OSUSer() functions) > 10 then you can have a variable set to 1.
c. Display a text object with a link to survey whenever the variable is 1.
3. requirement: Survey Page
approach: Survey page could be a third web based application out side of QlikView or it could be done in QlikView by using write back capability. Using write back you can take data from QlikView and update it in a Database. You can use input box to take user input in variables and can pass these values back to database table.