Commit | Line | Data |
---|---|---|
3844df81 | 1 | # qomet - WARNING: prototype stage |
e99c53fb BA |
2 | |
3 | ### Questions Ouvertes ou à options Multiples pour l'Évaluation des éTudiants | |
4 | ||
3844df81 | 5 | Or "... pour Examens sur inTernet", in french. In english, just revert the acronym: |
e99c53fb | 6 | |
a0fd8dd7 BA |
7 | "sTudents Evaluation with Multiple choices or Open Questions (or ...inTernet Exams with). |
8 | ||
9 | Source code of [qomet.auder.net](https://qomet.auder.net) | |
e99c53fb BA |
10 | |
11 | ## Features | |
12 | ||
13 | Allow teachers to create courses, containing assessments. Each of them can be public, or | |
14 | restricted to a classroom (identification by student ID). | |
43828378 BA |
15 | Individual answers to an exam are monitored in real time, and answers are sent |
16 | to each participant in the end (allowing them to estimate their grade). | |
17 | Once a series of exam is over, the teacher can get all grades in CSV format | |
18 | (assuming all questions were either quiz-like or parameterized). | |
e99c53fb BA |
19 | |
20 | ## Installation | |
21 | ||
22 | See setup/README | |
23 | ||
24 | ## Usage | |
25 | ||
43828378 BA |
26 | As a teacher, first create an account from the upper-left "login" menu. |
27 | Then create a course using the appropriate button in the middle of the screen. | |
28 | Finally, create some exams ("new assessment" button). The syntax for a series of questions is described by the following example: | |
29 | ||
43828378 BA |
30 | Question 1 text or introduction (optional if there are subquestions) |
31 | ||
32 | Text for question 1.1 (index detected from indentation) | |
33 | * Answer to 1.1 | |
34 | ||
35 | Question 1.2 (a text is optional since there are subquestions) | |
36 | ||
37 | Question 1.2.1 text (mandatory); e.g. quiz-like: | |
38 | + choice 1 | |
39 | - choice 2 | |
40 | - choice 3 | |
41 | ||
42 | Question 1.2.2 text (mandatory); e.g. open question: | |
43 | * answer to 1.2.2 (can be on several lines) | |
44 | ||
45 | Question 2 text ... | |
46 | * An answer to question 2 | |
47 | ... | |
48 | ||
49 | All question texts (and open answers) can be on several lines. | |
50 | HTML markup (slightly limited) can be used, as well as [MathJax](https://www.mathjax.org/) with $ and $$ delimiters, | |
51 | and syntax highlighting using [prism](http://prismjs.com/): `<code class="language-xyz">` for language code `xyz`. | |
52 | The syntax for parameterized exercises (not working yet) is still undecided. | |
53 | ||
54 | Use the "exam" mode if browsing the web is allowed, and "watch" mode otherwise to monitor | |
55 | students actions like losing focus or resizing window. | |
56 | Finally the "secure" mode forbids all attempts to do anything else than focusing on the exam, | |
57 | but can be "a bit too much"; keep in mind next section if using it. | |
58 | All these modes restrict the access to a classroom. To open a series of question to the world, | |
59 | the "open" mode is for you. | |
e99c53fb BA |
60 | |
61 | *Note about exams:* | |
62 | Once an assessment is started, it's impossible to quit and restart using another browser, | |
63 | because a password stored in cookies need to be sent with every request. | |
64 | So under normal circumstances it's also impossible for a student to continue the exam of another. | |
3844df81 | 65 | (The password is destroyed when exam ends or when the teacher decides to finish assessment). |
e99c53fb | 66 | |
43828378 BA |
67 | ## Limitations & workarounds |
68 | ||
69 | Version "standard classroom": some potential internet cheating ways even in 'secure' mode (in addition to | |
70 | the usual ones like using phones, talking, doing signs, using short memos...) | |
e99c53fb | 71 | |
e99c53fb | 72 | - headless browsers with renamed http-user-agent; difficult to counter with 100% confidence |
a39991b9 | 73 | - block JS script using e.g. [uBlock Origin](https://github.com/gorhill/uBlock), then re-inject the script cleaned of listeners |
e99c53fb BA |
74 | - intercept HTTP response to "start quiz" signal, re-compose the page without listeners and run |
75 | ||
43828378 BA |
76 | The easy way to prevent these cheating attempts would consist in installing qomet on a local server, |
77 | and restricting exam rooms to the intranet while preventing users to access their account (where they could | |
78 | keep a copy of the courses). This also prevent internet-based students communication. | |
79 | ||
80 | Another option (which seems more complicated, but might be required if the intranet itself shouldn't be accessed) | |
81 | would be to force e.g. chromium in kiosk mode restricted to one domain (using SELinux on a special account maybe). | |
e99c53fb BA |
82 | |
83 | ## Alternative softwares | |
84 | ||
85 | * [moodle](https://moodle.org)<br/> | |
86 | Full-featured (open source!) project to manage learning activities. | |
87 | Too big for my purpose; however qomet might be re-thought as a moodle plugin | |
88 | (although [at least one](https://moodle.org/plugins/mod_exam) already exists for this task). | |
89 | ||
90 | * [evalbox](https://evalbox.com/)<br/> | |
91 | The closest to my goals, but only for simple quizzes, and not actively developed anymore. | |
92 | ||
93 | * [wims](http://wims.unice.fr/~wims/)<br/> | |
94 | Full-featured (and open source) training center for students, with various types of exercises, | |
43828378 | 95 | possibly in exam mode too. The spirit, however, is more "enhanced homework" than "internet exams". |
e99c53fb BA |
96 | |
97 | * [socrative](https://socrative.com/)<br/> | |
98 | Nice looking realtime feedback (lacking in evalbox), but thought for interactive classes. | |
99 | In this perspective, I also found [educaplay](https://www.educaplay.com) appealing. | |
100 | ||
101 | * [testmoz](https://testmoz.com/)<br/> | |
102 | Old-fashioned look, lacking some features. Still interesting to set-up a quick test. |