CAW1 2016 Projet d'Elie RICHAUD-ANDREUCCI et Nom Supprimé et Nom Effacé
![]() | |
---|---|
Titre du projet | Le Maquis |
Cadre | Ensimag Projet Web 2A Alternant
|
Équipe | nom supprimé, nom supprimé, |
Encadrants | Sébastien Viardot |
Sommaire
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
- Diagramme de classe du modèle
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 :
- Ci-dessous des screenshots de la version mobile du Maquis
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