Projet ISIMA 1
Transcription
Projet ISIMA 1
RAPPORT DE PROJET INTEGRATION D’UN SITE DE GESTION DU BUREAU DES SPORTS DE L’ ISIMA A LA PLATEFORME DE LA COMMUNAUTE ZZ 2005 – 2006 1ère ANNEE G21 Guillaume DURY Damien PORTÉ Guillaume CRESTA Sébastien LUQUET ISIMA Remerciements Nous tenons tout d’abord à remercier Guillaume Cresta, étudiant en troisième année à l’ISIMA, qui a permis à ce projet de prendre forme, et pour tous ses conseils quant à la gestion du Bureau des Sports qu’il a tenu durant près de 3 ans. Les tests qu’il a effectué tout au long du projet nous ont été d’une grande aide. Nos remerciements vont aussi à Sébastien Luquet, ancien étudiant de l’ISIMA et actuellement en préparation de thèse, pour les connaissances qu’il a su partager avec nous pour la mise en place du site, et une intégration à la plateforme de la communauté ZZ qui en a été grandement simplifiée. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 2 / 22 Résumé – Abstract Résumé Ce rapport a pour but de présenter le travail réalisé autour de la mise en place d’un site de gestion du Bureau Des Sports de l’ISIMA. L’objectif est de faciliter la gestion des licenciés, des calendriers de matchs et de tout autre évènement sportif au sein de l’école. Ce site est intégré à la plateforme de la communauté ZZ existante, gérée par l’association des anciens élèves de l’ISIMA, ANELIS. Les outils utilisés pour la réalisation de ce projet sont EasyPHP pour un travail en local avec le langage de programmation PHP, et le système CVS pour un travail simultané à plusieurs, et la mise en commun des fichiers. Mots clés : forum phpBB, PHP, MySQL, Bureau des Sports (BDS), gestion. Abstract The aim of this report is to present the work done to put in place a new website to manage School’s Sports Office. This one has the objective to facilitate the management of licenses, of a calendar of matches and all the sportive events in which the school takes parts of. The website is integrated into the already existing phpBB forum managed by the association of former students, ANELIS. Tools used to realise this project are EasyPHP to work on local machines with the PHP programming language, and the CVS system to work simultaneously, and to pool files. Keywords : phpBB forum, PHP, MySQL, School’s Sports Office, management. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 3 / 22 Table des matières Remerciements ___________________________________________________________ 2 Résumé – Abstract________________________________________________________ 3 Résumé ______________________________________________________________________ 3 Abstract _____________________________________________________________________ 3 Introduction ______________________________________________________________ 5 Partie 1 : Le site et ses fonctionnalités _____________________________________ 6 - La gestion des licences et des licenciés _________________________________ 6 - La gestion des sports_____________________________________________________ 9 - Le système de news _____________________________________________________ 10 - La gestion du calendrier _________________________________________________ 10 - Les sponsors et liens sportifs ____________________________________________ 11 - La galerie photos________________________________________________________ 12 - Le panneau d’administration _____________________________________________ 12 - La gestion des évènements ______________________________________________ 13 Partie 2 : Les outils et les technologies utilisées ________________________ 14 2.1 Les langages utilisés _____________________________________________________ 14 2.2 Le système CVS__________________________________________________________ 16 2.3 Les outils utilisés ________________________________________________________ 16 Partie 3 : Bilans__________________________________________________________ 17 3.1 Bilan technique __________________________________________________________ 17 3.2 Bilan personnel __________________________________________________________ 18 Conclusion ______________________________________________________________ 19 Lexique _________________________________________________________________ 20 Bibliographie ____________________________________________________________ 22 Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 4 / 22 Introduction Dans le cadre des projets tuteurés de Première Année du cursus d’ingénieur de l’ISIMA, notre projet a consisté en la création et la mise en place d’un site Internet de gestion du Bureau Des Sports (BDS) de l’école. Ce site a pour objectif de faciliter la gestion des licences et des licenciés, d’un calendrier de matchs, ainsi que de permettre à tout le monde de connaître les résultats des différentes équipes qui représentent l’école. C’est sous la tutelle de Sébastien Luquet, en préparation de thèse et responsable de la plateforme de la communauté ZZ, et de Guillaume Cresta, président du BDS au moment de la mise en place du projet, que notre projet s’est déroulé. Durant toute la période du projet, nous avons du organiser notre analyse pour connaître quelles étaient les principales fonctionnalités à mettre en place, en tenant entre autre, de nombreuses discussions avec Guillaume Cresta ; ceci a été suivi de la création du site, que nous avons intégré à la plateforme de la communauté ZZ. Pour terminer, le site va être mis à disposition de tous, afin d’être utilisé dès la rentrée prochaine. Il est à noter la nécessité d’un tel site. En effet, la gestion des licences était jusqu’alors réalisée sous un tableur par les membres du bureau, accompagnée de la saisie de toutes les informations concernant les licenciés. De plus, il était difficile de tenir à disposition de tous les étudiants un calendrier des évènements sportifs qui soient constamment et facilement mis à jour. C’est dans cette optique que bon nombre de fonctionnalités ont été développés. L’intégration du site à la plateforme de la communauté ZZ existante s’est faite dans un souci de centralisation des informations destinées aux étudiants mais aussi aux externes de l’école. Nous aborderons en premier lieu un descriptif des fonctionnalités qui ont été développées ainsi que leur utilité, avant de s’intéresser plus particulièrement au développement du projet et aux outils qui ont été utilisés. Pour finir, nous établirons un bilan sur ce projet ainsi que les évolutions possibles. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 5 / 22 Partie 1 Le site et ses fonctionnalités Dans cette partie, nous allons présenter les principales fonctionnalités qui ont été mises en place sur le nouveau site de gestion du Bureau des Sports de l’ISIMA, ainsi que leur utilité sur un tel site. Chacune de ces fonctionnalités est disponible sur le site avec les mêmes apparences que le forum propose, et dont l’utilisateur a le choix dans son profil. - La gestion des licences et des licenciés Ce système permet de gérer les licences des sportifs de toutes les promotions de l’école. En effet, grâce à son intégration à la plateforme de la communauté ZZ, le site a un accès à la base de données du forum phpBB qui contient déjà toutes les informations des étudiants actuels, mais aussi anciens. Il y a alors un gain de temps pour les membres du bureau qui n’ont plus à saisir toutes les informations, mais juste à rechercher un étudiant dans un module de recherche afin de pouvoir enregistrer sa licence sur le site. Une des dernières fonctionnalités mises en place est une demande de licence directement effectuée sur le site. L’intérêt de la fonctionnalité de gestion des licences est de pouvoir savoir où en est la création de la licence. En effet, pour qu’un étudiant puisse obtenir une licence de sport pour une année universitaire donnée, il doit fournir un certain nombre de pièces qui sont une photocopie de la carte d’étudiant, un certificat médical pour la non contre-indication à la pratique d’un sport, une photo d’identité, une fiche de renseignements complétée, et enfin qu’il ait payé sa cotisation. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 6 / 22 Le système de gestion des licences se décompose en plusieurs parties qui sont soit publique, c' est-à-dire accessibles à tous, soit privées et donc réservées aux membres du bureau. Dans les parties publiques, on retrouvera des récapitulatifs des licenciés (cf. figure 1.1), avec des filtres d’affichage pour restreindre l’affichage à un sport, une année, une promotion. Figure 1.1 : Liste des joueurs Cette page donne accès à la fiche de chaque joueur sur laquelle on trouve plus d’informations concernant le sportif, accompagnée de sa photo (cf. figure 1.2). Sur cette page, les personnes autorisées, auront un affichage légèrement différent. En effet, elles ont la possibilité de modifier le numéro de licence affectée à cette personne ainsi que les sports auxquels ils participent. Ils connaissent aussi l’état de la licence, c' est-à-dire, si l’étudiant n’a pas encore fourni toutes les pièces nécessaires à la constitution de sa licence. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 7 / 22 Figure 1.2 : Fiche joueur Dans les parties strictement privées, on trouvera de nouveaux récapitulatifs ; le premier autorise des modifications sur l’état des licences de chaque étudiant. La mise en place d’un tel récapitulatif permet des modifications plus rapides lorsqu’il y a toute une série de fiche joueur à mettre à jour. C’est à partir de cette page qu’il est possible de supprimer ou bien archiver des licences. De plus, un système d’envois de mail de rappel pour les pièces manquantes a été aussi intégré. (cf. Figure 1.3 : Gestion des licences). Figure 1.3 : Gestion des licences Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 8 / 22 Un autre récapitulatif a été mis en place spécialement pour l’impression. En effet, ce récapitulatif est entièrement modulable. L’utilisateur autorisé choisi les colonnes et les sports qu’il veut faire apparaître, que ce soit le portable ou la date de naissance des joueurs, ou bien encore l’état d’une pièce nécessaire à la constitution de la licence en particulier. (cf. Figure 1.4 : Edition de récapitulatifs (page de sélection)). Figure 1.4 : Edition de récapitulatifs (page de sélection) - La gestion des sports Afin que le site soit modulable, un système de gestion des sports a été mis en place. Il permet d’ajouter, de supprimer des sports à la liste des sports pratiqués par les étudiants de l’ISIMA. De plus, il est possible de sélectionner si un sport nécessite une licence ou non pour pouvoir le pratiquer. Un responsable est affecté à chaque sport. Figure 1.5 : Gestion des sports Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 9 / 22 Pour chaque sport, il y a un système de news qui est disponible, ainsi qu’un calendrier pour les sports nécessitant une licence FFSU pour sa pratique. Chaque sport possède une page particulière accessible depuis le menu de gauche sur laquelle on retrouvera les news le concernant, et son calendrier s’il y a lieu. - Le système de news Le système de news mis en place est en fait un détournement des fonctionnalités disponible sur le forum pour ce qui est de la mise en ligne d’une nouvelle information. En effet, une modification des pages concernant les messages sur le forum a permis d’intégrer le système au site du BDS en utilisant une catégorie invisible depuis le forum, mais modifiable depuis le site. Ainsi le posteur de news a, à sa disposition, toutes les options de mise en forme d’un message disponible sur le forum grâce au BBCode. Ce dernier permet la mise en gras, italique, souligné du texte, l’ajout de smileys… Une news peut être soit associée à un sport ou un évènement sportif, soit considérée comme une information générale. Figure 1.6 : Affichage des news - La gestion du calendrier Pour chaque sport nécessitant une licence, on retrouve un module de calendrier de matchs. Celui-ci permet de saisir la date, le lieu, l’adversaire, l’heure du match et l’heure de rendez-vous des joueurs ainsi qu’une fois le match joué, le résultat du match. Il existe deux affichages différents du module. En effet, en page d’accueil du site, apparaissent les prochains évènements sportifs des sept jours à venir tous sports confondus. Un autre affichage est prévu dans les sections concernant les sports nécessitant des licences. Cet affichage autorise une navigation sur les saisons, avec tous les matchs par saison, et leur résultat. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 10 / 22 Figure 1.7 : Gestion d’un calendrier de matchs - Les sponsors et liens sportifs Ce système permet de pouvoir accéder aux sites des sponsors ainsi qu' aux sites relatifs à certains évènements sportifs qui ont eu lieu et auxquels le BDS a participé. Cette fonctionnalité a pour but, en ce qui concerne les liens vers les sponsors, de remercier les entreprises sponsorisant le BDS en les faisant connaître. Pour ce qui est des liens sportifs, l' avantage est de pouvoir voir les activités auxquelles participent le BDS, et comment elles se déroulent et ce via les sites qui leurs sont dédiées. Les membres du BDS ainsi que les administrateurs ont la possibilité d' accéder à la gestion de ces deux types de liens pour en supprimer et en ajouter en mettant entre autre, l' adresse du lien, un commentaire, et une image illustrant le lien. Figure 1.8 : Affichage des liens sportifs Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 11 / 22 - La galerie photos Grâce à un système similaire à celui des liens sportifs et des sponsors, cette section permet d' accéder aux photos du BDS. A chaque évènements, sportifs ou non, des photos sont prises et sont mises en ligne sur le site de photos des étudiants de l' ISIMA. Il a ainsi été trouvé intéressant et surtout normal de créer une section vers les parties du site de photos pour que le site du BDS possède ces propres photos. La gestion, quant à elle, se fait de la même manière que pour les liens. Figure 1.9 : Affichage de la galerie photos - Le panneau d’administration Afin d’avoir un site modulable, il a été mis en place un panneau d’administration accessible uniquement pour les membres du BDS et les administrateurs. Il offre la possibilité de changer le nombre de news qui apparaissent en page d’accueil, ainsi que le nombre de news qui seront visibles à chaque page dans les sections propres à chaque sport ou évènement sportif. Figure 1.10 : Panneau d’administration du site Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 12 / 22 - La gestion des évènements Le BDS participant à de nombreux évènements, il a été jugé utile de créer une partie qui aura pour but de les gérer. Dans cette partie privée, il sera donc possible de créer un nouvel évènement. A chaque événement est associé un responsable, pour lequel on affichera son numéro de téléphone. Comme pour les sports, chaque événement a sa page personnelle, accessible par le menu de gauche, où sont présentes les news qui lui sont associées. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 13 / 22 Partie 2 Les outils et les technologies utilisées 2.1 Les langages utilisés Pour la réalisation de ce projet, il a été utilisé le langage de programmation PHP. PHP est un langage très répandu dans le monde du développement de site Web. Sa syntaxe est proche de celle du langage C. De nombreux Systèmes de Gestion de Bases de Données (SGDB) sont supportés ce qui simplifie son interfaçage avec des bases de données, telles que les bases de données MySQL. Côté sécurité, les scripts sont exécutés sur le serveur donc le client ne peut, en théorie, pas voir le code source du programme auquel il fait appel. Figure 2.1 : Schéma de fonctionnement des requêtes PHP Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 14 / 22 Ce langage est en fait celui utilisé par la communauté phpBB qui travaille sur la création de forum de discussion et qui est le point de départ de la plateforme de la communauté ZZ. Ce forum utilise une base de données mySQL. Le style de programmation PHP utilisé par la communauté phpBB utilise le principe des templates, c' est-à-dire que les fichiers de traitements php sont séparés de l’apparence du site. Plus précisément, en utilisant le principe des templates pour une page donnée, on a d’un coté le fichier php qui va exécuter ce qu’il a à faire (ex : accès à la base de données pour récupérer des informations, calculs…), et d’un autre coté, on va avoir la page HTML qui va maintenant portée l’extension « tpl » avec des zones prédéfinies qui seront remplacées par des informations du script php. A ce titre, un site peut avoir plusieurs designs sans avoir à retoucher les traitements php dont il a besoin. Cela représente un énorme avantage pour la programmation de gros projets, car la répartition du travail entre les différentes personnes travaillant dessus en est nettement simplifiée. Côté Serveur Script PHP Modèle HTML Moteur Template Côté Client Figure 2.2 : Schéma de fonctionnement des templates php Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 15 / 22 2.2 Le système CVS Afin que toutes les personnes travaillant sur une ou plusieurs parties de la plateforme ZZ puissent travailler simultanément, il a été mis en place un système CVS (Concurrent Versions System). Il s’agit d’un système de contrôle de versions client - serveur permettant à plusieurs personnes de travailler sur un même ensemble de fichiers simultanément. La détection des conflits de versions se fait automatiquement à la mise à jour de fichiers sur le serveur. Chaque utilisateur actualise sa copie des fichiers contenus sur le CVS sur sa propre machine afin de pouvoir faire les modifications qu’il a à faire, puis valide ces fichiers pour transmettre à la base les nouvelles versions. Il y a sauvegarde pour chaque fichier de l’historique des modifications et non pas des versions successives de chaque fichier, ce qui représente un gain de place évident. Cela permet aussi de revenir en arrière dans les évolutions d’un fichier en cas d’erreur de programmation. 2.3 Les outils utilisés Afin de pouvoir travailler avec une version locale du site et sous le système d’exploitation Microsoft Windows, nous avons utilisé le logiciel EasyPHP (version 1.8.0.1). Ce freeware permet de faire fonctionner un serveur Apache (en version 1.3.33) avec les extensions PHP (4.3.10), ainsi qu’un serveur MySQL (en version 4.1.9). L’utilisation de phpMyAdmin permet une mise en place simplifiée d’une base de données MySQL. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 16 / 22 Partie 3 Bilans 3.1 Bilan technique Au terme du projet, le site est prêt à être rendu accessible à tous les visiteurs qu’ils soient de l’ISIMA ou de l’extérieur. Il sera utilisé dès la rentrée prochaine par la nouvelle équipe du Bureau des Sports de l’ISIMA pour la gestion des licences et des matchs de la saison. Toute la gestion sera alors nettement simplifiée. Un maximum de fonctionnalités a pu être développé et mis en place sur le site. Pour cause de manque de temps, certaines fonctionnalités qui avaient été envisagées n’ont pu être mises en place et sont toujours en cours de développement. Elles seront disponibles très prochainement. Malgré la fin du projet, le site va continuer d’évoluer en fonction des besoins des utilisateurs. Au niveau de l’interface graphique, elle suit les mêmes caractéristiques que le reste de la plateforme ZZ, et plusieurs apparences différentes ont été créées pour que l’utilisateur conserve les choix qu’il avait fait sur sa fiche profil sur le forum phpBB de la communauté qui constitue la base de la plateforme ZZ. Nous espérons que le site donnera entière satisfaction aussi bien aux membres du Bureau des Sports, qu’aux étudiants et autres utilisateurs qui le consulteront. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 17 / 22 3.2 Bilan personnel Ce projet de première année nous a permis d’acquérir de nouvelles connaissances en matière de programmation web. Nous avons pu aussi utiliser un système permettant un historique des versions des fichiers ainsi que le travail simultané de plusieurs personnes sur un même projet : le CVS. De plus, nous avons perçu ce projet comme une manière de s’investir dans la vie associative de l’école. Il faut savoir que le projet de mise en place de ce site de gestion du Bureau des Sports de l’ISIMA fait parti d’un ensemble de projets visant à développer la plateforme ZZ mise à disposition de la communauté. Les discussions entre développeurs sur la plateforme nous ont permis d’en apprendre encore d’avantage sur certains points. C’est une grande satisfaction que de savoir que les étudiants ZZ, sportifs ou simplement supporters, vont utiliser notre site pour se tenir informer des évènements sportifs futurs. Le fait que notre travail soit utilisé par la suite a été une réelle motivation pour nous. Pour conclure, ce projet aura été très enrichissant tant sur le plan technique que sur le plan humain. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 18 / 22 Conclusion Pour clôturer ce projet, on peut dire que ce développement Web nous a été bénéfique. Nous portons un regard nouveau sur le travail a effectuer sur des projets de plus grande ampleur avec plus de programmeurs en activité. A la rentrée prochaine, les étudiants de l’ISIMA pourront dès lors faire une demande de licence directement sur le site, et la tache des membres du Bureau des Sports en sera grandement simplifiée, pour tout ce qui sera de la gestion de celles ci. Il est bien entendu que le site va continuer d’évoluer dans le futur avec le développement de nouvelles fonctionnalités ; De plus, des améliorations suivant les avis et remarques des utilisateurs seront apportées afin d’avoir un site qui soit agréable d’utilisation, clair, et complet. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 19 / 22 Lexique Apache : Serveur Web très populaire sous Unix, particulièrement stable et performant. Il s’agit du serveur Web le plus utilisé à ce jour sur Internet. CVS : Concurrent Versions System ; Système Client – Serveur utilisé pour le travail simultané d’un ensemble de programmeur sur un même groupe de fichiers, et pour un contrôle des versions. Freeware : Traduction anglaise de « logiciel libre ». Logiciel disponible librement, redistribuable, et modifiable sans perception de droits d’auteur. HTML : HyperText Markup Langage. Langage à balises utilisé pour formaliser l’écriture de l’ensemble des documents destinés à être consultés sur Internet. HTTP : HyperText Tranfert Protocole. Protocole utilisé pour permettre aux clients de communiquer avec les serveurs et ainsi de visualiser des pages Web. Cet acronyme se retrouve dans toutes les adresses Web : http:// … MySQL : Système de Gestion de Bases de Données Relationnelles (SGBDR) pour des sites Internet, libre d’utilisation, et très utilisé avec des langages tels que le PHP,… PHP : Personnal Home Page est un langage de scripts permettant la réalisation de sites Web dynamiques. Langage très populaire sur le Web, en particulier dans le milieu Unix. phpBB : Communauté de développeurs libre travaillant sur la création et la mise en place de systèmes de forum de discussion utilisant le langage php. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 20 / 22 SQL : Structured Query Language. Langage dans lequel sont écrites les requêtes à destination des systèmes de gestion de bases de données. W3C : World Wide Consortium. Organisme chargé de la mise au point de différents langages, protocoles et normes (XML, CSS, HTML,…) Web ouverts et libres dans un souci d’interopérabilité. Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 21 / 22 Bibliographie Voici une liste des principaux ouvrages et sites Internet qui nous ont servis pour nos recherches • phpcodeur.net • openweb.eu.org : pour les standards du web • w3.org : le site du World Wide Web Consortium • PHP & MySQL, Campus Presse Référence Intégration d’un site de gestion du Bureau des Sports à la plateforme ZZ 22 / 22