jimseah-0116 / pe

0 stars 0 forks source link

Non-students are allowed to have exam scores too #6

Open jimseah-0116 opened 2 months ago

jimseah-0116 commented 2 months ago

I managed to add an exam score to a non-student in my list:

image.png

Since the app doesn't check that the index provided has a "student" tag, users might accidentally add scores to non-students (e.g. other instructors) without realising. This would affect the mean and median of the selectedExam, which could have some consequences depending on what these stats are used for (e.g. determining grade boundaries for bellcurve)

soc-pe-bot commented 2 months ago

Team's Response

Thank you for your input. We do agree that the lack of verification for only allowing students to have scores is an issue that can cause confusion and cascading issues to the statistics feature.

However, we believe that this issue is NotInScope and should only have a severity of low as it is of much less importance and has much less consequence compared to the features that we have implemented thus far. Furthermore, this verification is something we had considered before and opted not to implement due to considerations that are elaborated upon below.

Noting the features of our application and the context in which it will be used, our user will likely be importing scores from an external CSV file (exported via Canvas / Source Academy).

We considered a likely scenario where some student records may have been mistakenly not given a student tag by the user. Should this restriction be present, the user may face issues when importing scores as those records without a student tag would not have their score imported.

As it is unlikely that scores existing in the imported document would belong to a non-student in the application, we chose not to add this restriction in our application as adding on the student tag after importing scores would be easier than re-importing the entire batch of scores again due to a few entries missing a tag.

We do believe however, that it would make sense to have a warning when a contact without a student tag is given a score. But as we have mentioned earlier, this is of much less importance than the features we have fixed and implemented thus far.

Items for the Tester to Verify

:question: Issue response

Team chose [response.NotInScope]

Reason for disagreement: [replace this with your explanation]


## :question: Issue severity Team chose [`severity.Low`] Originally [`severity.Medium`] - [x] I disagree **Reason for disagreement:** I agree that this issue might be NotInScope, since the current app works fine for the usual use case and that the warning can be added in the future. However, I still think the severity of this should be Medium: ![image.png](https://raw.githubusercontent.com/jimseah-0116/pe/main/files/c1fbc558-cf5d-4418-a6b1-7b6c387d2ba7.png) Being able to add a score to a non-student (without any validation check for this) is a very real and possible scenario when using the app, since the app would typically contain contacts such as the instructor or other avengers. Also, scores are added using the person's **index**, and it's easy to mistype a number index (e.g. saw the number wrongly), so this could happen more often than the "rare" frequency of a Low severity issue. In this occasional case, users are inconvenienced but are still able to use the app - this is in line with the specifications of a medium level severity.