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 719 38 BAZANTE_2017.zip BAZANTE Alice 412 41 ADECHI_2017.zip ADECHI Yannick 671 122 AMROUN_2017.zip AMROUN Lakhdar 222 62 BELHADI_2017.zip BELHADI Allaeddine 663 57 BISCAY_2017.zip BISCAY Thibaut 232 62 BOKA_2017.zip BOKA Yao 675 128 BOUZID_2017.zip BOUZID Mariam 568 120 BUNEL_2017.zip BUNEL Dylan 531 112 CALATAYUD_2017.zip CALATAYUD Thomas 630 72 CHEVALLIER_2017.zip CHEVALLIER Sullivan 452 189 CHOUAKRIA_2017.zip CHOUAKRIA Wassim 519 102 CISSE_2017.zip CISSE Sekou_Aboubacar 584 63 CLARTE_2017.zip CLARTE Jonathan 782 180 COUASNET_2017.zip COUASNET Robin 763 93 DESAGES_2017.zip DESAGES Nathan 332 151 GOLION_2017.zip GOLION Chandrache 188 79 GRANIER-RICHARD_2017.zip GRANIER-RICHARD Pierre 350 127 GUERIN_2017.zip GUERIN Nicolas 275 55 HENAUX_2017.zip HENAUX Vincent 797 37 IBRIR_2017.zip IBRIR Yassine 692 80 LAZRAK_2017.zip LAZRAK Zineb 365 193 LEBLANC_2017.zip LEBLANC Maxime 701 175 LEBLOND_2017.zip LEBLOND Alexis 451 163 LEBOT_2017.zip LEBOT Corentin 599 160 LOYE_2017.zip LOYE Delphine 211 33 LUBERT_2017.zip LUBERT Aurelien 612 76 MAINFROID_2017.zip MAINFROID Pierre-Olivier 416 192 MOHAMEDOUN_2017.zip MOHAMEDOUN Rahmatou_Walet 464 186 NAIT_2017.zip NAIT Atmane_Thanina 762 183 NAJIM_2017.zip NAJIM Hanane 772 43 RASOLONIAINA_2017.zip RASOLONIAINA Marlino 336 149 ROPERCH_2017.zip ROPERCH Thibaut 247 120 ROUX_2017.zip ROUX Nicolas 388 141 TALARMAIN_2017.zip TALARMAIN Corentin 593 156 TINYALI_2017.zip TINYALI Chafiq 246 176 TRAORE_2017.zip TRAORE Hamidou 133 145 VACHERON_2017.zip VACHERON Richard 526 80 VOILLEMIN_2017.zip VOILLEMIN Theo 650 196
Retour à la page principale de (gH)