ECOM RICM5 Groupe5 2015
Bienvenue sur la fiche de suivi du projet Restauration personnalisée en ligne .
Un projet de site de E-commerce dans lequel nous allons nous initier à la programmation J2EE.
Nous sommes le groupe 5 de la promotion RICM5 - 2015/2016.
Présentation du projet
Le site porte sur un service de restauration personnalisée. Deux modes de fonctionnement vous sont possibles :
- des formules sont proposées par des artisans restaurateurs, sur lesquelles il vous est possible d’imposer des contraintes (la cuisson,...) selon vos affinités gustative, si l’artisan le propose.
- des thèmes culinaires sont proposés par des artisans restaurateurs qui se charge de répondre à votre demande de plat dans un temps imparti. Il est à noter que l’artisan peut librement accepter ou refuser le traitement de votre demande dans la mesure des stocks disponibles. Dans le cas d’un refus une proposition peut vous être faite par l’artisan.
L'équipe
- Robin Eudes : Chef de projet
- Malek Mammar : Scrum Master
- Zhang Zhengmeng : Développeur
Etude du marché
Suite à la diffusion de notre questionnaire, nous avons obtenu 26 réponses à l'heure actuelle. Bien que cet échantillon de réponse soit limité, nous l'avons jugé suffisamment représentatif pour baser nos principaux axes de travail en adéquation avec les réponses reçues.
Utilisateurs cibles
Nous ciblons principalement les étudiants, ou les jeunes salariés.
Besoins utilisateurs
Le moyen principal de paiement serait la carte bancaire, cependant il serait souhaitable que notre système accepte différents modules de paiements tel que Paypal, Izly. La base d'utilisateur est par ailleurs favorable à un système de fidélité, récompensant le client d'une commande offerte après une certaine quantité d'achats à définir. Le site doit également donner accès à un système de notation sur les formules ou plats proposés par les restaurateurs, l'avis des autres clients étant un critère de choix important.
Etude de la concurrence
La concurrence est nombreuse, et souvent spécialisée dans un domaine culinaire. En voici quelques exemples :
- Foodpanda : Le site nous proposera d'abord de choisir un restaurant, puis le menu que l'ont souhaite commander, avant de finaliser la commande (paiement). Cependant, on peut également effectuer une recherche par type de cuisine,et donc trouver les restaurants servant ce type de plats, pour revenir dans le premier schéma évoqué (choix restaurant -> choix plat -> paiement). La recherche par type de cuisine est pas mise en avant. Le site reste malgré tout assez clair, bien que chargé. Une application mobile est proposée par ailleurs (Android/iOS/Windows Phone).
- SushiShop : Thème "sombre" pour le site, on a un accès direct aux "boxes" (menus sushis), ou à la carte détaillée. Le menu donnant accès à la carte nous offre un "diaporama" des plats servis, très agréable visuellement. Le panier sera affiché dans un menu sur la droite uniquement une fois que nous avons sélectionné un plat. Un espace de connexion vers son compte est disponible en haut à droite. Logo discret sur le coin supérieur gauche.
Plateformes d'utilisation
La mise en forme de notre site devra être capable de supporter différents supports, PC et mobiles principalement (responsive design).
Définition des services rendus
Exigences
Exigences fonctionnelles
- Tâches prioritaires
- Gestion d'une session sécurisée
- Acteur client : Effectuer une commande
- Acteur client : Gérer son panier
- Acteur artisan : Gérer son catalogue
- Tâches secondaires
- Acteur client : Effectuer un appel d'offre
- Acteur artisan : Répondre à un appel d'offre
Exigences non fonctionnelles
- Propriétés ACID sur les transactions (en particulier le paiement)
- Utilisabilité , selon Les critères ergonomiques de Bastien & Scapin
- Gestion fine de l'utilisation de HTTPS
- Résistance du système à la montée en charge (Temps de service constant)
- Réduire au minimum le parcours de paiement
- Portabilité (responsive design) PC, mobiles.
Conception du système
Arbres des tâches
Tâches prioritaires
Tâches secondaires
Diagramme de contexte
Base de données
Vous remarquerez, qu'il n'y a pas de table "Panier" ou "Historique", car nous considérons que ces données sont à sauvegarder en session.
IHM abstraites
Faire une commande (client)
Priorité : forte
La tâche "Faire une commande" pour l'acteur Client se décomposer en ces 2 IHM abstraites : Consulter la carte et Consulter son panier .
Gérer son catalogue (artisan)
Priorité : forte
Maquettes du site
Maquette Accueil du site
Maquette page Formule
Planification du projet - SCRUM
SCRUM est la méthode de travail préconisée dans ce projet.
Sprint planning
Sprint 1 : 15/09/2015 - 28/09/2015
- Choix d'un sujet de commerce en ligne
- Prise en main des outils de développement J2EE
- Réalisation d'un questionnaire
- ciblage du marché
- étude de marché sur la concurrence
- identification des besoins utilisateur
Sprint 2 : 29/09/2015 - 12/10/2015
- Réalisation d'un arbre des tâches
- Conception d'une architecture générale
- Publication des documents de conception IHM sur air.imag.fr
- Analyse des résultats du questionnaire
Sprint 3 : 13/10/2015 - 26/10/2015
- Mise en forme des arbres des tâches, IHM abstraites.
- Analyse de la concurrence
- Réalisation de la maquette
- Conception Architecture système
- Préparation de la soutenance "Conception" GL/IHM/Système
Sprint 4 : 27/10/2015 - 09/11/2015
- Mise en place client d'administration lourd
- Session bean Client,Artisan,Product : première version
- Recherches concernant la mise en place d'une API REST
- Recherches concernant la gestion de l'authentification via l'API REST
- Mise en place d'une page d'index pour la webapp utilisant bootstrap, angularJS
- Modification de quelques Entity bean (champs inutiles, etc )
Sprint 5 : 10/11/2015 - 23/11/2015
- Session beans Formule, Orders première version
- Autre sessions beans : version 2 , révision des prototypes, ajout de fonctionnalités
- API REST sans authentification v1 opérationnelle pour Product, Artisan, Client ( incomplète , cependant )
- Modification de certaines propriétés des entity pour empêcher des incohérences/ dysfonctionnement
Sprint 6 : 24/11/2015 - 07/12/2015
Sprint 7 : 08/12/2015 - 16/12/2015
Centralisation documents produits
Divers
- Trace de travail (Sprint 1), Conception "générale" du projet (livrable 08/09)
- Questionnaire (étude des besoins)
- Trace de travail (Sprint 2), Conception IHM (livrable 06/10)
Note : Les documents de type "Trace de travail" ne sont que des snapshots de notre travail au jour J, et ne sont donc pas nécessairement en accord avec la version actuelle de notre projet, présentée ci dessus.
Dépôt Github
GitHub - ECOM GRP5 (dépôt actuellement privé).
Note : Merci de nous communiquer un identifiant de compte à ajouter, si vous souhaitez observer nos développements.
Board Waffle.io
Board Waffle.io - ECOM GRP5 (le dépot Github étant privé, cette board requiert la même authentification)