Projet : site web de gestion de jeu



Documents pareils
Groupe Eyrolles, 2003, ISBN : X

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2

Utiliser un CMS: Wordpress

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

Mercredi 15 Janvier 2014

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Manuel d'utilisation du site Deptinfo (Mise en route)

(Mis à jour : 7 déc. 12)

HTML. Notions générales

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Bureautique Initiation Excel-Powerpoint

Nom de l application

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Publier dans la Base Documentaire

WordPress :: Migrer son site du local vers le serveur en ligne

Dans cette Unité, nous allons examiner

MANUEL DE L UTILISATEUR

Installation / Sauvegarde Restauration / Mise à jour

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

CREG : versailles.fr/spip.php?article803

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Publier un Carnet Blanc

145A, avenue de Port Royal, Bonaventure (Québec) G0C 1E0 Sans frais :

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Documentation de conception

Notes pour l utilisation d Expression Web

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Licence de Biologie, 1ère année. Aide. [Aide 1] Comment utiliser l'explorateur Windows? Comment créer des dossiers?

Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites. Quelles solutions peuvent être employées?

Services bancaires par Internet aux entreprises. Guide pratique pour : Rapports de solde Version

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Bernard Lecomte. Débuter avec HTML

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.

COURS WINDEV NUMERO 3

Manuel de mise en page de l intérieur de votre ouvrage

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

A.-M. Cubat Mise à jour de PMB Passer à une version plus récente du logiciel Page 1 Source :

Table des Matières. Pages 3-4. A propos d emblue. Page 5. L environnement emblue. Création d une campagne d marketing. Pages 6-15.

mon site web via WordPress

et de la feuille de styles.

PROJET DE PORTAIL INTRANET YNNA

Formation. Module WEB 4.1. Support de cours

Joomla! Création et administration d'un site web - Version numérique

Thème : Gestion commerciale

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors

MANUEL INSTALLATION. GANESHA version 4. Editeur Anéma SAS Département Développement

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Manuel utilisateur du logiciel PrestaConnect.

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013

Tapez le titre de la page «BASTIA ville méditerranéenne», puis allez deux fois à la ligne à l aide de la touche Entrée.

Créer un site Internet dynamique

Introduction à Expression Web 2

TP1 - Prise en main de l environnement Unix.

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

Création, analyse de questionnaires et d'entretiens pour Windows 2008, 7, 8 et MacOs 10

Tutoriel BLOGGER. Pour vous donner une idée, voici un exemple de blog :

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

Gestion d'un parc informatique avec OCS INVENTORY et GLPI

Services bancaires par Internet aux entreprises. Guide pratique pour : Transfert de fichiers Version

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Remarques préliminaires L installation a été testée sur XP, Vista et Windows 7.

Guide du RDAQ. Comment saisir des descriptions de fonds et collections dans le Réseau de diffusion des archives du Québec (RDAQ)

«L espace SpidWeb» Gestion administrative

SOMMAIRE. 1. Connexion à la messagerie Zimbra Pré-requis Ecran de connexion à la messagerie 4

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

Manuel d utilisation du web mail Zimbra 7.1

TUTORIEL Qualit Eval. Introduction :

Informations techniques préparatoires

Taxe de séjour - Manuel de l utilisateur. Déclaration en ligne. Logiciel 3D Ouest

GUIDE D UTILISATION CRÉER SON SITE WEB - PROJET RESCOL

Formation Word/Excel. Présentateur: Christian Desrochers Baccalauréat en informatique Clé Informatique, 15 février 2007

FileMaker Server 14. Aide FileMaker Server

Installation de Joomla avec Filezilla

2 LES BASES DU HTML 19 Qu est-ce que le HTML? 20 De quand date le HTML? 20 Écrire son propre code HTML 22

INTERCONNEXION ENT / BCDI / E - SIDOC

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net

Thème : Création, Hébergement et référencement d un site Web

Les 1 er pas sur. Guide d utilisation

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var - E mail : bij@agasc.fr / Tel : CONSIGNE N 1 :

Cahier n o 6. Mon ordinateur. Fichiers et dossiers Sauvegarde et classement

SUPPORT DE COURS / PHP PARTIE 3

Guide d usage pour Word 2007

Initiation à html et à la création d'un site web

SIECLE. Comptes Parents

Schéma relationnel et contraintes d intégrité : le cas ConduiteAuto

Programmation Web TP1 - HTML

Manuel d utilisation de la messagerie.

Service On Line : Gestion des Incidents

MANUEL D INSTALLATION

Documentation Honolulu 14 (1)

1 - Se connecter au Cartable en ligne

E.N.T. Espace Numérique de Travail

GUIDE D UTILISATION DE LA PLATEFORME DE L UNIVERSITE DE BOURGOGNE POUR L ENSEIGNEMENT EN LIGNE ( PLUBEL )

Manuel MyUnisoft Mes devis et Factures

KIELA CONSULTING. Microsoft Office Open Office Windows - Internet. Formation sur mesure

Avertissement. La Gestion Electronique de Documents

INFO 364 : Bases de Données Projet Professeur : Esteban Zimányi Assistants : Pierre Stadnik et Mohammed Minout Année Académique :

Création WEB avec DreamweaverMX

Transcription:

Projet : site web de gestion de jeu Partie 1 (modélisation et architecture du site) UCBL - Département Informatique de Lyon 1 LIF4 - automne 2015 1 Description générale du projet Le projet est à réaliser en binôme ou individuellement (pas de trinôme). Un binôme signifie deux étudiant-e-s du même groupe de TD. Il porte sur la création d un site Web permettant de gérer des parties de jeu de société. Partie 1 (TP5) Modélisation de la BD, architecture du site Partie 2 (TP6) Ajout de données dans la BD via un formulaire Web Partie 3 (TP7) Générateur aléatoire de parties Partie 4 (TP8) Fonctionnalités supplémentaires Partie 5 (TP9) Cette séance est réservée à une soutenance de 15 à 20 minutes pour évaluer chaque binôme (déroulement d un scénario, explication de code, etc.). Le projet sera à rendre sur Spiral le jour même de votre soutenance (avant minuit) 2 Rendu et notation du projet 2.1 Rendu du projet Ce projet est à rendre avec les consignes de rendu suivantes : Le fichier rendu (un seul par binôme) aura une extension zip et il doit inclure votre/vos noms à la fois dans le nom de fichier et à l intérieur des fichiers Ce fichier zip contiendra 3 fichiers : le répertoire contenant les pages de votre site (code commenté et indenté). Le projet sera évalué avec le navigateur Mozilla Firefox, donc vérifiez le rendu de votre site avec ce navigateur! un fichier.txt qui contiendra le script SQL "exécutable de création de votre base de données un rapport au format pdf, et dont le nom de fichier inclut votre/vos numéros étudiant Ce fichier zip est à rendre le jour de la séance de TP9 avant minuit dans la zone de dépôt Spiral. Tout binôme ne respectant pas ces consignes se verra attribuer la note 0 au rapport, au code et/ou à l ensemble du projet. 2.2 Notation Le projet compte pour 30% dans la note de l UE, et la note de projet se calcule ainsi : note_projet = 1 3 soutenance + 1 3 code + 1 3 rapport De plus, les conditions suivantes s appliquent : Concernant la soutenance : au sein du binôme, la note de soutenance peut être différente pour les 2 étudiant-e-s (contrairement aux notes de code et rapport qui sont identiques) Concernant le code : toute ressemblance trop importante entre des projets sera sanctionnée par un 0 pour la note de code et ce pour chacun des protagonistes Concernant le rapport : il doit être au format PDF, de 8 pages maximum (annexes inclues), organisé, clair, au format A4 et en police de taille 12, et l orthographe sera prise en compte. Il détaillera l état d avancement du projet, les problèmes rencontrés aussi bien au niveau organisationnel (travail en équipe) qu au niveau technique, des réponses argumentées et pertinentes aux questions, et toute information que vous jugerez pertinente de préciser. Le contenu doit nous être instructif, par exemple pour nous permettre de comprendre des choix de conception/programmation, d évaluer des problèmes organisationnels, ou 1

d obtenir des critiques constructives sur le sujet de projet. En résumé, il vaut mieux un rapport de 4 pages avec des informations pertinentes plutôt qu un rapport de 8 pages truffé d évidences ou de copier-coller... 2.3 Utilisation d un framework Il est possible d utiliser un framework PHP ou CSS de votre choix, sous les conditions suivantes : Vous êtes autonome(s) : les chargé-e-s de TP ne sauront pas forcément vous aider en cas de problème avec le framework Vous devez vous assurer que votre site fonctionnera sous XAMPP (sans configuration ni installation, excepté la création de la BD) L aide que procure le framework sera compensée par une plus grande exigence au niveau des résultats, en terme de fonctionnalités, qualité du code, etc. 3 Documentation MySQL et PHP Rien de tel que la consultation des docs officielles pour répondre à vos questions! Documentation de MySQL (et les commandes SQL implémentées dans ce SGBD) : http://dev.mysql.com/doc/refman/5.0/fr/index.html Documentation de PHP et index des fonctions de PHP : http://www.php.net/manual/fr/ http://www.php.net/manual/fr/funcref.php 4 Description de la partie "modélisation et architecture" Dans cette première partie du projet, vous allez concevoir la base de données. Ensuite, vous créerez l architecture de votre site Web et deux premières pages (accueil et à propos). 4.1 Conception de la base de données Objectifs de cette étape : Produire le modèle conceptuel (schéma entité/association) à partir des spécifications Produire le modèle logique (modèle Relationnel) Produire le script de création de la base (SQL) Importer ce script dans MySQL (avec l interface PhpMyAdmin) 4.1.1 Produire le schéma entité/association Vous êtes libre(s) d utiliser le logiciel de votre choix pour concevoir le schéma entité association, avec le formalisme Merise. Les spécifications de l application Web à réaliser sont les suivantes : Le site Web a pour objectif principal la gestion de parties de jeux de société. En particulier, le site doit permettre de saisir une nouvelle partie, de générer des parties aléatoires, de visualiser des salles de jeux ou joueuses sur une carte et de suggérer des recommandations de jeux. Décrivons tout d abord les joueuses. Celles-ci possèdent un pseudo, un nom, un prénom et une date de naissance. Le pseudo est unique et ne peut plus être modifié une fois choisi. Chaque joueuse possède également une adresse postale, qui inclut la rue, le code postal, la ville, la région. Éventuellement, une adresse postale peut être rattachée à un lieu, qui se définit comme une entité géographique avec un nom et des coordonnées géographiques (latitude et longitude, e.g., 45.762391 et 4.822415 pour la Basilique de Fourvière). Une équipe, qui possède un nom, une date de création et une devise, permet de regrouper au moins deux joueuses pour des jeux en équipe. Il n y a pas de restriction sur le nombre d équipes qu une joueuse peut rejoindre, et on enregistre sa dernière date d arrivée dans l équipe. Une notion cruciale dans ce projet est celle de jeu au sens large, bien que l application doit permettre de gérer obligatoirement les jeux de société (et éventuellement des jeux vidéos, des évènements sportifs). Chaque jeu a un nom, une date de sortie et il est créé par des auteurs. Par contre, c est un éditeur, et un seul, qui se charge de concevoir le jeu. Les jeux sont souvent réservés à un public (selon l âge, e.g., "à partir de 10 ans"). Le jeu 2

est également prévu pour un nombre de joueurs donné (e.g., "de 2 à 6 joueurs") et fait partie d une ou plusieurs catégories (e.g., "jeu de plateau", "jeu de rôle", "jeu de dés"). Dans l application, il sera nécessaire de filtrer les jeux, par exemple "liste des jeux de cartes à partir de 7 ans et pour 3 joueurs". Enfin, un jeu peut proposer des extensions (e.g., le jeu "les aventuriers du rail" se déroule initialement aux États-Unis, mais possède une extension pour la Scandinavie, Bretagne, etc.). Chaque nouvelle extension s identifie par un numéro équivalent à son ordre d apparition parmi les extensions de ce jeu. Comme pour un jeu, une extension comporte un nom et une date de sortie. L un des buts de cette application est de stocker des parties, c est à dire les résultats d une joueuse ou équipe à un jeu donné. Une partie possède donc un score, une durée et une valeur indiquant si la joueuse/équipe a gagné. À noter que l on connait aussi la durée moyenne d une partie d un jeu. Une partie se déroule à une date précise et dans un lieu donné, ce qui permettra de rechercher des joueuses par zone géographique. Une même joueuse/équipe peut évidemment jouer au même jeu plusieurs fois par jour. Enfin, des statistiques seront produites sur les parties et les joueuses. 4.1.2 Produire le modèle Relationnel Selon l outil de modélisation choisi à l étape précédente, il est possible de générer le modèle Relationnel automatiquement, mais il est recommandé de bien vérifier le résultat obtenu et de le modifier si nécessaire. Sinon, la dérivation du MCD vers le MLD se fait à partir des règles énoncées en cours. 4.1.3 Produire le script SQL de création de la base Selon l outil de modélisation choisi à l étape précédente, il est possible de générer le script de création des tables automatiquement (mais il est recommandé de bien vérifier le résultat obtenu et de le modifier si nécessaire). Sinon, écrivez les requêtes de création de vos tables. Vous inclurez une exportation de votre base de données dans le fichier zip de rendu. Finalement, importez votre script dans la base de données MySQL. 4.2 Architecture du site Objectifs de cette étape : Créer la hiérarchie de fichiers de votre site Structurer les différentes parties d une page (menu, contenu principal, etc.) Personnaliser la page d accueil Personnaliser la page "à propos" 4.2.1 Créer la hiérarchie de fichiers Dans le répertoire de XAMPP sur votre clé USB, vous trouverez un sous-répertoire htdocs/. Ce sousrépertoire contient les différents sites qui sont hébergés par votre ordinateur. Pour accéder à l un de ces sites, par exemple, celui dans le sous-répertoire repertoire_de_votre_site, il suffit de taper dans un navigateur (numéro de port variable selon votre configuration) : http://localhost:8080/repertoire_de_votre_site/. En tapant cette URL, le navigateur cherche alors à afficher un fichier index.* présent à la racine du sous-répertoire repertoire_de_votre_site. En général, c est le fichier index.html, index.php ou index.asp 1. Créez un nouveau répertoire à l intérieur du répertoire htdocs de XAMPP. C est ici que vous allez stocker les fichiers de votre site. Pour illustrer un exemple, on considère que vous avez créé un répertoire qui a pour nom repertoire_de_votre_site. Pour créer la hiérarchie de fichiers pour votre site, vous pouvez vous référer à la Figure 1. Sur cette figure, les répertoires sont en gras. À la racine de ce répertoire repertoire_de_votre_site, on trouve un fichier index.php, la page d accueil de votre site. On trouve également d autres fichiers PHP qui représentent soit une fonctionnalité proposée par votre application (e.g., ajout avec un formulaire, intégration, recherche) soit une information générale sur l application (e.g., à propos). Vous pouvez dès à présent Figure 1 Hiérarchie du site créer ces fichiers. Concernant les sous-répertoires images et includes, le premier contiendra toutes vos images 1. L extension des fichiers (php, asp, etc.) dépend de la technologie utilisée. 3

tandis que le second stockera des fichiers destinés à être utilisés par les fichiers situés à la racine de repertoire_de_votre_site. Parmi ces fichiers utilisés, il y aura un fichier entête, un fichier pied de page, un fichier statistiques et un fichier de style CSS. Créez les répertoires images/ et includes/ ainsi que les fichiers qu ils contiennent. Vous pouvez ajouter d autres répertoires ou fichiers si besoin. Maintenant que la hiérarchie de votre site est réalisée 2, vous allez éditer certains des fichiers créés. 4.2.2 Structurer les parties d une page La Figure 2 présente deux exemples de maquette 3 pour votre site. Vous pouvez adapter la mise en page/mise en forme, mais on doit retrouver les cinq zones décrites ci-dessous. Les couleurs vives de cette maquette sont utilisées pour faciliter la compréhension, mais ne reflètent en aucun cas les critères esthétiques de vos enseignante-s! Figure 2 Des exemples de maquette pour votre site On distingue cinq zones sur cette maquette : Une entête (fond vert) Un menu (fond vert pour la maquette de gauche ou fond rose pour la maquette de droite) Des statistiques (fond rose ou fond gris selon la maquette) Le contenu de la page (fond jaune) Un pied de page (fond bleu) Les zones entête, menu, pied de page et statistiques sont identiques sur chaque page, aussi leur contenu doit être factorisé dans des fichiers séparés et placés dans le répertoire includes. Ces fichiers seront appelés ensuite dans vos autres pages (recherche, ajout, etc.) en utilisant la commande PHP require ou include. Concernant la mise en forme (couleurs, polices, etc.), vous êtes libre(s) de la personnaliser, sauf indication spécifique. Il est évident que cette mise en forme se fera avec des feuilles CSS. L esthétique est prise en compte lors de la notation, aussi soignez votre site. Détails sur l entête (fond vert) : cette zone contient deux éléments : Le logo (image) de votre site, situé sur la gauche. Vous êtes libres de mettre le logo qui vous convient. Ce logo sert également de lien hypertexte vers la page d accueil de votre site. Au centre, le nom de votre application Web, également libre de choix. Détails sur le menu (fond vert ou fond rose) : la navigation sur votre site se fait au moyen de liens hypertexte. Les libellés de ces liens seront explicites (ne pas mettre "menu1", "menu2"!). Détails sur les statistiques (fond rose ou fond gris) : comme son nom l indique, ce panel contient des statistiques sur la BD. On souhaite des statistiques sur le nombre total de joueuses et de parties selon plusieurs critères : l année, le lieu. Ainsi, si le critère année est choisi, il faudra détailler le nombre de joueuses pour chaque année, et le nombre de parties pour chaque année. L utilisatrice peut changer le critère grâce à une liste 2. Vous pouvez évidemment ajouter de nouveaux fichiers ou de nouveaux répertoires plus tard. 3. Maquettes réalisées avec Pencil, http://pencil.evolus.vn/ 4

déroulante. Bien que la fonction de connexion à la BD ne soit pas encore implémentée, vous pouvez déjà écrire les requêtes SQL nécessaires à la production de ces statistiques. Détails sur la zone pied de page (fond bleu) : cette zone contient trois informations, à savoir un lien vers le site de l université, un second lien vers la page de l UE de LIF4 et enfin l année courante. Détails sur la zone de contenu (fond jaune) : c est à cet endroit que s affichera le contenu. Par exemple, si l utilisatrice demande la page ajout.php, le formulaire d ajout sera affiché dans cette zone de contenu. Les contenus de ces pages spécifiques seront à réaliser lors des prochaines séances de projet. Par défaut, c est la page d accueil (index.php) qui est affichée, et vous allez maintenant y mettre du contenu. 4.3 Personnaliser la page d accueil (index.php) Lorsqu une utilisatrice arrive sur le site par la page index.php, la zone de contenu ne peut pas rester vide : vous allez donc personnaliser cette page. Voici les éléments que l on doit trouver dans sa zone de contenu (fond jaune), libre à vous d en ajouter : Une courte description de l utilité du site Les activités récentes sur le site, par exemple les derniers ajouts ou mises à jour dans la base de données. Ceci requiert une connexion à la BD, que l on verra dans la partie 2, mais vous pouvez déjà écrire les requêtes. 4.4 Personnaliser la page "à propos (apropos.php) Comme pour la page d accueil, la page apropos.php est assez sommaire. Voici les éléments que doit contenir sa zone de contenu (fond jaune), mais vous êtes libres d en ajouter d autres : Vos/votre nom(s) et prénom(s) Une courte explication sur le choix du logo et du nom de votre application Une image de votre MCD Des remerciements ou liens externes si vous avez par exemple utilisé des images ne vous appartenant pas 5 Questions (répondre dans le rapport) Question 0 (optionnelle) : Pour vous détendre (en cas de blocage sur un bug, d engueulade avec votre binôme, etc.), deux concours sont organisés, celui du meilleur nom d application et celui du plus beau logo. Vous insérerez dans le rapport votre nom et/ou votre logo, avec éventuellement une explication. Les deux binômes gagnants remporteront un paquet de chamallows. Soyez créatifs/ves! Question 1 : Insérez votre schéma entité/association ainsi que votre modèle Relationnel (avec une qualité correcte niveau lisibilité!). Décrivez les modifications apportées au schéma E/A lors de la transformation vers le modèle Relationnel (uniquement des modifications non triviales, pas la peine d expliquer les règles de transformation!). Question 2 : Insérez une capture d écran de la page d accueil de votre site. En plus d une description et des activités récentes, quelles autres informations pourriez-vous afficher pour donner envie aux utilisatrices d explorer votre site? Question 3 : Dans les spécifications, il n est pas demandé de modéliser la notion "d adversaire". Autrement dit, on sait qu une joueuse ou une équipe a gagné ou perdu une partie, mais on ignore contre qui. Est-ce tout de même possible de connaître les participantes d une partie? Que faudrait-il modifier dans votre schéma E/A pour modéliser correctement cette notion d adversaire? 5