Rather than group by question, you should try grouping by course.
Since, in the current view, the flow is like:
Question 1 -> think about course 1 in context of question -> think about course 2 in context of question -> think about course 3 in context of question -> think about course 4 in context of question.
Question 2 -> think about course 1 in context of question -> think about course 2 in context of question -> think about course 3 in context of question -> think about course 4 in context of question.
Question 3 -> think about course 1 in context of question -> think about course 2 in context of question -> think about course 3 in context of question -> think about course 4 in context of question.
Question 4 -> think about course 1 in context of question -> think about course 2 in context of question -> think about course 3 in context of question -> think about course 4 in context of question.
Now, if you arrange in context of course, you get the flow to be like:
Course 1 -> Question 1 -> Question 2 -> Question 3 -> Question 4
Course 2 -> Question 1 -> Question 2 -> Question 3 -> Question 4
Course 3 -> Question 1 -> Question 2 -> Question 3 -> Question 4
Course 4 -> Question 1 -> Question 2 -> Question 3 -> Question 4
What you are essential doing, is reducing the number of contextual jumps the student has to make while answering the questions. Granted it get's repetitive, but, it should be faster to fill up the form.
Some usability suggestions from NN/g:
- Layout the answers vertically (I would ignore this in case of likert scale if need be)
- There should be a default selection in radio buttons : now selection of default is a bit tricky, if you select extremes you end up messing the the results, might go with the neutral option as the default selection.