give - assignment submission, autotesting and marking system
sms - student records management system
Hierarchy
| |
| |
| |
System |
&# Default give spec file &# /home/give/stable/give.spec [copy in lib/give.spec] &# current session (s1 = session 1, s2 = session 2, x1 = summer session) &period = 24T1 &# default action: accept students not registered &acceptorphans = TRUE &# allow current submission and three backup copies only &backups = 3 &# limit each submission to 250 Kbytes &maxsize = 250 |
At the bottom of the hierarchy is the 'system-wide' give.spec file and at the top is the 'assignment' give.spec file. The directives in the assignment give.spec file will override the directives in the give.spec files below it.
<term> YYT{0,1,2,3}
Example: 24T2
give and sms are interconnected. Create give environment and sms database in the class account as follows:
ssh into the class account with X11 forwarding:
ssh -Y
Run the installation script:
% give-install -new
% ~give/stable/bin/give-install -new
if ~give/stable/bin
is not part of $PATH
% give-install -new term
if term is not the same as the system-wide term, example 24T2
The installation perform the following tasks:
Create
$WORK
($HOME/term
.work
e.g.~/24T2.work
)Create give.spec (if doesn't exists) in
$HOME
(does not override existing one)$WORK
(does not override existing one)
Create
.giverc
in$HOME
(overrides existing one)Create sms database (
$SMSDB
) under$WORK
(can be postponed, see ‘Resume the installation’)Download student enrolment data (below)
Add
$SMSDB
to$HOME/.giverc
Add &smsdb to
$WORK/give.spec
The installation can be paused before sms database is created.
Create the database by running sms directly:
sms ~/24T2.work/24T2db.sms
sms
using the value stored in $SMSDB
Resume the installation with this command:
give-install -update
Download student enrolment data
Add course records
Top menu bar: Course → Add Course
For combined courses,
create sms in the primary class account e.g. COMP3331/9331’s sms located in cs3331
add a record for each course e.g. COMP3331/9331 has two course records in sms
Add student records
Top menu bar: Student → Add Student Records → External Source
or Second menu bar: Add Students
Enrolments - The download will update class (tut, lab, tut_lab) values
Enrolments (without classes) - The download will not update class values
The enrolment downloads creates an enum field (tut, lab or tut_lab) if small group classes exists. Enter this field when asked for a group field by
give-install
script. This field is used by give for assignment submissions.
Read about &subkey and &subgroup
After installing give (and sms)
source give environment
% . ~/.giverc
Add the line above (if not already) to
~/.profile
Check the environment variables:
$GIVEPERIOD
,$WORK
,$SMSDB
% echo $GIVEPERIOD
Check
$HOME/give.spec
contain the correct configuration for the current term.Look for
&period
It can be set to the previous term because of Supplementary Exam submissions.&class = COMP9999 &classuser = cs9999 &period = 24T1