Logo PLAYAPP

[DANS LES COULISSES DE PLAYAPP] LA MESURE DU TEMPS !

Dans cet article, nous allons partager avec vous nos problématiques de gestion et de mesure du temps au quotidien.
Le business model de l’agence étant basé sur du temps homme, la mesure du temps passé sur un projet ou un client est une métrique primordiale à suivre et à analyser.

Après avoir passé plusieurs semaines à rechercher LA solution qui nous conviendrait, nous nous sommes rendus à l’évidence. Les solutions proposées en ligne étaient soit trop complexes, soit peu adaptées à notre organisation.
Nous allions alors développer NOTRE solution de gestion du temps en interne et nous vous proposons de découvrir dans l’article ci-dessous comment nous nous y sommes pris !

1. Besoins

Savoir si nous avons dépassé le temps imparti sur un projet ou au contraire si nous avions prévu pour chaque métier concerné le bon nombre de jours nécessaires pour mener à bien le projet est une information trop importante pour ne pas la mesurer sérieusement.

L’outil que nous voulons développer doit ainsi nous permettre de savoir lorsque nous sommes dans le vert ou dans le rouge sur un projet donné.
Avoir cette information nous permet par la suite de nous poser les bonnes questions : Avions-nous bien chiffré le projet ? Avions-nous sous-estimé ou sur-estimé certaines tâches ? Ou encore avons-nous été trop ou pas assez efficace dans notre gestion du projet ?

2. Conception

Etape 1 : Le brainstorming

Le première étape, la plus importante pour la suite du projet, est le brainstorming. Les difficultés principales étant de prendre en compte tous les types de projets de l’agence, et tous les profils de l’entreprise. Nous avons donc interrogé tous les membres de l’équipe pour qu’ils nous exposent leurs besoins.

Après plusieurs réunions, nous avons décidé de diviser les projets en 3 catégories :

  • Les projets événementiels : il s’agit principalement des opérations spéciales, qui sont définies dans le temps avec une date de début et de sortie, et facturés en conséquence.
  • Les projets récurrents : il s’agit des projets de type community management qui sont facturés de manière mensuelle et nécessitent donc un suivi mensuel.
  • Les projets non facturés : il s’agit de projets le plus souvent internes comme de la R&D, de la veille ou plus commerciaux avec la réalisation de recommandations stratégiques ou de réponses à appel d’offres.

Nous avons dès le début fait le choix d’utiliser des couleurs par rôles. Les rôles définis au sein de l’équipe sont alors :

  • Gestion de projet
  • Développement
  • Design
  • Community management
  • Media
  • Conseil
Etape 2 : Le storyboard

L’outil utilisé pour la mise en place du storyboard est Axure. C’est un outil puissant qui permet d’avoir un storyboard dynamique avec des actions sur les boutons et l’enchaînement des pages. Le logiciel génère ensuite une URL publique que l’on peut partager avec l’équipe. L’objectif est alors d’être sûr que toutes les fonctionnalités soient bien présentes et que l’organisation des pages soient cohérentes avec l’utilisation que l’équipe attend de l’outil.

1

Une fois le storyboard validé par toute l’équipe, nous pouvions ensuite commencer le développement.

Etape 3 : Le développement

La première étape est la mise en place de la base de donnée. Notre première idée était d’utiliser MongoDB, un système de base de données plus rapide que MySQL, le système que l’on utilise le plus souvent. Nous utilisons maintenant le framework PHP CakePHP (http://cakephp.org/), mais depuis la dernière version de CakePHP, le framework ne gère plus les bases de données MongoDB.

En ce qui concerne le front-end, nous avons décidé d’utiliser le framework AngularJS (https://angularjs.org/), framework bien connu. Le site a ainsi été développé en single page application, c’est-à-dire que le site ne se recharge pas à chaque action demandée. Ces applications Single-page sont plus rapides et beaucoup plus fluides pour l’utilisateur. Elles permettent également d’avoir des sites plus interactifs.

Pour le design, nous avons simplement utilisé un framework CSS, Materialize (http://materializecss.com/). Il a beaucoup d’avantages notamment la gestion des popups et des grilles mais nous avons rencontré quelques difficultés notamment avec les interactions avec AngularJS.

La période de développement du projet a duré un peu plus d’un mois.

3. Evolutions

Ce projet nous offre une vue précise des personnes en charge d’un projet et du temps passé sur celui-ci et a été adopté par l’ensemble de l’équipe.
Un système de rappel par mail a d’ailleurs été mis en place afin de relancer les membres de l’équipe ayant malencontreusement oublié de remplir leurs logs du jour 😉
Pour aller encore plus loin, nous prévoyons le portage de cette solution web sur une application native iOS et/ou Android. Nous resterions alors sur une fonctionnalité simple pour rentrer nos logs même lorsque nous ne sommes plus au bureau et que nous sommes dans le métro par exemple. Tout cela dans le but d’inciter l’équipe à mesurer son temps passé sur chaque projet de manière plus rigoureuse tout en rendant l’action ludique.

Si vous êtes une start-up et que la problématique de mesure du temps est importante pour vous, n’hésitez pas à nous contacter pour voir de quelle manière nous pourrions adapter notre solution à votre entreprise !

4. Les fonctionnalités

Gestion des utilisateurs
  • Connexion / Déconnexion
  • Création / Edition d’un utilisateur
    • Choix d’un avatar parmi plusieurs
    • Possibilité d’uploader sa propre photo
    • Modification de son mot de passe
    • Choix du/des rôle(s)
  • Archiver un utilisateur : L’utilisateur n’a alors plus accès à l’application, mais ses logs sont conservés
  • Liste des utilisateurs avec détails
  • Gestion d’un utilisateur
    • Ajouter / Modifier / Supprimer un rappel par mail si aucun logs n’a été rentré dans la journée (Choix de l’heure)
    • Vue des logs rentrés par mois et par semaines par projets
    • Vue des logs rentrés par projet au total

user

 

Gestion des projets et des clients
  • Création / Edition d’un client
    • Logo
    • Nom
  • Supprimer un client : Toutes les infos, tous les projets et tous les logs associés sont supprimés
  • Liste des clients avec recherche et options d’affichage
  • Vue d’un client : Liste des projets du client, évolution des logs

client

 

  • Création / Edition d’un projet
    • Client
    • Nom
    • Type du projet (Evénementiel, Récurrent, Non facturé)
    • Date de fin (optionnelle)
    • Nombre des crédits par rôle en fonction du type de projet (seulement pour les projets de type Evénementiel et Récurrent)
  • Archiver un projet : rien n’est supprimé mais le projet n’est plus affiché dans la liste des projet
  • Supprimer un projet : Toutes les infos et tous les logs rentrés sont supprimés
  • Vue d’un projet avec évolution des logs par rôle, par personne
  • Liste de tous les projets avec options de recherche (type, clients, projets archivés) et options d’affichage (grille et tableau)

liste_porjects2

 

Gestion du temps

L’une des fonctionnalités les plus importantes, et c’est le but principal de cet outil, est l’entrée des logs. Cette page se devait d’être la plus ergonomique et la plus pratique possible.

  • Vue sur la semaine en cours des projets que l’on a logués au cours de la dernière semaine
  • Si le projet n’est pas dans le tableau, possibilité de l’ajouter
  • Ajout des logs en cliquant sur le jour et le projet correspondant
    • Type du rôle si l’utilisateur en a plusieurs
    • Nombre de crédits (1 heure = 1 crédit, 30 min = 0.5)
    • Description (optionnel)
  • Historique (derniers logs rentrés)
  • Somme des logs de cette semaine et de la semaine dernière

gestion_temps

 

Dashboard
  • Résumé sur l’ensemble des projets par clients sur une période donnée

dashboard