Aalto-LeTech / jsav-exercise-recorder

Records students' solutions to JSAV-based visual algorithm simulation exercises
0 stars 1 forks source link

Scaffolded Prim: Add adjacency list of the graph and modify grading #263

Closed ttaiv closed 2 months ago

ttaiv commented 3 months ago

Added an adjacency list representation of the graph to the exercise and reverted the grading back to the default JSAV grading algorithm.

Closes #253 by "disguising" the alphabetic order requirement as requirement to follow the adjacency list.

ttaiv commented 3 months ago

Can removing the custom grading affect the recorded exercise data?

atilante commented 2 months ago

Can removing the custom grading affect the recorded exercise data?

Good catch! I tested this manually:

  1. Run the exercise in testbench
  2. Copy the JSON data from browser console into a JSON file
  3. Convert the file into HTML with jaal2html (in Dijkstra-misconceptions repo)
  4. Compare the semantic and SVG data.
  5. Check student's score in the JAAL data.

Based on one submission, removing the custom grading did not break JAAL recording at all. Moreover, it really should not, because JSAV Exercise Recorder reacts based mainly on the events it receives from JSAV. However, even the custom data fields pqIn and pqOperation inside animation[i], which the Prim exercise inserts by a direct call to the JSAV Exercise Recorder, were present and correct.

In addition, I tested that the automated grading stops giving points when neighbours are enqueued/updated in arbitrary order. Yes, this works as expected.

Very good! Please integrate this into CS-A1141 repo and request Archie to have a look.