CAW1 2016 Projet d'Elie RICHAUD-ANDREUCCI et Nom Supprimé et Nom Effacé

De Ensiwiki
Aller à : navigation, rechercher
Project schedule.png
Titre du projet Le Maquis
Cadre Ensimag Projet Web 2A Alternant

Équipe nom supprimé, nom supprimé,

Elie Richaud

Encadrants Sébastien Viardot


Présentation générale

Contexte

En tant que 2aa, le cours de conception d'applications web nous demande de réaliser un projet en binôme ou trinôme. Ce projet doit répondre à un cahier des charges fourni par l'enseignant ; ce cahier est détaillé ci-après.

Le sujet étant libre, nous nous sommes vite tournés vers un des besoins récurrents de notre promo : le partage de recettes de cuisine. Ainsi est né Le Maquis. Un petit site intime à l'abri des regards indiscrets où nous pouvons échanger et discuter de nos dernières trouvailles culinaires !

Cahier des charges

Le projet devra comporter les éléments suivants :

  • Utilisation d'un framework : nous utiliserons Play Framework[1]
  • Gestion des rôles avec des utilisateurs différents ayant des droits et des rôles différenciés : .
  • Utilisation d'un webservice permettant... à compléter
  • Site adapté à plusieurs terminaux dont une version mobile - Nous utiliserons Bootstrap.
  • Mise en place de jeux de tests unitaires : pour tester la partie modèle et contrôleur.

Fonctionnalités du Maquis

lemaquis.org vous propose les fonctionnalités suivantes :

  • Consulter les recettes proposés par les autres utilisateurs
  • Ajouter/éditer/supprimer vos propres recettes
  • Noter et commenter les recettes
  • Proposer des ingrédients qui seront valider par les modérateurs
  • Recherche des recettes par tags et/ou par ingrédients que vous possédez (les résultats sont classés par nombre d'ingrédients manquants, jusqu'à 2)
  • S'abonner au flux RSS du site vous notifiant des nouvelles recettes
  • Suivre LeMaquisOrg sur Twitter [2] qui vous présentera les dernières recettes ainsi que les dernières actualités du site
  • Accéder rapidement aux dernières recettes, aux plus commentées et aux mieux notées

Spécification - Cas d'utilisation

UML

  • Diagramme de cas d'utilisation

Usecase.png

  • Diagramme de classe du modèle

Classdiagram.png

Environnement de développement

Technologies utilisées

  • Framework
    • Play 1.3.4
    • Bootstrap
    • Selenium
  • API
    • Twitter4j (Twitter pour Java)
    • JRSS (Java RSS)
    • JPA (Persistence des données)
  • Outils logiciel
    • Eclipse (Environnement de développement)
    • Trello (Gestion de tâches)
    • Git (Gestionnaire de versions)

Installation

  • Se placer à la racine du projet.
  • Lancer la commande: play dependencies
  • Lancer la commande: play eclipsify


  • Lancer la commande: play run
  • Le serveur est lancé et une liste initiale de données (utilisateurs, recettes, ingrédients, ...) est instanciée.

Validation

Nous avons réalisé des jeux de test unitaires et des tests ulisant selenium. L'ensemble de nos tests ne couvrent pas l'ensemble de notre application mais s'efforcent de couvrir la majorité des points critiques définis. Ils sont disponibles dans le code de l'application.

Screencast et screenshots

ATTENTION : CES VIDEOS SONT ENREGISTRÉES AVEC DU SON !

  • Voici une archive contenant l'ensemble des vidéos démontrant l'utilisation et le fonctionnement du site :

Fichier:Screencast.zip


  • Ci-dessous des screenshots de la version mobile du Maquis


Screen Shot 2016-06-06 at 10.45.34.png Screen Shot 2016-06-06 at 10.45.54.png Screen Shot 2016-06-06 at 10.46.20.png Screen Shot 2016-06-06 at 10.47.39.png Screen Shot 2016-06-06 at 10.48.09.png Screen Shot 2016-06-06 at 10.48.23.png Screen Shot 2016-06-06 at 10.48.48.png

Pour aller plus loin

Fonctionnalités non développées

  • L'ajout de photo pour les recettes.

Améliorations envisageables

  • Ajouter de la pagination dans les pages renvoyant des listes de recettes (recherche, mes recettes ...)
  • Utiliser une API permettant de récupérer automatiquement les photos des ingrédients à partir de leur nom

Sources

Fichier:Web-project DEKIMPE RICHAUD VALETTE.tar.gz