Moodle quiz marking guide - moodle

I've a requirement where students assignments are to be marked by multiple teachers. Each teacher is allotted certain question numbers. I've created a marking guide with mark entry for each question and pdf annotation is in use.
Scenario:
There are 10 questions in the assignment. Question number 1 to 5 is marked by Teacher A and question numbers 6 to 10 is marked by Teacher B.
A marking guide is created to help teacher to enter mark for each question
The problem:
To avoid conflict, teachers were given different time frames.
When Teacher A marks his part and leave his colleague's part empty, the entries are not saved. So I tell them to enter 0.
This means second teacher has to over ride 0.
Looking for:
Allotting question numbers to teachers so that they can mark only their questions.
If the above is not possible at least they should be able to leave blank (text box for mark entry) to not to touch other part.
Any help will be appreciated.

Related

moodle advanced grading: marking guide, making default criteria zero

In order to correct students assignment and award marks for question-wise, the marking guide under advanced grading methods are very useful.
I have 25 questions. As this method does not allow any fields to be blank I have to manually mark zero in all fields every time even if I m correcting only few questions at a given time. Is there anyway I can tweak so that default mark is zero or empty?

Don't have enough questions in category to create the question Random

I have 3 categories with several quizzies in it and i can test 2 of them , they work properly, but when i try to test third one i got this error below:
There are not enough questions in category XX to create the question Random
What should i change to get rid of this problem? Seems to be obvious that a user should not be able to add more random questions than the total number of a category, since that there will not be duplicated questions in the quiz.
Is this is a known bug?
I can't add more questions on the quiz.
It's throwing moodle_exception('notenoughrandomquestions') when questions not available in the category.
You can find this exception from below path
mod\quiz\locallib.php

Cinema Booking System Class Diagram Design

Hello all!
I have a question about where should the seats be assigned to keep track if it's booked for a showtime.
There is currently two way i thought of.
1) Assign the seats to the showtime instead of cinema. However this means that for each showtime it may have a different number of seats( which should not be true).
2) Check if the seat is assigned by accessing moviergoer->booking-> movieticket->seat number.
This method is tedious and uses more processing time. But i feel it's the right way as it will mean that the seats will be fixed.
I'm sorry if any other part of my diagram is wrongly drawn. However please guide me through this main question! I will be glad to get feedback for other part of my diagram too.
I really hope to learn more from this scenario.
Your design seems ok so far. Just a few observations:
you should remove the navigation in general since it does not add much value
the association from Booking to ShowTime seems superfluous as the Ticket already holds the needed information
re-think about duplicating cinema/movie:string in ShowTime as it adds unwanted redundancy
why do you have a <<use>> iso. an association in Review?
A seat is related to the cinema and the cinema offers show times. So 1) is ok.
Edit: You would map the ticket like this:
The both ID roles would map the ids in ShowTime and Seat. I would use an artificial integer for the seatID and likely some HHMM format for the showTimeID.

Comprehensive exam in moodle

I need to build a Comprehensive Exam which is build of three main title and 10 Question in each title.
Is it possible to simulate a comprehensive exam with moodle?
Do you mean this: http://en.wikipedia.org/wiki/Comprehensive_examination ?
The article notes that 'There is no standard definition for what such exams entail', so I would suggest that the answer is 'Yes', but it will depend on exactly what you are trying to achieve. The quiz module within Moodle is quite capable of creating a 3 page quiz, with 10 questions on each page (or it can be more than 3 pages, with some static text defining the break between the sections).
If, however, you are wanting to have separate grades for each of the sections, then you would probably have to split it across 3 quizzes (possibly using conditional availability to prevent access to the second & third quizzes until the first has been answered).

Am i violating any NF RULE on my database design?

Good day!
I am a newbie on creating database... I need to create a db for my recruitment web application.
My database schema is as follows:
NOTE: I included the applicant_id on other tables... e.g. exam, interview, exam type.
Am i violating any normalization rule? If i do, what do you recommend to improve my design? Thank you
Overall looks good. A few minor points to consider:
Interviewer is also a person. You will need to use program logic to prevent different / misspellings.
The longest real life email address I've seen was 62 characters.
In exam you use the reserved word date for a column name
(subjective) I would rename applicant_date to applied_at
I don't see a postal / zip code for the applicant
All result columns are VARCHAR(4). If they use the same values, can they be normalized?
Birthdate is better to store then age. You don't want to schedule someone for an interview on their birthdate (or if you're cruel by nature, you do want that :) ). Age can be derived from it and will also be correct at all times.
EDIT:
Given that result is PASS or FAIL, simply declare the field a boolean and name it 'passed'. A lot faster.
One area where I could see a potential problem is the Interviewer being integrated in interview. Also I would like to point at the source channel in applicant, which could potentially get blobbed (depending of what you're going to store in there).
You don't seem to be violating any normalization rules upon first glance. It's not clear from your schema design, however, that the applicant_id is a referencing the applicant table. Make sure you declare it as a foreign key that references the applicant table when actually implementing the scehma.
Not to make any assumptions on your data, but can the result of a screening be stored in 4 characters?
Age and gender are generally illegal questions to ask in interviews so you may not want to record such things. You might want a separate interviewer table. You also might want a separate table that stores qualifications so you can search for people you have interviewed with C# knowledge when the next opening comes up. I'd probably do something like a Qualifications table that is the lookup for quals you want to add to the applicant qualfications table. Then you'd need the qualification id, applicantId, years, skill level in the Applicant Qualification table.
I notice results is a varchar 4 field, I assume you are planning to put Pass/fail in it. I would consider having a numeric score as well. The guy who got 80% of the questions right passed but the guy who got 100% of them right might be the better candidate. In fact for interviews I might have interview questions and results tables. Then you can record the score and any comments about each question which can help later in evaluation of a lot of candidates. We did this manually in paper spreadsheets once when we were interviewing several hundred people (we had over a hundred openings at the time and this was way before personal computers) and found it most helpful to be able to compare answers to questions. It's hard to remember 200 people you interviewed and who said what. It might help later when you have a new opening to find the people who were strong onthe questions most pertinent to the new job who might not have been given a job at the time of the interview(5 excellent candidates, 1 job for instance).
I might also consider a field to mark if the candidate is unaccepatble for ever hiring for some reason. Such as he committed a felony or he lied on the resume and you caught him or he was just totally clueless in the interview. This can make it easy to prevent this person from being considered repeatedly.
I think that your DB structure has a lot of limitation for future usage. For example you can even have a description of the exam because this stable store the score and exam date. It may by that this kind of information are already stored in another system and you have to design only the result container. But even then the exam, screen and interview are just a form of test, that why the information about should be stored in one table and distinguished by some type id. If you decide to this approach you have to create another table to store the information about result
So the definition of that should look more like this:
TEST
TEST_ID
TEST_TYPE_ID ref TEST_TYPE - Table that define the test type
TEST_REQUIRED_SCORE - The value of the score that need to be reach to pass the exam.
... - Many others properties of TEST like duration, expire date, active inactive etc.
APPLICANT_RESULTS
APPLICANT_ID ref APPLICANT
TEST_ID = ref TEST
TESTS_DATE - The day of exam
TEST_START - The time when the test has started
TEST_FINISH - The time when the test has ended
APPLICANT_RESULT - The applicant result of taken test.
This kind of structure is more flexible and give the easy way to specify the requirements between the test in table like this
TEST_REQUIREMENTS - Table that specify the test hierarchy and limitation
TEST_ID ref TEST
REQUIRED_TEST ref TEST
ORDER - the order of exams
Another scenario is that in the future your employer will want to switch to an e-exam system. In that case only think what you will need are:
Create table that will store the question definition (one question can be used in exam, screen or interview)
Crate table that will store the question answers.
Create table that will store the information about the test question.
Create table for storing the answer for each question given from applicant.
A trigger that will update the over all score of test.