Langages de scripts : controle continu 2016-2017
gilles.hunault "at" univ-angers.fr
Pour le controle continu, vous devez réaliser un site Web fonctionnel sur votre portable sous Linux, opérationnel sur un autre ordinateur en utilisant Django 1.10 via Python 3.4. Pour cela, vous commencerez par lire le tutoriel Writing your first Django app parties 1 à 7 et vous réaliserez tout ce qui est proposé afin de vous familiariser avec Django.
Vous viendrez ensuite compléter le site du tutoriel avec la gestion de deux polls (sondage, questionnaire). Le premier poll consiste à demander à l'utilisateur s'il est fumeur, réponse obligatoire OUI ou NON. Le second poll demande à l'utilisateur sa taille en centimètres, son poids actuel en kilogrammes et le poids idéal qu'il/elle aimerait atteindre. Au passage, vous en profiterez pour traduire tous les affichages en français, histoire de prouver que vous savez d'où vient chaque page.
Vous implémenterez le service des pages en XHTML 1.0 strict plutôt qu'en HTML 5 (une validation sans erreur ni avertissement avec HTML Validator est conseillée), avec l'icone de validation associée,
Réaliser tout cela vous assurera la note de 10.
En option, et pour augmenter votre note, vous fournirez la liste des gens fumeurs et puis celle des non fumeurs dans un document PDF généré à la volée, vous afficherez un histogrammes des fréquences relatives des fumeurs et des non fumeurs (axes de 0 à 100 %) sous forme d'un graphique au format PNG, vous fournirez une liste alphabétique des personnes ayant donné leur poids avec les informations taille, poids actuel, IMC actuel, poids idéal et IMC idéal ainsi qu'un graphique au format SVG qui fournit un box-plot des poids réels et actuels, un graphique au format PNG de l'histogramme de la distribution des poids réels...
Vous documenterez ce que vous avez fait en rédigeant un document avec table des matières, pages numérotées, etc. Votre document devra inclure la liste des modules installés en plus du tutoriel, la structure et le contenu ou un extrait (pas trop important) de la base des données utilisée. Vous fournirez et vous expliquerez en détail les tests que vous avez ajoutés par exemple pour la partie fumeur/non fumeur et poids idéal car la qualité des tests et de la documentation fait partie de l'évaluation du projet.
En particulier, vous veillerez à ce qu'il y ait bien une table des matières correctement numérotée, des numéros de page, l'orthographe sera soigneusement vérifiée (comme pour le site construit). Vous indiquerez clairement quelle(s) page(s) vous avez modifiée(s), quel(s) fichier(s) CSS vous avez modifié(s) ou ajouté(s), etc. comme dans un vrai document digne d'une personne de niveau bac + 4.
Vous pouvez utiliser d'autres versions de Python et/ou Django à condition de bien indiquer les versions utilisées et de signaler tout changement par rapport au tutoriel. Vous avez bien sûr le droit d'utiliser tout module, package complémentaire pour que votre projet soit un "beau" projet. En particulier, l'utilisation de bibliothèques Javascript est fortement recommandée pour la réalisation des graphiques aux formats PNG et SVG. Vous prendrez alors bien soin de rédiger proprement comment vous avez interfacé Python et Javascript.
Le respect de toutes les consignes de départ pour un site fonctionnel correspond à une note de 10/20. Pour dépasser cette note, il faut implémenter les options proposées, soigner les affichages, peaufiner les graphiques et la mise en page, etc.
Vous devez rendre ce document PDF ainsi que l'archive ZIP de tout le projet (sauf les fichiers temporaires) au plus tard le vendredi 7 avril 2017, 10 h dernier délai, en le déposant dans votre dossier forge_html en respectant l'URL fournie dans le tableau ci-dessous (merci de m'indiquer rapidement toute erreur de nom ou autre faute de frappe) :
Remarque : l'archive doit absolument être au format ZIP et ne doit pas demander de mot de passe. Vous devez mettre le PDF du rapport dans l'archive.
Fichier Nom Prénom(s) Simulation (kO) Nb. fic (sim) ADAMOU_2017.zip ADAMOU Oumarou_Aboubacar 106 199 BAZANTE_2017.zip BAZANTE Alice 170 146 ADECHI_2017.zip ADECHI Yannick 359 78 AMROUN_2017.zip AMROUN Lakhdar 319 160 BELHADI_2017.zip BELHADI Allaeddine 572 185 BISCAY_2017.zip BISCAY Thibaut 188 101 BOKA_2017.zip BOKA Yao 190 171 BOUZID_2017.zip BOUZID Mariam 583 51 BUNEL_2017.zip BUNEL Dylan 287 107 CALATAYUD_2017.zip CALATAYUD Thomas 757 171 CHEVALLIER_2017.zip CHEVALLIER Sullivan 608 30 CHOUAKRIA_2017.zip CHOUAKRIA Wassim 291 172 CISSE_2017.zip CISSE Sekou_Aboubacar 355 152 CLARTE_2017.zip CLARTE Jonathan 366 98 COUASNET_2017.zip COUASNET Robin 446 117 DESAGES_2017.zip DESAGES Nathan 156 179 GOLION_2017.zip GOLION Chandrache 562 161 GRANIER-RICHARD_2017.zip GRANIER-RICHARD Pierre 168 48 GUERIN_2017.zip GUERIN Nicolas 139 74 HENAUX_2017.zip HENAUX Vincent 463 133 IBRIR_2017.zip IBRIR Yassine 397 194 LAZRAK_2017.zip LAZRAK Zineb 730 155 LEBLANC_2017.zip LEBLANC Maxime 670 152 LEBLOND_2017.zip LEBLOND Alexis 757 140 LEBOT_2017.zip LEBOT Corentin 752 32 LOYE_2017.zip LOYE Delphine 252 114 LUBERT_2017.zip LUBERT Aurelien 351 174 MAINFROID_2017.zip MAINFROID Pierre-Olivier 611 92 MOHAMEDOUN_2017.zip MOHAMEDOUN Rahmatou_Walet 678 80 NAIT_2017.zip NAIT Atmane_Thanina 528 116 NAJIM_2017.zip NAJIM Hanane 460 56 RASOLONIAINA_2017.zip RASOLONIAINA Marlino 287 186 ROPERCH_2017.zip ROPERCH Thibaut 158 152 ROUX_2017.zip ROUX Nicolas 770 183 TALARMAIN_2017.zip TALARMAIN Corentin 686 102 TINYALI_2017.zip TINYALI Chafiq 423 175 TRAORE_2017.zip TRAORE Hamidou 166 49 VACHERON_2017.zip VACHERON Richard 318 137 VOILLEMIN_2017.zip VOILLEMIN Theo 796 188
Retour à la page principale de (gH)