CSC/ECE 517 Fall 2018/E1879 Student Generated Questions Added To Rubric
Introduction
The rubrics in expertiza are created by instructors. These Rubrics only contain questions that are related to the existed topics. Now, Expertiza only supports students to pull questionnaires is specific rubrics to get some help. Even that they can ask about anything that is relevant to all the projects that will be submitted But when students encounter difficult problems which are not in the existed topics, and they want to get special advice on that new field, the demand for creating supplementary review questionnaire raises. This project (E1879) aims to solve this problem by allowing students to add questions to the standard instructor generated rubric so that they can get specific feedback on from the reviewers.
Proposed solution
We will add the Supplementary Review Questions to the current Review Questions, and show these student-generated questions under the rubric given by instructor. Even though these questions won't be graded, they will eventually provide diversity for feedback. It will increase the benefit that each team gets because they can get feedback that is specific to their project.
Implementation
Design Strategy
In Expertiza, all kinds of rubrics and surveys are subclasses of Questionnaire. A Questionnaire can contain “questions” of several types (e.g., checkboxes, dropdowns, text boxes). So that we will add a new subclass of Questionnaire named SupplementaryReviewQuestionnaire to achieve our goal.
First, we want the professor to control if the students can create their own supplementary questions by using a checkbox to indicate. If the professor allow students to create their own questions, there will be a button in the students "Your work" page which can let the students jump to the same page that an instructor lands on when creating a new rubric. Then we will add the questionnaire id of this new SupplementaryReviewQuestionnaire to the Team table when students create their own questionnaire in order to show the corresponding supplementary questions to the reviewers. And when showing review questions to the reviewers we will look up the questionnaire id in Team table and modify the view to add the supplementary questions to review page. Finally, after the reviewers finish the review and submit their responds, we will change the view and let the team member can see the feedback of their supplementary questions.
Changes in the User Interface
1. Assignment Page
We add a checkbox for the professor to indicate if student can add their own questions.
2. A button called "Create Supplementary Rubric" will appear in the student's "Your Work" section when the Instructor has allowed students to create supplementary review questions. So when a student clicks the button he/she can add the desired questions.
3. The page where student will be directed to when he/she clicks the Create Supplementary Rubric button. Students can add Questions to the created Supplementary Review questionnaire here.
4. Review Page
The students own supplementary questions are leading by a heading "Supplementary Review Questions".
5. Review Results Page
The supplementary review results will be showed to the team like other results.
Use Cases
1. Use case of creating a Supplementary Review Questionnaire
2. Use case of reviewing questions for reviewers.
3. Use case of reviewing responses of questions.
Test Plan
Actually, we need to add tests for the following:
1. To check the link for "Supplementary Review Questionnaire" appears in the "Your Work" section of a student.
2. To check if the link for "Supplementary Review Questionnaire" redirects to page which allows to create questionnaire.
3. To check if the questionnaire ID is stored in the Team table.
4. To check if the reviewers can see the supplementary questions that were added by the team as part of the review questions.
5. To check if the responses of the Supplementary Review Questions have been added to the responses of the existing review questions.
File which are added/modified
1. Models
app/models/team.rb
app/models/response.rb
2. Viewers:
app/viewers/grades/view_team.html.erb
app/viewers/response/response.html.erb
app/viewers/submitted_content/_main.html.erb
3. Controllers:
app/controllers/response_controller.rb
app/controllers/grades_controller.rb
app/controllers/submitted_content_controller.rb
4. Config:
routes.rb
resources :questionnaires, only: %i[new create edit update] do collection do get :copy get :list post :list_questionnaires get :new_quiz get :select_questionnaire_type post :select_questionnaire_type get :toggle_access get :view post :create_quiz_questionnaire post :update_quiz post :add_new_questions post :save_all_questions post :create_supplementary_review_questionnaire end end resources :author_feedback_questionnaires, controller: :questionnaires resources :review_questionnaires, controller: :questionnaires resources :metareview_questionnaires, controller: :questionnaires resources :teammate_review_questionnaires, controller: :questionnaires resources :survey_questionnaires, controller: :questionnaires resources :assignment_survey_questionnaires, controller: :questionnaires resources :global_survey_questionnaires, controller: :questionnaires resources :course_survey_questionnaires, controller: :questionnaires resources :bookmarkrating_questionnaires, controller: :questionnaires resources :supplementary_review_questionnaire, controller: :questionnaires
Team members
Yanchen Zhao
Pingping Chen
Jianshu Zhang
Zirun Han
Links
Expertiza on Github:https://github.com/zyczyh/expertiza
Pull Request:https://github.com/expertiza/expertiza/pull/1325
Expertiza YouTube channel:https://youtu.be/3PUNknSbU-k