We made an error in a problem's answer. It wasn't detected until after the deadline of of a test. We have corrected the problem and can see the correct grades for each of the students manually. Is there a way to have Webwork regrade the entire class to avoid a lot of manual labor?
I don't believe WeBWorK has that feature. It would be nice to have. In theory, it could be implemented. There is a record of each submission that a student made, and you could imagine by clicking something, that it would go through all the previous submissions and re-evaluate them, increasing scores where appropriate.
There would be challenges to making this happen beyond just building the code to do it. If there were a homework set with 20 exercises, with 50 students, and each student had submitted an average of 5 attempts, then clicking to rescore the entire set would mean running PG problems 5000 times. There would be a temporary heavy load on the server, unless you code it to intentionally pace itself. Or maybe you engineer it so the instructor can only have a single problem rescored at a time: 100 executions from one click using that same example would not be so bad. It would be like viewing problems in the Library Browser.
Another issue I can think of comes from a design flaw with how answers are stored in the database. Say I have a HW set with exercises 1, 2, 3. And students submit several times for each question. Then for some reason I decide to delete question 2 from the set. And not knowing any better, I check the box so that problems are renumbered 1, 2. Now the records will indicate that the answers that students had entered for the original #2 go along with the new #2. If I were able to rescore, there isn't anything in the database structure that could apply the originally submitted answers to #3 to the new #2. Same issues if you decide to reorder problems after a set has been active. Without a significant re-engineering of the database, you would have to live with this. And know that you should not renumber problems in an active set.
Thanks for the prompt response.
I didn't really expect that it would be possible, but it was worth a try.