CAW1 2014 Projet de Gaetan Faramaz et de Norman Vourlat

De Ensiwiki
Aller à : navigation, rechercher
Project schedule.png
Titre du projet Meevity
Cadre Appli web

Équipe Gaetan Faramaz Norman Vourlat
Encadrants Sebastien Viardot


Presentation du projet

Description générale

L'objectif est de créer un réseau social dédié au sport. Le site permettra de mettre en relation les utilisateurs autour de centre d'intérêts commun afin d'organiser des activités. L'utilisateur pourra proposer des activités et inviter des membres du site à participer. L'utilisateur pourra rechercher des activités et demander à participer. La force du site repose sur :

  • sa simplicité : Il est essentiel qu'un visiteur puisse créer facilement un compte ou s'authentifier avec un réseau social. Le site doit être capable de mettre en relation des personnes autour d'une activité le plus simplement possible,
  • l'intelligence des suggestions : dès la page d'accueil un ensemble d'activité son proposer. Sont proposés en priorité les activités qui se dérouleront prochainement et qui ont déjà des participants.

Cahier des charges

Il s'agit d'un projet web pour l'Ensimag, un certain nombre de contraintes sont imposées :

  • Utilisation du framework Java Play : OK
  • Gestion d'utilisateurs et de droits : OK
  • Gestion droits pour les activités(public, amis,connaissance) : IN PROGRESS
  • Gestion de connexion via réseau social(plugin play socialsecure) : OK
  • Responsive Web Interface avec le plugin CSS-Javascript INK : OK
  • Barre de recherche dynamique : OK
  • Utilisation d'API GoogleMaps (geolocalisation + proposition lieu) : OK
  • (souhaitable) Mise en place d'une interface d'administration : NON
  • (souhaitable) Système de commentaire pour les activités : NON

Le site

Réalisation

Cas d'usage

Meevity-usecases.png

Modélisation

Meevity-UML.png

Avancement

Les fonctionnalités de base sont en place. Il manque des finitions de design et des fonctionnalités avancés pour les propositions d'activités.

Partie Utilisateur

L'utilisateur doit pouvoir créer un compte ou s'authentifier via un réseau social(facebook,google,linkedin):

  • Envoie d'un email lors de la création du compte :
    100 %
  • Uploader une photo de profil :
    100 %
  • Indiquer son lieu d'origine parmi des lieux GoogleMap :
    100 %
  • Sélectionner des centre d'intérêts parmi la liste disponible :
    100 %
  • Ajouter des amis :
    70 %
    (pas de validation pour la personne ajouté)
  • Authentification via un réseau social
    100 %

Partie Activité

  • Créer une activité :
    90 %
  • Vue Activité :
    0 %
    (à faire)

Partie recherche

  • Rechercher des activités
    100 %
    (recherche globale, par lieu, par date)
  • Recherche des utilisateurs
    100 %
    (recherche utilisateur uniquement)
  • Séparation des activités et utlisateurs dans les résultats d'une recherche globale
    0 %

Partie proposition intelligente d'activité

  • Proposer des activités récentes et avec des participants pour utilisateur non connecté
    100 %
  • Proposer des activités en lien avec les centre d'intérêts d'un utilisateur (+trie par date et nombre participants)
    100 %
  • Proposer des activités en lien avec le lieu de l'utilisateur connecté
    0 %
    (non commencé car complexe : utilisation de l'API GoogleMap pour déterminer les activités proches)
  • Proposer des activités proche des centres d'intérêts d'un utilisateur
    0 %

Partie Actualité

  • Utilisation du bandeau droit pour proposer des actualités
    80 %
    (il manque le rafraichissement chronique en ajax pour que les nouvelles actualités apparaissent sans rafraichissement manuel)

Apercu du design

Meevity-1.png Meevity-2.png Meevity-3.png Meevity-4.png

Screencast du fonctionnement

Lien vers la vidéo : https://docs.google.com/file/d/0BznVCC93dzn7Mjg0WkdUakFmUHM/edit?pli=1

Le site

Installation du site

  • Installer Play Framework (Version 2.2.3)
  • Télécharger et décompresser l'archive meevity.tar.gz : http://blushedface.com/meevity/meevity.tar.gz
  • Installer Mysql
  • Créer la base de donnée "meevity" et l'utilisateur meevity avec les droits d'accès à la base


CREATE DATABASE meevity
GRANT ALL PRIVILEGES ON meevity.* TO 'meevity'@'localhost' IDENTIFIED BY 'meevity' WITH GRANT OPTION;


  • Compléter le fichier application.conf dans le dossier conf de l'archive:


db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://127.0.0.1/meevity"
db.default.user=meevity
db.default.pass=meevity


Crédits

Les crédits ne sont pas disponibles pour les interdits bancaires..