Closed skindstrom closed 6 years ago
Changes are necessary in:
generate-groups
, regenerate-group
, next-group-generator
, end-dance
, start-round
.
For the frontend some sort of notification must be given to the admin that the next groups won't be generated until the previous groups are done.
Also related: 53f78b4bb213d67facd5a4295890f2f12d117ce0
A/ For the qualification where one role (e.g. Followers) is more numerous than the other role. Let's call phase A the first moment of the qualification, where every Leader dance one, and phase B the second moment, where each Follower who hasn't dance in phase A dances with a Leader who already danced in phase A.
A1/ The Leaders who dance again are those whose partner in phase A got the worst score. In case of equality among the partner score (eg. we should pick 4 Leaders but 3 Followers got the same worst score and 2 Followers got the same second worst score), pick randomly the Leaders (in the example, we pick the 3 who danced with the worst Followers and 1 among the 2 who danced with the second worst Followers). A2/ The final note of those who compete twice should be the average of phase A and B (and not the best one). A3/ There should be a pause between phase A and phase B. I do not remind well but, during the last tournament, the Leaders who had to dance twice where picked among the last phase A round (or was it among all phase A except the last round of phase A?). Anyways. To assure that every dancer has the same chances to be picked, we should wait for the end of phase A to pick the Leaders of phase 2.
So, basically, we have:
1/ make the couples of phase A + a list of Followers of phase B 2/ do phase A 3/ when we have every note, pick the Leaders of phase B 4/ do phase B 5/ the Leaders scores are the average of phase A&B 6/ select those who are selected
Tasks
Backend
next-group-generator
generate-groups
start-round
regenerate-group
end-dance
Frontend
GroupView
notification about when new groups will be generated