How to Prepare an Assignment for Marking in MarkUs

Also see MarkUsGroupsSVNRepos#Auto_testing_Procedure for older instructions, but which should still work.

Courses where students submit on MarkUs

Some courses need to upload files to MarkUs for graders to see. Students would also see these files after the marks are released/published. An example is a course that runs automated testing after the due date, and the testing results need to be uploaded onto MarkUs. However, not every course needs to do this, so this section is broken up into two cases.

If ISA does not need to upload any files to MarkUs

If you just need to see the files that students submitted on-time when marking:

  1. After the assignment is due, go to the Submissions tab.
  2. Click the "Collect All Submissions" link near the top-right.
  3. Choose "Mark the files that were in the students' accounts at due date". Wait for all the rows to become green, and then you can start marking.

If ISA needs to upload files to MarkUs

Here are steps you can use for courses that need to upload files to MarkUs for graders to see. Run all the commands from the course account in a Terminal.

Step 1: After the assignment is due, go to Submissions tab and click "Collect All Submissions" link near the top-right. Choose "Mark the files that were in the students' accounts at due date". Wait for all the rows to become green.

If you want to give students a few extra minutes after the due date, you can enter that when collecting the submissions. For example, if an assignment is due at 9:00PM but you want to accept submissions until 9:10PM, enter 9:0PM when you collect all the submissions.

Markers can now start marking if they want. Alternatively, you can make the markers wait until the test results are uploaded to begin marking. Some courses combine the student's submissions into one big file called something like GRADED_ASSIGNMENT.ss (or .py). In this case, the TAs will have to wait until this file is uploaded to begin marking.

Step 2: Download the students' on-time submissions to the course account by running this command. Replace ASSN with the assignment short ID or name, and SAVE_FOLDER with the path to the folder where you want submissions to be saved

/u/isg/bin/markus.py download ASSN SAVE_FOLDER

For example, to download a01 to the ~/handin/a01_autotest/ folder, you can run: /u/isg/bin/markus.py download a01 ~/handin/a01_autotest/

Step 3: Run whatever automated testing scripts you want to run for this assignment (ex. run rst, scripts to check student's test cases, MarkUsScripts#MakeGradedAssignment_py, etc). Put the test results in the folder where you saved the submissions in Step 2. Place each student's test results in his or her folder.

Step 4: Run this command, which will upload the test results to MarkUs for graders to see. Replace ASSN and SAVE_FOLDER with what you used in Step 2. Replace FILE_TO_UPLOAD with the name of the test results file (ex. GRADED_ASSIGNMENT.ss in some courses).

/u/isg/bin/markus.py upload_marking --filter 'FILE_TO_UPLOAD' ASSN SAVE_FOLDER

You can run this command multiple times if you have multiple files you need to upload. Replace FILE_TO_UPLOAD with each file you want to upload.

Step 5: Check in MarkUs that the test results are now visible when marking. It should appear in the drop-down menu of files.

Courses where students do NOT submit on MarkUs

This section is for courses where students do NOT submit on MarkUs. For example, students may submit through Marmoset, Seashell, or the submit command line tool. Run all the commands from the course account in a Terminal.

Step 1: If you haven't already, add all the students to MarkUs in the Users => Students tab. You can use the "Upload from .classlist" link near the top-right. In the assignment's settings, uncheck "Allow web submits" since students are not submitting on MarkUs. You may also want to hide the assignment from students, since they aren't submitting on MarkUs anyways.

Step 2: After the assignment is due, run this command to create groups for the assignment. Replace ASSN with the assignment short ID or name.

/u/isg/bin/markus.py create_group ASSN

When this is finished, you can check in MarkUs that all the students are listed under the Groups and Submissions tabs.

Step 3: Create a folder that has a folder for each student/group. Put each student's files inside his or her folder. For example, the folder structure might look like this (a folder for each student):

a01_files
 |- a9smith
 |   |- helper.cc
 |   |- mycode.cc
 |- b9wang
 |   |- mycode.cc
 |- dkelly
 |   |- test.cc
 |   |- main.cc

For Marmoset, if you use marm_sql or if you download the submissions from the Marmoset website, you will get a folder structure like this. The submit command line tool also creates a folder like this inside the ~/handin/ folder in the course account.

Step 4: Run this command to upload each student's submission. Replace ASSN with the assignment short ID or name. Replace PATH_TO_FOLDER with the path to the folder you created in Step 3.

/u/isg/bin/markus.py upload_svn ASSN PATH_TO_FOLDER

Step 5: In the MarkUs website, go to Submissions tab for the assignment. Click "Collect All Submissions" link near the top-right. Choose "Mark the files that were in the students' accounts right now". Wait for all the rows to become green. When the rows are all green, marking can start.

Topic revision: r11 - 2019-08-24 - YiLee
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback