The current situation is that if a grade is below a minimum value is entered (normally set at zero), it is converted to that minimum value. Likewise, scores over the maximum are converted to the maximum are set to the maximum --which is what interferes with some types of extra credit.
Now, while I don't personally use negative scores in my teaching (I don't want my students to despise me), I can imagine cases where it could be useful, for example:
1. The somewhat common practice of taking off 1/4 point on a 4 option multiple choice test to compensate for the effects of guessing that are used on standardized tests.
2. A grading policy where everyone starts at 100 (or the best grade), and only if they don't do tasks does their grade go down.
3. The option to penalize or fine certain undesired behavior, like excessive absences.
A couple other observations:
- In some modules, negative integers correspond to scaled scores like letter grades or text-based ratings. This would need to be considered in any implementation.
- Some might argue that allowing negative scores might allow for easier data-entry errors. I would argue, however, that these types of errors, just as those that exceed the upper boundary, are much easier to spot than converting a score to the boundary, so that would not be a good reason for the current practice.
--Gary