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 135 135 BAZANTE_2017.zip BAZANTE Alice 223 136 ADECHI_2017.zip ADECHI Yannick 283 148 AMROUN_2017.zip AMROUN Lakhdar 345 98 BELHADI_2017.zip BELHADI Allaeddine 183 93 BISCAY_2017.zip BISCAY Thibaut 480 47 BOKA_2017.zip BOKA Yao 409 118 BOUZID_2017.zip BOUZID Mariam 222 187 BUNEL_2017.zip BUNEL Dylan 426 179 CALATAYUD_2017.zip CALATAYUD Thomas 157 130 CHEVALLIER_2017.zip CHEVALLIER Sullivan 535 30 CHOUAKRIA_2017.zip CHOUAKRIA Wassim 776 193 CISSE_2017.zip CISSE Sekou_Aboubacar 412 43 CLARTE_2017.zip CLARTE Jonathan 139 157 COUASNET_2017.zip COUASNET Robin 126 192 DESAGES_2017.zip DESAGES Nathan 436 135 GOLION_2017.zip GOLION Chandrache 228 66 GRANIER-RICHARD_2017.zip GRANIER-RICHARD Pierre 347 146 GUERIN_2017.zip GUERIN Nicolas 624 192 HENAUX_2017.zip HENAUX Vincent 747 96 IBRIR_2017.zip IBRIR Yassine 625 117 LAZRAK_2017.zip LAZRAK Zineb 150 129 LEBLANC_2017.zip LEBLANC Maxime 254 42 LEBLOND_2017.zip LEBLOND Alexis 123 136 LEBOT_2017.zip LEBOT Corentin 333 153 LOYE_2017.zip LOYE Delphine 427 99 LUBERT_2017.zip LUBERT Aurelien 208 120 MAINFROID_2017.zip MAINFROID Pierre-Olivier 408 41 MOHAMEDOUN_2017.zip MOHAMEDOUN Rahmatou_Walet 305 58 NAIT_2017.zip NAIT Atmane_Thanina 431 71 NAJIM_2017.zip NAJIM Hanane 482 122 RASOLONIAINA_2017.zip RASOLONIAINA Marlino 354 158 ROPERCH_2017.zip ROPERCH Thibaut 262 196 ROUX_2017.zip ROUX Nicolas 233 67 TALARMAIN_2017.zip TALARMAIN Corentin 281 152 TINYALI_2017.zip TINYALI Chafiq 788 108 TRAORE_2017.zip TRAORE Hamidou 226 180 VACHERON_2017.zip VACHERON Richard 534 75 VOILLEMIN_2017.zip VOILLEMIN Theo 230 194
Retour à la page principale de (gH)