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 617 112 BAZANTE_2017.zip BAZANTE Alice 314 128 ADECHI_2017.zip ADECHI Yannick 364 125 AMROUN_2017.zip AMROUN Lakhdar 555 124 BELHADI_2017.zip BELHADI Allaeddine 750 144 BISCAY_2017.zip BISCAY Thibaut 776 39 BOKA_2017.zip BOKA Yao 233 154 BOUZID_2017.zip BOUZID Mariam 201 185 BUNEL_2017.zip BUNEL Dylan 411 186 CALATAYUD_2017.zip CALATAYUD Thomas 777 48 CHEVALLIER_2017.zip CHEVALLIER Sullivan 195 162 CHOUAKRIA_2017.zip CHOUAKRIA Wassim 269 51 CISSE_2017.zip CISSE Sekou_Aboubacar 380 197 CLARTE_2017.zip CLARTE Jonathan 571 131 COUASNET_2017.zip COUASNET Robin 157 135 DESAGES_2017.zip DESAGES Nathan 125 142 GOLION_2017.zip GOLION Chandrache 493 148 GRANIER-RICHARD_2017.zip GRANIER-RICHARD Pierre 423 52 GUERIN_2017.zip GUERIN Nicolas 167 180 HENAUX_2017.zip HENAUX Vincent 291 55 IBRIR_2017.zip IBRIR Yassine 647 123 LAZRAK_2017.zip LAZRAK Zineb 285 149 LEBLANC_2017.zip LEBLANC Maxime 478 113 LEBLOND_2017.zip LEBLOND Alexis 519 82 LEBOT_2017.zip LEBOT Corentin 426 194 LOYE_2017.zip LOYE Delphine 151 181 LUBERT_2017.zip LUBERT Aurelien 705 136 MAINFROID_2017.zip MAINFROID Pierre-Olivier 284 84 MOHAMEDOUN_2017.zip MOHAMEDOUN Rahmatou_Walet 488 42 NAIT_2017.zip NAIT Atmane_Thanina 330 48 NAJIM_2017.zip NAJIM Hanane 446 197 RASOLONIAINA_2017.zip RASOLONIAINA Marlino 290 79 ROPERCH_2017.zip ROPERCH Thibaut 190 135 ROUX_2017.zip ROUX Nicolas 432 165 TALARMAIN_2017.zip TALARMAIN Corentin 284 178 TINYALI_2017.zip TINYALI Chafiq 298 158 TRAORE_2017.zip TRAORE Hamidou 180 149 VACHERON_2017.zip VACHERON Richard 614 183 VOILLEMIN_2017.zip VOILLEMIN Theo 431 50
Retour à la page principale de (gH)