-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problème : DECODE et la mystérieuse fonction six_voeu_L1 #17
Comments
Je l'interprete comme : Mais rien ne dit que c'est un booleen (en tout cas pas d'apres juste les requetes, j'ai pas encore regarde le reste du code). |
Effectivement... depuis le début dans ma tête c'est un booléen, mais en fait si ça se trouve pas du tout... Il nous manque cette fonction six_voeu_L1 qui n'a pas été fournie par le Ministère. |
Autre chose que je viens de voir, lignes 172 a 186, a propos de la variable l_six_voe : Et plus loin : |
Bizarre, bizarre... ça ferait une redondance avec le decode cette phase, non ? |
Bah, cette phase prepare la variable l_six_voe pour le decode. |
aaaaaaaaaah ! Du coup l_six_voeu prend la valeur 1 si on est en type IDF 2,3,5,6 et 0 sinon, pour les autres groupes. Mais du coup ça signifie que dans le decode, si un candidat est IDF 2,3,5,6 alors on va retourner la valeur de la fonction six_voeux_l1 et sinon on renvoie la valeur 0. Ce qui signifierait, pour le coup, que les candidats hors IDF sont par défaut désavantagés ?.. Plus je comprends, moins c'est clair :'( |
C'est ce que je pensais au debut mais je n'en suis plus si sur. Ce qui semble etre l'effet voulu si je comprend bien. |
Ah je comprends. Quand ils disent "on vérifie si le code est issu d'une formation de type IDF", c'est qu'ils regardent si on est en ile de France. Si tel est le cas, l_six_voe prend la valeur 1 et du coup dans le Decode on ira appeler la fonction pour vérifier l'appartenance géographique et le critère des 6 voeux. Mais du coup c'est comme si la vérification d l'académie n'était faite que pour les formations en IDF et pas pour les formations or IDF. C'est bizarre... Ou alors je n'ai pas compris. |
Les seules licences non sélectives à capacité limitée sont en Île-de-France. D'après les rumeurs qui couraient à propos d'APB, les bacheliers de l'académie de l'université en question seraient prioritaires sur les bacheliers IDF qui seraient eux-mêmes prioritaires sur les autres. L'argument g_cn_flg_int_aca est sans doute l'académie du candidat. |
A priori ça ne devrait pas être appliqué qu'en île de france : |
Au temps pour moi. Les formations non sélectives à capacité limitée sont peut-être toutes considérées comme de type "IDF". Que signifie "vœu unique" ? Les prioritaires ne sont pas supposés être ceux qui ont formulé 6 vœux ou plus ? |
je pense que nous sommes tous d'accord, l_six_voe est un boolean, c'est confirmé par le test et par le code en X2 l_six_voe dépend du paramètre o_g_tg_cod , qui est lui même repassé à la fonction mystère. Donc pour reprendre tout ce qui a été dit, voilà ce que fait la fonction DECODE J'ai trouvé les champs dans le modèle https://drive.google.com/drive/folders/0B6a96AZlutX9RjRZLWxySjYxUVU g_cn_flg_int_aca est de type NUMBER(1) et ne correspond pas à une clé étrangère G_AA_COD_BAC_INT est de type NUMBER(3) et ne correspond pas à une clé étrangère Cette fonction n'a absolument aucun sens : La seule justification serait que la fonction mystère fasse une requête SQL avec le candiat et ces deux paramètres sur l'Ile de France. Encore une fois, tout ça suppose que le modèle est correct et qu'il y a bien des clés étrangères partout. Enfin bref, ça semble correspondre à la description de priorité que cite @GuillaumeTara. SI le groupe est issu d''une formation de type IDF 2 à 6 et s'il concerné par des néo d'IDF SINON retourne 0 (et le candidat se retrouve à la fin) Attention, (roulement de tambour) voilà ma déduction : La fonction mystère six_voeu_L1 permet de savoir si le candidat a fait un voeux unique pour l'académie IDF. Elle a besoin des trois paramètres car elle ne fait pas appel directement à la table candidat. |
J'en arrive à la même conclusion que @khena. Le booléen J'en viens à la fonction
Si je compare les arguments passés à la fonction, soit Il ne reste que le code du candidat pour une sélection dans une table. Comme le dit @khena, il doit servir à une requête, et probablement une requête sur la table des voeux.
Il est possible que ce Si tout cela est juste, pourquoi ici cet appel de fonction alors que le reste du script utilise des techniques type |
Bon les amis, si j'en crois la déclaration du ministère sur le site du monde (merci à @GuillaumeTara pour le retweet) : http://www.lemonde.fr/campus/article/2016/10/25/apb-les-questions-que-souleve-le-code-source_5020076_4401467.html
On parle bien de classement binaire, 1 puis 0 . |
Bonjour,
La deuxième phrase est plausible. Par contre APB donne entre autres la priorité aux étudiants qui ont postulé pour au moins 6 licences, d'où le nom de la fonction et c'est indiqué en clair aux candidats lors de leur procédure. Cela n'est donc pas possible que la fonction Six_voeu_L1 est une fonction booléenne qui indique est-ce que le candidat a fait un vœu unique. On sait au moins que cette fonction renvoie un nombre supérieur si le candidat en question a postulé pour + de 6 licences. |
D'après l'explication du ministère, je pense que la fonction renvoie 1 si le candidat a opté pour + de 6 licences :) |
@khena Peut-être une confirmation sur ce point, tirée du document http://cache.media.enseignementsup-recherche.gouv.fr/file/orientation-insertion_professionnelle/44/5/rapport-apb-oct2012_239445.pdf mentionné par @haplorhinien ailleurs (#26) : p. 16, il est expliqué que :
Conclusion probable : Pour être prudent, je formulerai ainsi : Mais tant qu'on n'a pas l'explication des magic numbers et la manière dont ils sont affectés aux formations, ni vu le code de la fonction, on en est réduit à faire confiance. |
Hello,
Je viens vers vous avec une question qui est assez cruciale dans l'algorithme...
Ligne 102 on a un DECODE(l_six_voe, 1, six_voeu_L1(c.g_cn_cod, g_aa_cod_bac_int, g_cn_flg_int_aca, o_g_tg_cod), 0) qui est le deuxième attribut du select.
En gros, on nous génère un booléen. Derrière, dans le order by il y a "ORDER BY 2 desc" (ligne 149). EN gros, ce booléen est discriminant puisqu'il va placer les candidats ayant un 1 dans tous les cas avant ceux qui ont un 0, quel que soit l'ordre de leur voeu.
Mais comment comprendre ce Decode ?
D'après la doc que j'ai pu lire, on va effectuer ces étapes :
IF l_six_voe == 1
THEN RETURN six_voeu_L1(c.g_cn_cod, g_aa_cod_bac_int, g_cn_flg_int_aca, o_g_tg_cod)
ELSE RETURN 0
Dans un premier temps, j'avais cru que ce booléen représentait le critère d'appartenance à l'académie du candidat. Car normalement la règle d'APB veut que les candidats de l'académie soient prioritaires.
Or, ici, en regardant le nom des variables et après une discussion avec une journaliste éduc à l'étudiant il semblerait plutôt qu'on soit en train de vérifier si les candidats ont bien rempli les 6 voeux. Car, en effet, en île de france les candidats doivent avoir rempli 6 voeux en licence.
Mais ce serait bizarre pour 2 raisons :
(i) Cette règle ne s'applique qu'aux candidats de l'ile de France
(ii) A quel moment dans le code vérifie-t-on le critère académique ? Parce qu'à aucun autre endroit dans les classements on ne semble checker si le candidat habite dans l'académie de la formation. Or, si c'est le cas il devrait être avantagé dans les classements.
Pour bien comprendre ce qui se passe, il nous manque le code de la fonction six_voeu_L1, j'en conviens.
Mais si on part du principe qu'on vérifie le critère des 6 licences, cela voudrait dire que le code fournit par APB ne correspond qu'aux licences d'IDF.... A moins que je ne sois passé à côté du critère géographique.
Qu'en pensez-vous ? Si vous avez des pistes d'éclairage, je suis preneur...
The text was updated successfully, but these errors were encountered: