Moodle

Need to be able to add extra credit items when simple mean aggreagation used

Details

  • Type: Sub-task Sub-task
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.9
  • Fix Version/s: 1.9.5
  • Component/s: Gradebook
  • Labels:
    None
  • Affected Branches:
    MOODLE_19_STABLE
  • Fixed Branches:
    MOODLE_19_STABLE

Description

Need extra credit aggregation type/option so grade items can be set to allow student points to increase, but not course total points.

Issue Links

Activity

Hide
Gary Anderson added a comment -

Petr:

As you implement this, you will probably encounter the problems we have had with extra-credit. There are really three types of extra-credit activities:

1. Extra-credit points are added to an activity. This can bring points over 100% which is what we were addressing in MDL-12380,

2. Those activities that add points to a category that already has required activities. Then for any type of average, in effect, you just increase the numerator for those assignments without increasing the denominator (my hack is to designate such activities with ** at the end of the name, but core would need a better solution).

3. Those that are in a category that that have no required activities. The problem in that case is that you are dividing by zero when computing an average, so you can't use the same type of computation as with #2.

For #3, it is not a big issue if the category is designated as extra credit rather than the activities. Then if the category is worth 5%, and they have earned, say, 40 of 50 points in that category, it would increase the final grade by 4 percentage points. But it is an issue if you want to use the same type of computation as #2. And at the start of a course, the early activities in a category might be extra-credit, but later, required activities may be added.

You might find a more clever way to implement this, or may just have it apply to certain aggregation types, but the above are the problems we have encountered in trying to implement the types of extra credit that is used at our school.

Show
Gary Anderson added a comment - Petr: As you implement this, you will probably encounter the problems we have had with extra-credit. There are really three types of extra-credit activities: 1. Extra-credit points are added to an activity. This can bring points over 100% which is what we were addressing in MDL-12380, 2. Those activities that add points to a category that already has required activities. Then for any type of average, in effect, you just increase the numerator for those assignments without increasing the denominator (my hack is to designate such activities with ** at the end of the name, but core would need a better solution). 3. Those that are in a category that that have no required activities. The problem in that case is that you are dividing by zero when computing an average, so you can't use the same type of computation as with #2. For #3, it is not a big issue if the category is designated as extra credit rather than the activities. Then if the category is worth 5%, and they have earned, say, 40 of 50 points in that category, it would increase the final grade by 4 percentage points. But it is an issue if you want to use the same type of computation as #2. And at the start of a course, the early activities in a category might be extra-credit, but later, required activities may be added. You might find a more clever way to implement this, or may just have it apply to certain aggregation types, but the above are the problems we have encountered in trying to implement the types of extra credit that is used at our school.
Hide
Petr Škoda (skodak) added a comment -

I was thinking about adding this extra credit option only to GRADE_AGGREGATE_SUM aggregation, the aggregation coef is not used and there could be an extra credit checkbox on the grade item edit form. There would be no problems with divisions by zore, because there are no divisions involved in this type.
In theory we could add it to GRADE_AGGREGATE_WEIGHTED_MEAN2, but I do not think it would be useful much.

thanks!

Show
Petr Škoda (skodak) added a comment - I was thinking about adding this extra credit option only to GRADE_AGGREGATE_SUM aggregation, the aggregation coef is not used and there could be an extra credit checkbox on the grade item edit form. There would be no problems with divisions by zore, because there are no divisions involved in this type. In theory we could add it to GRADE_AGGREGATE_WEIGHTED_MEAN2, but I do not think it would be useful much. thanks!
Hide
Petr Škoda (skodak) added a comment -

sum aggregation now has extra credit too; fixed division by 0 and fixed a bug in sum aggregation (was not ignoring scales)
this should solve this issue, please test
the "over 100% grade" issue is not affected by this change

thanks for the report!

Show
Petr Škoda (skodak) added a comment - sum aggregation now has extra credit too; fixed division by 0 and fixed a bug in sum aggregation (was not ignoring scales) this should solve this issue, please test the "over 100% grade" issue is not affected by this change thanks for the report!
Hide
Robert Russo added a comment -

Any chance of getting this done for other aggregation methods?

Show
Robert Russo added a comment - Any chance of getting this done for other aggregation methods?
Hide
Petr Škoda (skodak) added a comment -

What other types exactly and how would you do the math behind it?

Show
Petr Škoda (skodak) added a comment - What other types exactly and how would you do the math behind it?
Hide
Vicki Butler added a comment -

I have teachers who want to do a "stand alone" extra credit assignment. They do not want to add bonus points to a given assignment. When they create an extra credit (optional) assignment they cannot just give the assignment a zero (no option to do that) and if they mark it as "no grade" they cannot give any points to the assignment. The ** piece did not work. Suggestions?

Show
Vicki Butler added a comment - I have teachers who want to do a "stand alone" extra credit assignment. They do not want to add bonus points to a given assignment. When they create an extra credit (optional) assignment they cannot just give the assignment a zero (no option to do that) and if they mark it as "no grade" they cannot give any points to the assignment. The ** piece did not work. Suggestions?
Hide
Robert Russo added a comment -

Specifically Extra Credit for Weighted Mean. We've added this support in our gradebook, but it would be nice if it existed in Core.

Show
Robert Russo added a comment - Specifically Extra Credit for Weighted Mean. We've added this support in our gradebook, but it would be nice if it existed in Core.
Hide
Michael Skwara added a comment -

We'd really like to be able to be able to set an extra credit assignment with the simple weighted mean aggregation strategy or be able to use the "aggregate only non-empty grades" option with extra credit assignments using the sum aggregation method.

Basically we need to be able to calculate the course total based only on the assingments that have been graded and have the ability to give students extra credit assignments, preferably with the ability for the student to exceed 100% in the course total.

For example, a course has only five 20 point quizzes, and two 5 point extra credit assingments:
A student who has completed two quizzes with a grade of 20 on both, and earned 5 extra credit points should have a total of 45/40 ot 112.5%
Another student has completed the first quiz, with a grade of 18, and no other quizzes or extra credit. His course total is 18/20 or 90%

As the gradebook is now, The closest we can get to this is using "Sum of grades" and extra credit, but this does not allow for scores above 100% and does not allow students to see an accurate course total based on only on non-empty grades.

This would probably require that the range for course total not be enabled since it would be different for each student, but it can already be hidden.

Show
Michael Skwara added a comment - We'd really like to be able to be able to set an extra credit assignment with the simple weighted mean aggregation strategy or be able to use the "aggregate only non-empty grades" option with extra credit assignments using the sum aggregation method. Basically we need to be able to calculate the course total based only on the assingments that have been graded and have the ability to give students extra credit assignments, preferably with the ability for the student to exceed 100% in the course total. For example, a course has only five 20 point quizzes, and two 5 point extra credit assingments: A student who has completed two quizzes with a grade of 20 on both, and earned 5 extra credit points should have a total of 45/40 ot 112.5% Another student has completed the first quiz, with a grade of 18, and no other quizzes or extra credit. His course total is 18/20 or 90% As the gradebook is now, The closest we can get to this is using "Sum of grades" and extra credit, but this does not allow for scores above 100% and does not allow students to see an accurate course total based on only on non-empty grades. This would probably require that the range for course total not be enabled since it would be different for each student, but it can already be hidden.
Hide
Nicolas Connault added a comment -

Michael,

What does 100% represent in your case? Does it mean that the grade is sufficient to pass? I don't see the logic behind giving people more than 100% of the maximum grade. If you need the concept of "Grade to pass", this exists in 1.9, you can set what grade is required for a pass. Or you can set up grade letters at different percentages, and tell your students that A or B is required to pass.

My point is that total grade is a number, but its meaning is subjective. All this extra credit business is extremely complex and, at least in my opinion, unnecessary.

Show
Nicolas Connault added a comment - Michael, What does 100% represent in your case? Does it mean that the grade is sufficient to pass? I don't see the logic behind giving people more than 100% of the maximum grade. If you need the concept of "Grade to pass", this exists in 1.9, you can set what grade is required for a pass. Or you can set up grade letters at different percentages, and tell your students that A or B is required to pass. My point is that total grade is a number, but its meaning is subjective. All this extra credit business is extremely complex and, at least in my opinion, unnecessary.
Hide
Michael Skwara added a comment -

Thanks very much for your response, Nicholas. From a strictly mathematical perspective, I completely share your frustration on the concept of extra credit pushing a score above the "maximum" total possible points. Unfortunately, 100% in this context does not indicate the minimum to pass, and setting up a grade letter scale also does not get at the concept.

Extra credit in this context is generally given as an opportunity for students to make additional effort or make up for a poor performance. This opportunity for students to increase the number of points they have earned in a course without changing the total possible is only available to those who complete the optional extra credit assignment. While it does not happen often, the possibility exists that extra credit could cause a student to earn a score in excess of 100% for a course. However, in my experience this model is very widely used in American secondary and college/university settings and is a behavior that is built in to the concept of extra credit, which in turn is a very common course component in this environment. In my initial search of the forums for a resolution to this I've seen quite a few posts from others are in the position of needing to implement at least some elements of this type of extra credit.

The most important element in this concept is ability to add an assignment that increases the total points earned while not increasing the total points possible in an aggregate only non-empty grades setting. Honestly, I think if we could do that, our faculty might be able to make peace with a student earning 105 points out of 100 possible in a course and having that displayed at 100%, but just barely. : ) On the other hand, implementing that first possibility might make the second fairly easy.

While our faculty can currently do extra credit using the "Sum of Grades" aggregation type, this does not allow them to "Aggregate only non-empty grades" which prevents us from showing an accurate measure of progress so-far to students at any point in the course. The ability to use extra credit in the "simple weighted mean" with "aggregate only non-empty grades" option, or the ability to use "aggregate only non-empty grades" option in "sum of grades" is the most significant element in this concept. I am certain that it would eliminate a lot of the frustration some of us are having getting extra credit to work and address the requests in these threads and similar posts:
http://moodle.org/mod/forum/discuss.php?d=105478
http://moodle.org/mod/forum/discuss.php?d=101383#p448332
http://moodle.org/mod/forum/discuss.php?d=93554 http://moodle.org/mod/forum/discuss.php?d=105478#p502861

Show
Michael Skwara added a comment - Thanks very much for your response, Nicholas. From a strictly mathematical perspective, I completely share your frustration on the concept of extra credit pushing a score above the "maximum" total possible points. Unfortunately, 100% in this context does not indicate the minimum to pass, and setting up a grade letter scale also does not get at the concept. Extra credit in this context is generally given as an opportunity for students to make additional effort or make up for a poor performance. This opportunity for students to increase the number of points they have earned in a course without changing the total possible is only available to those who complete the optional extra credit assignment. While it does not happen often, the possibility exists that extra credit could cause a student to earn a score in excess of 100% for a course. However, in my experience this model is very widely used in American secondary and college/university settings and is a behavior that is built in to the concept of extra credit, which in turn is a very common course component in this environment. In my initial search of the forums for a resolution to this I've seen quite a few posts from others are in the position of needing to implement at least some elements of this type of extra credit. The most important element in this concept is ability to add an assignment that increases the total points earned while not increasing the total points possible in an aggregate only non-empty grades setting. Honestly, I think if we could do that, our faculty might be able to make peace with a student earning 105 points out of 100 possible in a course and having that displayed at 100%, but just barely. : ) On the other hand, implementing that first possibility might make the second fairly easy. While our faculty can currently do extra credit using the "Sum of Grades" aggregation type, this does not allow them to "Aggregate only non-empty grades" which prevents us from showing an accurate measure of progress so-far to students at any point in the course. The ability to use extra credit in the "simple weighted mean" with "aggregate only non-empty grades" option, or the ability to use "aggregate only non-empty grades" option in "sum of grades" is the most significant element in this concept. I am certain that it would eliminate a lot of the frustration some of us are having getting extra credit to work and address the requests in these threads and similar posts: http://moodle.org/mod/forum/discuss.php?d=105478 http://moodle.org/mod/forum/discuss.php?d=101383#p448332 http://moodle.org/mod/forum/discuss.php?d=93554 http://moodle.org/mod/forum/discuss.php?d=105478#p502861
Hide
Martin Dougiamas added a comment -

We still need to fix this one, guys.

It should be possible to have "extra credit" items in aggregations other than sum of grades. These extra credit items are added after the normal calculation (whatever it is) has been done. Is there a reason we don't do this?

Show
Martin Dougiamas added a comment - We still need to fix this one, guys. It should be possible to have "extra credit" items in aggregations other than sum of grades. These extra credit items are added after the normal calculation (whatever it is) has been done. Is there a reason we don't do this?
Hide
Petr Škoda (skodak) added a comment -

To Martin: I do not understand, we have extra credit mean since the very beginning, now it will be possible to turn on grades>100% and that should effectively result in allowing extra credits everywhere by giving >100%

To Michael: the progress so far can not be implemented this way because the aggregation maximum is stored in database and is the same for all students. If we improve the calculations a bit it should be possible to do this at least by manually adding some complex formula.

Show
Petr Škoda (skodak) added a comment - To Martin: I do not understand, we have extra credit mean since the very beginning, now it will be possible to turn on grades>100% and that should effectively result in allowing extra credits everywhere by giving >100% To Michael: the progress so far can not be implemented this way because the aggregation maximum is stored in database and is the same for all students. If we improve the calculations a bit it should be possible to do this at least by manually adding some complex formula.
Hide
Gary Anderson added a comment -

Petr:

I don't think that MDL-12380 resolves this issue.

I went back and played with version 1.8 and then imported that site to 1.9. The feature is not available in the new version as best as I can tell.

To reproduce:

1. Create a new course with two activities (say assignments). One worth 100 points (call it 100 points required) and one worth 10 points (call it 10 points Extra Credit).

2. With 5 or so students in that course, give them various combinations of scores and some missing scores. Allow at least one student to have the combined scores go over 100%.

3. Note the computations. You can put these into categories and weight them, but it is not needed. Note that before 1.9, percents over 100% were supported. Note also, that if the user interface of a module allowed it, the gradebook let activities go over 100% also.

4. Now, import the site to 1.9, with or without the current gradebook patch. You will note that the extra credit feature is dropped both from the computation and the user interface. The "aggregation coefficient" field of the extra credit assignment is set to 1, but it does not seem to affect the computations. There is no obvious way to restore this feature with Moodle currently, including with the MDL-12380 patch, even with supplemental patches like new aggregation types.

5. We do have it patched at our school and it has withstood the test of time. A core fix would require a better implementation; sites can just hack things to meet their needs. But it can be done.

The way I look at it, this type of feature was added and then iteratively developed in the early stages of Moodle based on user input. It was then dropped in the 1.9 gradebook and the issue keeps coming up. Ideally, it would be great if you and Nicholas would be able to better understand why this feature is needed in practice as you control what gets put into the code. But I don't think this problem is going to go away until fixed.

Frankly, the problem is resolved on my site and I will only be vocal about it when people ask about it persistently in the community. But I do think it is best for the product to restore it as a feature.

--Gary

Show
Gary Anderson added a comment - Petr: I don't think that MDL-12380 resolves this issue. I went back and played with version 1.8 and then imported that site to 1.9. The feature is not available in the new version as best as I can tell. To reproduce: 1. Create a new course with two activities (say assignments). One worth 100 points (call it 100 points required) and one worth 10 points (call it 10 points Extra Credit). 2. With 5 or so students in that course, give them various combinations of scores and some missing scores. Allow at least one student to have the combined scores go over 100%. 3. Note the computations. You can put these into categories and weight them, but it is not needed. Note that before 1.9, percents over 100% were supported. Note also, that if the user interface of a module allowed it, the gradebook let activities go over 100% also. 4. Now, import the site to 1.9, with or without the current gradebook patch. You will note that the extra credit feature is dropped both from the computation and the user interface. The "aggregation coefficient" field of the extra credit assignment is set to 1, but it does not seem to affect the computations. There is no obvious way to restore this feature with Moodle currently, including with the MDL-12380 patch, even with supplemental patches like new aggregation types. 5. We do have it patched at our school and it has withstood the test of time. A core fix would require a better implementation; sites can just hack things to meet their needs. But it can be done. The way I look at it, this type of feature was added and then iteratively developed in the early stages of Moodle based on user input. It was then dropped in the 1.9 gradebook and the issue keeps coming up. Ideally, it would be great if you and Nicholas would be able to better understand why this feature is needed in practice as you control what gets put into the code. But I don't think this problem is going to go away until fixed. Frankly, the problem is resolved on my site and I will only be vocal about it when people ask about it persistently in the community. But I do think it is best for the product to restore it as a feature. --Gary
Hide
Petr Škoda (skodak) added a comment - - edited

hi Gary,
last week during Martin's keynote in Germany I saw 400 laughing people when he mentioned problem of grades > 100 % :-D

I have also discussed your problem a bit more with Martin, the only solution I see now is to do the following:
1/ add global switch which turns on grades > 100% everywhere (and yes, the regrading is required)
2/ add option which limits displaying of aggregation types
3/ add new aggregation type which tries to emulate the American grading style that was present in < 1.9 (requires 1/ enabled and new UI changes from stage 1)

The 1/ and 2/ should be relatively easy, I suppose it will land in cvs next week. The 3/ will require a bit more time.

To all: Is there anybody willing to work on proposed new aggregation type and related user interface changes?

Show
Petr Škoda (skodak) added a comment - - edited hi Gary, last week during Martin's keynote in Germany I saw 400 laughing people when he mentioned problem of grades > 100 % :-D I have also discussed your problem a bit more with Martin, the only solution I see now is to do the following: 1/ add global switch which turns on grades > 100% everywhere (and yes, the regrading is required) 2/ add option which limits displaying of aggregation types 3/ add new aggregation type which tries to emulate the American grading style that was present in < 1.9 (requires 1/ enabled and new UI changes from stage 1) The 1/ and 2/ should be relatively easy, I suppose it will land in cvs next week. The 3/ will require a bit more time. To all: Is there anybody willing to work on proposed new aggregation type and related user interface changes?
Hide
Gary Anderson added a comment -

Petr:

Since there have been a number of forum posts and tracker items on this issue, I have created a subpage on my docs.moodle.org talk page that summarizes where I am personally on this issue. Hopefully that will avoid redundancy and disconnected ideas.

http://docs.moodle.org/en/User_talk:Gary_Anderson/Extra_credit_status

Take care,

--Gary

Show
Gary Anderson added a comment - Petr: Since there have been a number of forum posts and tracker items on this issue, I have created a subpage on my docs.moodle.org talk page that summarizes where I am personally on this issue. Hopefully that will avoid redundancy and disconnected ideas. http://docs.moodle.org/en/User_talk:Gary_Anderson/Extra_credit_status Take care, --Gary
Hide
Petr Škoda (skodak) added a comment -

simple mean aggregation now supports extra credit, I have also fixed upgrade - please test
thanks for the report

Show
Petr Škoda (skodak) added a comment - simple mean aggregation now supports extra credit, I have also fixed upgrade - please test thanks for the report

Dates

  • Created:
    Updated:
    Resolved: