Size: 3493
Comment:
|
← Revision 25 as of 2023-02-22 09:59:36 ⇥
Size: 4028
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= Student Database and Assignment Management Systems = | #acl All:read = Student Records and Assignment Management Systems = |
Line 4: | Line 6: |
* '''sms''' - student database management system | * '''sms''' - student records management system |
Line 7: | Line 9: |
||<#FFFFAD> [[https://www.cse.unsw.edu.au/~give/Documents/Manual/give_html/index.html|give Manual]] ||<#FFFFAD> [[https://www.cse.unsw.edu.au/~give/Documents/Faq/give_html/index.html|give FAQ]] ||<#FFFFAD> [[https://www.cse.unsw.edu.au/~give/Documents/Manual/sms_html/index.html|sms Manual]] ||<#FFFFAD> [[https://www.cse.unsw.edu.au/~give/Documents/Faq/sms_html/index.html|sms FAQ]] ||<#FFFFAD> [[http://www.cse.unsw.edu.au/~give/Admindata/tutors/xmark.html|Xmark]]||<#FFFFAD> [[http://www.cse.unsw.edu.au/~give/Admindata/tutors/vnc.html|VNC]]|| | ||<#FFFFAD> [[https://cgi.cse.unsw.edu.au/~give/Documents/Manual/give_html/index.html|give Manual]] ||<#FFFFAD> [[https://cgi.cse.unsw.edu.au/~give/Documents/Faq/give_html/index.html|give FAQ]] ||<#FFFFAD> [[https://cgi.cse.unsw.edu.au/~give/Documents/Manual/sms_html/index.html|sms Manual]] ||<#FFFFAD> [[https://cgi.cse.unsw.edu.au/~give/Documents/Faq/sms_html/index.html|sms FAQ]] ||<#FFFFAD> [[http://www.cse.unsw.edu.au/~give/Admindata/tutors/xmark.html|Xmark]]|| |
Line 12: | Line 14: |
1. ssh into the class account with X11 forwarding: `ssh -Y` ~- ''sms is a tk app that requires X windows. An alternative to X windows is to run [[http://www.cse.unsw.edu.au/~give/Admindata/tutors/vnc.html|VNC]] on a CSE login server '' |
1. ssh into the class account with X11 forwarding: ~+`ssh -Y`+~ (!) sms is a [[https://www.tcl.tk/|tcl/tk]] app that requires [[http://taggi.cse.unsw.edu.au/FAQ/Accessing_CSE_login_servers/|X windows]]. Running tcl/tk app with X windows is slow. Better ways are: * [[http://www.cse.unsw.edu.au/~give/Admindata/tutors/vnc.html|VNC]] on a CSE login server * [[https://taggi.cse.unsw.edu.au/FAQ/Really_quick_guide_to_VLAB/|VLAB]] |
Line 17: | Line 23: |
`% give-install -new` | ~+`% give-install -new`+~ |
Line 19: | Line 25: |
`% ~give/stable/bin/give-install -new` ~- ''if ~give/stable/bin is not part of $PATH'' -~ |
~+`% ~give/stable/bin/give-install -new`+~ ''if ~+`~give/stable/bin`+~ is not part of ~+`$PATH`+~'' |
Line 22: | Line 28: |
`% ksh give-install -new` ~- ''if your login shell is zsh'' -~ |
~+`% ksh give-install -new`+~ ''if your login shell is zsh'' |
Line 25: | Line 31: |
`% give-install -new YYsN` ~- ''if the session is not the same as the system-wide session'' -~ |
~+`% give-install -new `''`term`''+~ ''if the term is not the same as the system-wide term, term example 20T3'' |
Line 29: | Line 35: |
* Create `$WORK` (`$HOME/YYsN.work` e.g. `~/12s2.work`) * Create `give.spec` if doesn't exists in * `$HOME` * `$WORK` |
* Create ~+`$WORK`+~ (~+`$HOME/`''`term`''.`work`+~ e.g. ~+`~/20T3.work`+~) * Create ~+`give.spec`+~ (if doesn't exists) in * ~+`$HOME`+~ ~-''(does not override existing one)''-~ * ~+`$WORK`+~ ~-''(does not override existing one)''-~ |
Line 34: | Line 40: |
* Create `.giverc` in `$HOME` (overrides existing one) * Create sms database under `$WORK` (can be postponed) |
* Create ~+`.giverc`+~ in ~+`$HOME`+~ (overrides existing one) * Create sms database (~+`$SMSDB`+~) under ~+`$WORK`+~ (can be postponed) |
Line 37: | Line 43: |
* Add `$SMSDB` (e.g. `~/YYsN.work/YYsNdb.sms`) to `$HOME/.giverc` | * Add ~+`$SMSDB`+~ environment variable to ~+`$WORK/.giverc`+~ |
Line 42: | Line 48: |
. `% sms ~/YYsN.work/YYsNdb.sms` ~- ''or'' -~ . `% sms` ~- ''(if `$SMSDB` is set to the current session)'' -~ |
. e.g. . ~+`sms ~/20T3.work/20T3db.sms`+~ . ''or'' . ~+`sms`+~ ''using the value stored in ~+`$SMSDB`+~'' |
Line 48: | Line 55: |
`% give-install -update` | ~+`give-install -update`+~ |
Line 53: | Line 60: |
. For combined courses, create the database in the primary class account, add a record for each course. | . For combined courses, create the database in the primary class account, add a record for each course. |
Line 56: | Line 63: |
. Top menu bar: '''''Student''''' → '''''Add Student Records''''' → '''''External Source''''' . or second menu bar: '''''Add from NSS''''' |
. Top menu bar: '''''Student''''' → '''''Add Student Records''''' → '''''External Source''''' . or second menu bar: '''''Add from NSS''''' |
Line 59: | Line 66: |
'''''From NSS''''' or '''''From NSS (without classes)''''' The latter is used if swapping student to another class in sms. | '''''From NSS (without classes)''''' - The download will not overwrite class changes in sms |
Line 63: | Line 70: |
Enter this field when asked for a group field by the installation script. This field is used by give for assignment submissions. | Enter this field when asked for a group field by the ~+`give-install`+~ script. This field is used by give for assignment submissions. |
Line 67: | Line 74: |
1. After installing give, update the environment to the new session: | 1. After installing give, update the give environment: |
Line 69: | Line 76: |
`% . ~/.giverc` | ~+`% . ~/.giverc`+~ |
Line 71: | Line 78: |
and insert the line above to the class account's `.profile`. | and insert the line above to the class account's `.profile`, if not already. |
Line 73: | Line 80: |
1. Check the environment variables: `$GIVEPERIOD`, `$WORK`, `$SMSDB` | 1. Check that ~+`$HOME/give.spec`+~ contain the correct configuration for the current term. * Look out for ~+`&period`+~ is not still set to a previous term. Example {{{ &period=19T3 }}} |
Line 75: | Line 86: |
`% echo $GIVEPERIOD` | 1. Check the environment variables: ~+`$GIVEPERIOD`+~, ~+`$WORK`+~, ~+`$SMSDB`+~ ~+`% echo $GIVEPERIOD`+~ |
Student Records and Assignment Management Systems
give - assignment submission, autotesting and marking system
sms - student records management system
give & sms Installation
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
sms is a tcl/tk app that requires X windows. Running tcl/tk app with X windows is slow. Better ways are:
- Run the installation script:
% give-install -new
% ~give/stable/bin/give-install -new
if ~give/stable/bin is not part of $PATH
% ksh give-install -new
if your login shell is zsh
% give-install -new term
if the term is not the same as the system-wide term, term example 20T3
- The installation perform the following tasks:
Create $WORK ($HOME/term.work e.g. ~/20T3.work)
Create give.spec (if doesn't exists) in
$HOME (does not override existing one)
$WORK (does not override existing one)
(read about give.spec)
Create .giverc in $HOME (overrides existing one)
Create sms database ($SMSDB) under $WORK (can be postponed)
- Download student enrolment data (read about importing nss data below)
Add $SMSDB environment variable to $WORK/.giverc
- The installation can be paused before sms database is created.
- Create the database by running sms directly:
- e.g.
sms ~/20T3.work/20T3db.sms
or
sms
using the value stored in $SMSDB
- Resume the installation with this command:
give-install -update
- Download student enrollment data
- Add course records
- For combined courses, create the database in the primary class account, add a record for each course.
- Add student records
Top menu bar: Student → Add Student Records → External Source
or second menu bar: Add from NSS
From NSS (without classes) - The download will not overwrite class changes in sms
- Add course records
- If there are classes in NSS, an enum field (tut, lab or tut_lab) will automatically be created in sms after the above downloads.
Enter this field when asked for a group field by the give-install script. This field is used by give for assignment submissions.
(Read about &subkey and &subgroup)
- After installing give, update the give environment:
% . ~/.giverc
and insert the line above to the class account's .profile, if not already.
Check that $HOME/give.spec contain the correct configuration for the current term.
Look out for &period is not still set to a previous term. Example
&period=19T3
Check the environment variables: $GIVEPERIOD, $WORK, $SMSDB
% echo $GIVEPERIOD