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 785 33 BAZANTE_2017.zip BAZANTE Alice 534 68 ADECHI_2017.zip ADECHI Yannick 718 63 AMROUN_2017.zip AMROUN Lakhdar 221 123 BELHADI_2017.zip BELHADI Allaeddine 647 142 BISCAY_2017.zip BISCAY Thibaut 453 169 BOKA_2017.zip BOKA Yao 273 107 BOUZID_2017.zip BOUZID Mariam 337 200 BUNEL_2017.zip BUNEL Dylan 637 101 CALATAYUD_2017.zip CALATAYUD Thomas 706 56 CHEVALLIER_2017.zip CHEVALLIER Sullivan 568 54 CHOUAKRIA_2017.zip CHOUAKRIA Wassim 183 44 CISSE_2017.zip CISSE Sekou_Aboubacar 685 32 CLARTE_2017.zip CLARTE Jonathan 626 182 COUASNET_2017.zip COUASNET Robin 430 141 DESAGES_2017.zip DESAGES Nathan 256 136 GOLION_2017.zip GOLION Chandrache 141 139 GRANIER-RICHARD_2017.zip GRANIER-RICHARD Pierre 670 91 GUERIN_2017.zip GUERIN Nicolas 580 195 HENAUX_2017.zip HENAUX Vincent 175 75 IBRIR_2017.zip IBRIR Yassine 752 70 LAZRAK_2017.zip LAZRAK Zineb 359 101 LEBLANC_2017.zip LEBLANC Maxime 288 45 LEBLOND_2017.zip LEBLOND Alexis 767 199 LEBOT_2017.zip LEBOT Corentin 665 103 LOYE_2017.zip LOYE Delphine 383 171 LUBERT_2017.zip LUBERT Aurelien 751 126 MAINFROID_2017.zip MAINFROID Pierre-Olivier 167 124 MOHAMEDOUN_2017.zip MOHAMEDOUN Rahmatou_Walet 718 66 NAIT_2017.zip NAIT Atmane_Thanina 193 169 NAJIM_2017.zip NAJIM Hanane 275 118 RASOLONIAINA_2017.zip RASOLONIAINA Marlino 633 130 ROPERCH_2017.zip ROPERCH Thibaut 619 106 ROUX_2017.zip ROUX Nicolas 188 131 TALARMAIN_2017.zip TALARMAIN Corentin 123 120 TINYALI_2017.zip TINYALI Chafiq 781 163 TRAORE_2017.zip TRAORE Hamidou 133 76 VACHERON_2017.zip VACHERON Richard 476 197 VOILLEMIN_2017.zip VOILLEMIN Theo 242 137
Retour à la page principale de (gH)