rssiweb / phoenix_backend

0 stars 1 forks source link

Changing category of students #27

Open zkhan93 opened 6 years ago

zkhan93 commented 6 years ago

So we have a requirement of having the ability to change a students category.

Current behaviour

Currently changing a students category will move him from some tests and add him to some others, because tests are using categories to fetch the list of students for which it's applicable. for example, assume that we have 2 categories CAT-A and CAT-B and test T-A-ENG (English test for category CAT-A) and T-B-Maths (Maths test for category CAT-B) and a student STD1 currently in CAT-A,

Example

Now if we go to exam center page and select T-A-ENG then we will see STD1 listed, now if we change the category of the student from CAT-A to CAT-B then he will disappear from test T-A-ENG and will start appearing in test T-B-Maths list of students.

Expected Behavior

Above explained behavior is not desired. The desired behavior is once a test is created, the list of students should be fixed, any change in student's category should not affect the list of students under a test.

Questions in mind regarding the new behavior

Q - How will we know what was the category of the student when he wrote a test lets sat T1? A - The combination of test and exam will tell what was the category and subject of the student while he was writing a particular test. example Exam name: Mid Term 2018, Test name: TCA- Maths.

zkhan93 commented 6 years ago

@sahasomnath please review this and let me know what you think

sahasomnath commented 6 years ago

Q - How will we know what was the category of the student when he wrote a test lets sat T1? [Som] You have to use here Test Date. After that date any changes in student list should not impact the exam center. A - The combination of test and exam will tell what was the category and subject of the student while he was writing a particular test. example Exam name: Mid Term 2018, Test name: TCA- Maths.

sahasomnath commented 6 years ago

Here is my approval on the thoughts you have shared above. Please proceed with development and let me know if you need any additional information. We have decided to declare result after 8th July. So we have time here.

zkhan93 commented 6 years ago

when you say "[Som] You have to use here Test Date. After that date any changes in student list should not impact the exam center."

this sounds like you are expecting me to maintain the student list along with all his properties, like category, age, name etc.

but this is not what I have planned

I will hold a reference of all the students at the time of test creation. after a test is created let's say a test is created for TCA English (5 students), now if you change 3 students from TCA to TCB the test will still hold the same list of students (5 students). but the students' category is different since you changed it after creating the test.

In short, a test can have students from multiple categories.