Exercise system with coefficient by group
The Universidad del Centro en Huancayo suggested (not financed) the development of the following feature, which has also been suggested verbally by other institutions (ICPNA, Minedu) in Peru with some level of variation.
The idea is to have the possibility to apply grading coefficients to specific groups of users, for specific questions. Other cases suggest changing the coefficient by question category.
To add the possibility to add grading coefficients by user groups, it would be a matter of linking the usergroup and the quiz_question tables in a table as follows:
CREATE TABLE usergroup_question_coef ( id int unsigned not null primary key auto_increment, question_id int unsigned not null, usergroup_id int unsigned not null, coefficient double(2,2) default 1.0 )
Then the results (naturally stored in track_e_answer) would have to be treated by the corresponding coefficient and stored in a table for later queries:
CREATE TABLE track_e_answer_coef ( id int unsigned not null primary key auto_increment, e_answer_id int unsigned not null, ugq_id unsigned, -- the ID of the usergroup <--> question relationship coeffed_score double(2,2) )This would generate the need:
- for a new general setting to enable or not the coefficient rules
- for the new tables given
- for a new interface to allow seeing the modified result (which might be the only one a student is allowed to see)
- for changes in the normal question edition process, to select an linked usergroup
Additionally, there is a parallel need of adding a specific barcode for every question, which means the extra_fields feature should exist for the questions as well.
Little diagram of expected tables structure...