- Posts: 11
- Thank you received: 0
Welcome to the LimeSurvey Community Forum
Ask the community, share ideas, and connect with other LimeSurvey users!
Ho can I create adaptive evaluation surverys?
- AlexNoyon
- Topic Author
- Offline
- New Member
Your LimeSurvey version: 3.28.40+221129
Own server or LimeSurvey hosting: University hosting
Survey theme/template: Vanilla Theme
==================
Hi Community!
I want to create an evaluation tool using Limesurvey. This should be usable by my students who visit a different number of courses. But they should be able to answer the same set of questions for every course, and additionally a set of "overall questions". So, I need a parameter at the beginning asking the students about the numbers of courses they want to evaluate in this session, then the survey has to deliver the questions as often as needed, giving the student the option to type in the title of the course at the beginning of a block, and then, when all courses are done, a few of overall questions concerning the whole course of studies. I tried to find a template for this on the net but was not successful. Does anybody here have an idea how to do this best? Would be very much appreciated, thanks a lot!
Bye, Alex
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 13018
- Thank you received: 4003
as you say, you ask at the beginning how many courses.
1. As LimeSurvey does not support loops, you have to create as many groups (with the question about the course) as you expect the maximal number of courses
Then you display only the selected number by relevance equation.
2. Depending on your questions about the courses you could find the plugin "questionSpreadsheetSurvey" useful.
[url] gitlab.com/SondagesPro/QuestionSettingsT...ionSpreadsheetSurvey [/url]
Oh, I see, "University Server". You will not be allowed to install plugins.
3. Fake a loop.
After asking for the number, link to a second survey with the questions about one course by end-url.
This second questions calls itself by end-url as many times as there are courses to evaluate.
You will merge the data later by SAVEDID of the first survey.
Conclusion: The easiest and straightforward way is the first one.
But if there are a real lot of questions to each course and the estimated max. number or courses ist high enough you may run into the limits of the database. (not LimeSurvey, but the used database)
But I do not believe this.
So you should create a prototype of your survey that shows the structure and the amount and type of questions.
You may send this as lss export.
Then we can discuss further, propose improvenents, and so on.
Joffm
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- AlexNoyon
- Topic Author
- Offline
- New Member
- Posts: 11
- Thank you received: 0
thx so much for that fast reply! That helps a lot. Ok, I will try to build it the way you described. I think the max number of courses that a specific student will have to evaluate should be about 15, so that is in deed a number of sets, but should not overwhelm the server. This probably will take some time, I will try it with just one question first, and then if I run into problems I will come back here. Thanks again, fantastic help!
Bye, Alex
Please Log in to join the conversation.
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11690
- Thank you received: 2750
You know your students, you probably also know which courses they attended. You could use a token based survey and add the courses to be evaluated into custom variables and show/hide the evaluation questions for each course dependent on whether they have attended or not.
If you make them write the name of the course they want to evaluate, you will create chaos for your analysis, because each course could be evaluated at any position within the questionnaire (besides de fact that they probably all have different "versions" of the name of the course).
If you create a set of questions for each possible course, the evaluation for the same course will always be in the same column of the database and you won't need to rearrange this later for analysis in the exported results.
Of course, this will only work if you have a reasonable amount of courses in total, in order to not run into database limits.
So you should ask yourself how many different courses there are to be evaluated in general and how many evaluation questions per course there will be. With this information we can give you an estimate if this is possible or not.
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 13018
- Thank you received: 4003
If you make them write the name of the course they want to evaluate, you will create chaos for your analysis, because each course could be evaluated at any position within the questionnaire (besides de fact that they probably all have different "versions" of the name of the course).
You could use a token based survey and add the courses to be evaluated into custom variables and show/hide the evaluation questions for each course dependent on whether they have attended or not.
If you do not want to use a token based survey you can achieve this clean structure by
selecting the courses in a first quesion of type "multiple".
Again display/hide the question grióups by relevance equation.
Joffm
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- AlexNoyon
- Topic Author
- Offline
- New Member
- Posts: 11
- Thank you received: 0
thanks for your thoughts on this! Yup, the issue of differently written course titles could be pain in the ass. As Joffm already replied I think I would best solve this by a multiple choice question. But this might also not be elegant, because in total we have approximately 120 courses or so. So a list is not acceptable. I think I need a three step process:
- first question: "Which course of study are you in?" - Answers BA or MA
- second question: "Which semester are you in"? - In BA 1 to 7, in MA 1 to 3
- third step: matrix of all courses that meet the answers in the first two questions to now give a selection.
Problem of that approach: most students study what is dedicated for their individual semester, but a substantial amount of students choose courses that are not of their semester (e.g. they are enrolled in semester 2 and do mainly the courses of sem2, but they also have to do one course of sem1 (because they failed this and have to do it again) and do 2 courses of sem3, because they are very interested in it for whatever reason.
So, have this choice process to give a little more thought...
Thx again for your messages and ideas!
Bye, Alex
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 13018
- Thank you received: 4003
But did you consider
1. autocomplete in a dynamic array
2. a multi-level multiple question
3. a multi-column multiple with header
4. Several multiple-dropdowns each covering a certain type of courses
a. courses of mathematics, physics, chemistry, (MINT)
b. courses of language
c. courses of social sciences
d. courses of ...
Each of these options will return up to 15 codes, which you use to display the groups with the detailled questions.
Joffm
P.S.
In the German part you find three "Tutorials" which show a lot of possible solutions.
If you are able to read German (or able to use Google Translate) you may have a look.
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11690
- Thank you received: 2750
So actually I would recommend to create 2 different surveys and connect them. One with the general questions and one with the questions per course. I would probably run the general question first, then use the end URL to pass on the SAVEDID (or token) to the next question, which will handle the course evaluation. At the end of the this questionnaire I would ask if they want to evaluate another course and then redirect them to the same second questionnaire, also passing on some kind of ID (savedid or token) to be able to connect. The only problem with this approach: You have no control over which course they have already evaluated before. But this would be the same issue in your other approaches.
Ideally, if you know which courses they have done, you could use this in the token table to only let them evaluate the courses they have actually been registered for. I assume there must be some kind of record about this in the organisation. This would be the cleanest approach, in my opinion.
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 13018
- Thank you received: 4003
As i wrote in my first post, what @holch suggested again
You can extend this by passing the SAVEDID AND the codes of the selected courses to the second survey.3. Fake a loop.
After asking for the number, link to a second survey with the questions about one course by end-url.
This second questions calls itself by end-url as many times as there are courses to evaluate.
You will merge the data later by SAVEDID of the first survey.
Then you link to this second again and again till all courses are answered.
Here is an example, well, Videogames instead of courses.
[url] forums.limesurvey.org/forum/design-issue...oups-per-page#186828 [/url]
And it is three years old.
Tomorrow I will adapt to your courses.
Disadvantage: You can't stop and continue later.
But as long as you donot tell us, how many questions of which type you want to ask for each course, we are unable to give a final answer.
E.g. if you ask only a few list(radio) questions or text questions you can create 120 groups (one for each course) and show/hide by relevance equation.
You know, you have to consider the limitations of the database
See here
[url] manual.limesurvey.org/General_FAQ/en#...regarding_survey_size [/url]
MySQL/MariaDB with InnoDB engine 1000 columns
MySQL/MariaDB with MyISAM engine about 1700 columns
Joffm
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- AlexNoyon
- Topic Author
- Offline
- New Member
- Posts: 11
- Thank you received: 0
wow, I am learning pretty much here, while trying to understand your elaborations. Cool stuff, but in fact way more complicated than I expected, but probably I should have expected that Murphy is always right
So, the questionnaire in itself is not that complicated and extensive. It is not developed yet, but I think it will be something like this:
a. General part on the course of studies: probably around 6 questions or so along the lines of "The courses in the different semesters are structured logically" - and now a six-point-Likert-scale from "agree completely" to "disagree completely".
b. The courses themselves: about 10 questions with the same structure (e.g. "The lecturer gives space for discussion of topics" - with again Likert-scale like "way too much" over "perfectly balanced" to "way too low".
So, I think all in all I should not run in database issues I guess.
And Joffm, thx for the link to the German part, I will check this out - I am German, so no language issue here My being German will also explain if you think a few of the item descriptions or the wording above are weird - I am used to the German scale namings, so just translated that probably somewhat sloppy to "completely agree" and such, but in the German questionnaires I will be using we have established formulations.
The example with the video games is very interesting, that should be pretty useful. I will try to work with that over the holidays to come. Luckily, I am not that much in a hurry. The thing should be working in the coming semester, so not needed before March. And I get the idea that I will need substantial time to understand all your cool ideas here. I get it more and more that until now I did not even scratch the surface of Limesurvey with the things I did so far...
Bye, Alex
Please Log in to join the conversation.
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11690
- Thank you received: 2750
b. The courses themselves: about 10 questions with the same structure (e.g. "The lecturer gives space for discussion of topics" - with again Likert-scale like "way too much" over "perfectly balanced" to "way too low".
So, I think all in all I should not run in database issues I guess.
Well, if you would go with the option of creating 120 different groups of questions (1 group per course) you could easily run into database issues.
120x10 would already mean at least 1200 columns. This only if these are single response questions. Multiple response and array / matrix will count 1 column per subquestion. So if you would for example create a multiple response question with all 120 courses at the beginning and then 10 single choice questions per each of the 120 courses (so 1200 columns at least) and then another 120 columns, one for each of the answers of the multiple answer question. So creating a set of questions for each of the 120 courses doesn't seem to be a good option, because there is a good chance that you run into database limits.
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 13018
- Thank you received: 4003
as promised a wotking example with a father - son scenario.
I separated the courses into "Bachelor" and Master"
How it is done you see in the script of the array question.
Now with an autocomplete you select the courses
At the end the second survey is called by the end-url
Look like this:
https://www.myServer.de/limesurvey/index.php/222222?pSAVE={SAVEDID}&pKURS={Pool2_final}&newtest=Y
Now you see the second survey where the courses are rated.
After all selected courses are rated the survey is done.
Everything is done automatically.
And the data look like this
Have a look at the questions called "Pool"
Questions of type long text which are used as a container of the course names.
In the first survey to convert the course name to a course number,
in the second survey viceversa.
In the second survey all course names have the seme length (right padded with blanks). This way it is easy to use string functions to extract the name.
Here the two surveys
If there are further questions, ask in the German part.
I am tired to talk with a language gap unnecessarily.
Bis dann
Joffm
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.