Mise en place d un site web dynamique

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

emuseum PUBLIEZ VOS COLLECTIONS SUR INTERNET Pourquoi choisir emuseum? Intégration facile avec TMS Puissante fonction de recherche

Refonte front-office / back-office - Architecture & Conception -

Catalogue des Formations Techniques

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

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

Compte Rendu d intégration d application

Formation en Logiciels Libres. Fiche d inscription

Application Web et J2EE

CAHIER DES CHARGES DE REALISATION DE SITE INTERNET

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

Documentation de conception

Développement des Systèmes d Information

contact@nqicorp.com - Web :

Chapitre 1 Windows Server

Formation Webmaster : Création de site Web Initiation + Approfondissement

Devenez un véritable développeur web en 3 mois!

Plan de notre intervention 1. Pourquoi le test de charge? 2. Les différents types de tests de charge 1.1. Le test de performance 1.2.

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

BIRT (Business Intelligence and Reporting Tools)

7 villa de la citadelle Né le 13 mai Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES

Programmation Web. Madalina Croitoru IUT Montpellier

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Java pour le Web. Cours Java - F. Michel

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

Module BD et sites WEB

CAHIER DES CHARGES D IMPLANTATION

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

UNIVERSITE BORDEAUX - MONTAIGNE. Projet HK_Lime

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

31 ans - 8 ans d'expérience

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É JAVA - J2EE. 27 ans - 5 ans d'expérience

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

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

Mise en œuvre des serveurs d application

Projet de Java Enterprise Edition

Point sur les solutions de développement d apps pour les périphériques mobiles

Expert technique J2EE

Pratique et administration des systèmes

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

les techniques d'extraction, les formulaires et intégration dans un site WEB

10. Base de données et Web. OlivierCuré

Auto-évaluation Aperçu de l architecture Java EE

+33 (0) Sarl ISB Altipolis2 av. Du Général Barbot Briancon - France

Introduction à la plateforme J2EE

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

Programmation Web. Introduction

Quel ENT pour Paris 5?

ECLIPSE ET PDT (Php development tools)

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

Paul FLYE SAINTE MARIE

RÉALISATION D UN SITE DE RENCONTRE

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

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

SIO Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault

Remote Cookies Stealing SIWAR JENHANI (RT4) SOUHIR FARES (RT4)

Construire un portail de ressources numériques avec Netvibes

Procédure d installation détaillée

Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement

Autorité de certification

SPECIFICATIONS TECHNIQUES : Gestion des Médicaments et des commandes de médicaments

Nouveautés Ignition v7.7

Introduction MOSS 2007

Présentation de SOFI 2.0

JOnAS Day 5.1. Outils de développements

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Alfresco et TYPO3 Présenté par Yannick Pavard dans le cadre des rencontres WebEducation Février 2008

Utilisation de Jakarta Tomcat

Architectures en couches pour applications web Rappel : Architecture en couches

KompoZer. Composition du site : _ une page d'accueil : index.html. _ une page pour la théorie : theorie.html. _ une page pour les photos : photos.

Association UNIFORES 23, Rue du Cercler LIMOGES

Documentation des nouveautés. Version 2.1

SYSTÈMES DE PUBLICATION POUR L INTERNET. Beatep Marie-France Landréa - Observatoire de Paris

LE TITRE DE VOTRE DOCUMENT ICI

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

CATALOGUE FORMATION 2015

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. 11, bd du Sud Est Nanterre

Projet M1 Sujet 21 : Développement d'un logiciel simplifié de type Business Object

LISTES DE DISTRIBUTION GÉRÉES PAR SYMPA DOCUMENT EXPLICATIF DE L'INTERFACE WEB À L'INTENTION DES ABONNÉS

Mise en œuvre de les capteurs dans la gestion de l eau

SITE WEB E-COMMERCE ET VENTE A DISTANCE

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Nouveautés joomla 3 1/14

Manuel Utilisateur de l'installation du connecteur Pronote à l'ent

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

contact@nqicorp.com - Web :

CQP Développeur Nouvelles Technologies (DNT)

Architectures web/bases de données

Groupe Eyrolles, 2003, ISBN : X

Présentation d'un MOM open-source

Troisième concours d ingénieur des systèmes d information et de communication. «Session 2010»

Transcription:

Application sur Internet Mise en place d un site web dynamique Vincent D, Florent L, Antoine L, Jérémy P 2IN 17 juin 2011 1 Présentation générale du projet 1.1 Présentation du concept 1.1.1 Concept de base Le concept de base de notre projet est de faire un site internet perme ant de créer, participer à, regrouper et partager des questionnaires que l on désignera plus simplement sous le nom de quizzes. Un tel site internet s inscrit dans la lignée des sites internet du web 2.0 dont le contenu provient majoritairement des utilisateurs. 1.1.2 Inscription des utilisateurs Tout individu pourra s inscrire gratuitement sur le site, à condition de disposer d une adresse e- mail valide. L inscription se fera à l aide d un formulaire classique d inscription. Tous les utilisateurs possèderont les mêmes droits : création, participation et partage/invitation à tout quizz. 1.1.3 Profil d utilisateur En plus des options classiques (photo, e-mail, goûts, ) le profil d utilisateur contiendra l ensemble des quizzes auxquels l utilisateur a participé et ses scores. On peut imaginer qu un utilisateur fasse plusieurs fois un quizz auquel cas on retiendra tous ses scores. On retiendra aussi les dates/heures de participation aux quizzes. L utilisateur pourra aussi se former (voire importer d autres protocoles si le temps le permet) une liste de contacts. 1.1.4 Les quizzes Un quizz est affilié à un thème et possède un titre. Il est composé d une éventuelle courte introduction et d un nombre fini de questions. Dans un premier temps, on n autorisera que des quizzes à n réponses données. Si le temps le permet, on changera ce système pour proposer d éventuelles questions à réponse libre. Tous les quizzes sont publiques. Chaque question pourra être accompagnée d une image. 1

1 PRÉSENTATION GÉNÉRALE DU PROJET 2 1.1.5 Navigation parmi l ensemble des quizzes On proposera plusieurs navigations possibles dans la liste des quizzes. Chaque navigation pourra être pré-filtrée par un choix de thème/sous-thème (culture, culture/musique, culture/cinéma, informatique, informatique/programmation, informatique/programmation/c, ). Navigation par Top n (quizzes les plus populaires) - Navigation par Préférences de vos contacts (quizzes les plus populaires parmi vos contacts), etc 1.1.6 Participation à un quizz Tout utilisateur pourra participer à tout quizz. Une fois un quizz rempli, le score obtenu sera affiché et l utilisateur pourra proposer à ses contacts sur le site de participer aussi au quizz. 1.2 Te nologies et logiciels utilisés Integrated Development Environment Eclipse IDE for Java EE Developers Decentralized Version Control Mercurial intégré à Eclipse à l aide de MercurialEclipse. Nous avons choisi ce e solution car nous avions déjà utilisé Mercurial à d autres occasions. Mercurial permet aussi de commiter sans être connecté à Internet, ce qui peut se révéler pratique. Serveur Web Nous avons choisi d utiliser un serveur Web Geronimo 2.2.1. Ce serveur est opensource et développé par la Fondation Apache sous la licence Apache. Il est bien sûr compatible avec Java Enterprise Edition 5.0 et nous permet donc d utiliser toute la panoblie d outils JEE rencontrés (JDBC, JavaBeans, etc ) Base de données Nous avons choisi d utiliser OpenJPA qui est une solution open-source pour utiliser JPA. OpenJPA est aussi publié sous licence Apache. Gestion des templates Plutôt que de mélanger du HTML et du code Java au sein des JSP, nous avons préféré une solution qui sépare bien les deux. Pour ça, nous avons utilisé le moteur de template Freemarker. Les fichiers.ftl ne contiennent donc que du HTML et des directives Freemarker qui perme ent de récupérer les variables passées en paramètre et d effectuer quelques opérations simple : condition, boucle, etc. Création et validation des formulaires La création de formulaires HTML est une tâche fastidieuse et propice aux erreurs. On la délègue donc souvent à une brique logicielle dédiée. Ici nous avons choisi de réaliser nous-mêmes ce composant : les champs de formulaire et les formulaires sont des classes. Ce sont ces classes qui génèrent le code HTML de chaque élément et qui gèrent la validation des formulaires. La validation consiste à vérifier la conformité du type de données entre le modèle et ce qu entre l utilisateur, mais on peut être plus précis : on vérifie par exemple qu une adresse e-mail est correcte à l aide d une expression rationnelle.

2 CONCEPTION 3 2 Conception 2.1 Administration La partie administration permet de modifier/créer/supprimer les thèmes, sous-thèmes et utilisateurs. 2.2 Inscription (/inscription) L inscription nécessite un nom d utilisateur, un mot de passe (et confirmation) qui sera stocké en SHA et une adresse e-mail. Un captcha permet d éviter les bots. SE CONNECTER CRÉER UN COMPTE Accueil» Inscription Inscription Nom d utilisateur Mot de passe Confirmation du mot de passe Adresse e-mail valide Code de sécurité F. 1 : Inscription 2.3 Accueil (/accueil ou /) La page d accueil présente le site et invite les visiteurs non connectés à s enregistrer. Si on est connecté, elle affiche les derniers quizzes créés sur le site. SE CONNECTER CRÉER UN COMPTE BIENVENUE! est un site qui vous propose de créer vos propres quizzes de façon simple et rapide. Vous pouvez ensuite facilement partager vos quizzes avec vos contacts. Il est aussi possible de naviguer à travers les différents thèmes et sous-thèmes afin de trouver des quizzes concernant vos passions : musique, cinéma, littérature belge, droit international, stations spatiales, ananas, middleware,... Pour profiter entièrement du site il vous faudra créer un compte. Ceci est gratuit, rapide et ne demande qu'une adresse e-mail (qu'on spammera bien entendu à l'aide de scams nigériens). Créer mon compte dès maintenant F. 2 : Accueil 2.4 èmes (/themes/ ou /themes/[id]) Ce e page présente tous les thèmes et sous-thèmes disponibles. Les sous-thèmes ne sont pas affichés par défaut : Il faut cliquer sur un nom de thème pour les déplier, avec une animation (ceci utilise le script J ery collapse ) Si un identifiant de sous-thème est fourni sur l URL, l intégralité des quizzes affectés à ce sousthème est affichée.

2 CONCEPTION 4 Accueil» Tous les thèmes Culture Géographie Facile Avancé Expert Histoire F. 3 : Index des thèmes ADMINISTRATION Accueil» Administration» Administration des thèmes» Administration du thème Culture Modifier le thème Titre Culture SOUS-THÈMES Titre Cinéma Littérature Enseeiht Ajouter un sous-thème Titre F. 4 : Édition des thèmes 2.5 Détails des quizzes (/quizzes/, /quizzes/[id]) Par défaut, ce e page affiche les quizzes créés par l utilisateur ; si un identifiant est fourni, elle affiche les détails du quizz courant (sous-thèmes, nombre de questions, description), et propose de l éditer (si l utilisateur courant est l auteur du quizz) ou d y jouer (dans le cas contraire). 2.6 Création de quizz (/quizzes/nouveau) Ce e page permet de créer de nouveaux quizzes. L utilisateur est alors invité à entrée un titre de quizz et une description. 2.7 Édition de quizzes (/editquizz/[id]) Ce e page permet à un utilisateur d ajouter des questions à un quizz qu il a créé. Un formulaire lui permet d entrer une question, et une série de réponses (une vraie et entre une et quatre fausses). 2.8 Jouer à un quizz (/jouerquizz/[id]) Ce e page permet de jouer à un quizz. Elle se rafraîchit automatiquement pour passer de l affichage des résultats à la question suivante, et également pour limiter le temps de réponse à 10 secondes. and une question est affichée, un compteur affiche via JavaScript le temps restant pour répondre (avec une animation de fondu si le navigateur implémente les transitions CSS).

3 BILAN 5 Accueil» Tous les quizzes» Première visite PREMIÈRE VISITE 10 Question 1/3 Que signifie le T dans le nom de l'école? Téléphonie Toulon Toulouse Télécommunications F. 5 : Situation de jeu 3 Bilan Sur le plan technique, ce projet nous a permi d une part de me re en œuvre les acquis des cours et TP d application sur Internet, mais aussi d expérimenter des solutions technologiques pour la première fois (Geronimo, Freemarker, etc.). Nous avons validé ces choix techniques en déployant notre site sur plusieurs machines, avec comme bases de données indifféremment MySQL et PostgreSQL. Au final c est une expérience intéressante qui nous donne des bases pour la construction d applications de grande envergure. F. 6 : Architecture