slam4:php:phalcon:project:increase

Projet Increase

Une société de développement (Web, mobile, applications…) souhaite disposer en interne d'un outil permettant :

  • de gérer la répartition de ses équipes sur les projets ⇒ affectations
  • d'apprécier les tâches effectuées et le degré d'avancement sur chaque projet à chaque instant

L'application sera accessible en interne (Intranet destiné aux équipes de développement) mais aussi en externe, pour permettre au client commanditaire d'un projet de consulter l'avancement de celui-ci.

Les utilisateurs sont :

  • Internes à l'entreprise : personnels divers, développeurs, chefs de projet
  • ou externes : clients commanditaires d'une application

La connexion à l'application se fera avec email et mot de passe.
La seule autre information retenue sur les utilisateurs est leur identité :
Composée du nom et du prénom pour une personne physique, ou de la raison sociale pour une entreprise.

Les droits d'accès sont gérés par l'intermédiaire d'ACL (Control Access List).
Chaque utilisateur dispose d'un rôle, qui lui attribue des droits de faire (actions) sur les ressources de l'applications (contrôleurs).

L'application permet le suivi de projets.
Les projets sont baptisés (ils disposent d'un nom), et sont décrits par un bref commentaire.
Sont également mémorisés leur date de lancement et la date de fin prévue.

Chaque projet est découpé en cas d'utilisation (eux aussi nommés) correspondant à une fonctionnalité de l'application future.

Les cas d'utilisation sont répartis entre développeurs dans la phase d'analyse fonctionnelle : chaque cas est pris en charge par un développeur, ce qui n'empêche pas la collaboration sur un même sujet. On estime ensuite le poids que pèse le cas d'utilisation dans le cadre de la réalisation du projet, en pourcentage du travail global à réaliser dans le cadre du projet.

Exemple : On estime que la réalisation du cas “Connexion à l'application” représente 5% de la réalisation du projet.

Chaque jour, ou le plus régulièrement possible, les développeurs en charge de cas d'utilisation sur un projet doivent saisir les tâches relatives au cas qu'ils ont accomplies. Ces tâches, bien que prévisibles parfois, n'ont pas été saisies avant. Le développeur leur associe un degré d'avancement, exprimant en % ce que la tâche a apporté dans la réalisation du cas. Le pointage des tâches doit mentionner leur date de réalisation.

Que l'on soit membre de l'équipe de développement, ou client, il est possible de laisser un message sur la page relative au suivi d'un projet.
Les messages ne sont pas destinés à une personne en particulier. Un message peut par contre être ensuite accompagné d'un fil de discussion.

Les messages sont composés d'un objet, d'un contenu, d'un auteur, d'une date et heure d'émission, et éventuellement de leur fil de discussion (le message auquel ils sont rattachés.

Les membres d'une équipe affectés à un projet peuvent consulter :

  • La présentation du projet
  • La répartition des membre de l'équipe au sein du projet (cas d'utilisation/dév)
  • L'avancement sur chaque cas d'utilisation, ainsi que la liste des tâches associées
  • L'avancement global sur l'ensemble du projet (estimé par rapport à l'avancement sur chaque cas d'utilisation, pondéré par son poids)
  • La date de livraison estimée, et l'éventuel écart/rapport aux prévisions
  • La liste des messages associés à un projet

Chaque membre (en interne)ne peut modifier que les informations qui le concernent.

Les clients peuvent consulter :

  • La présentation de leur projet
  • L'avancement global sur l'ensemble du projet (estimé par rapport à l'avancement sur chaque cas d'utilisation, pondéré par son poids)
  • La date de livraison estimée (mais non garantie), et l'éventuel écart/rapport aux prévisions
  • La liste des messages associés au projet

Schéma physique Increase

Attention
Le script a été modifié le vendredi 13 mars.
Assurez vous de travailler avec la dernière version

  • Travail en Binômes
  • sur 2 séances de TD et entre ces 2 séances
  • Créer au besoin un compte gitHub (si vous n'en possédez pas)
  • L'un des 2 membres doit faire un fork du projet GitHub initial
  • L'autre membre de l'équipe doit cloner le projet de son co-équipier
  • Travailler ensuite en continu, en faisant des commits réguliers et commentés, veillez à faire en sorte que les commits révèlent la régularité et l'intensité du travail de chacun des membres de l'équipe (sans chercher à calculer…)

“A rendre” entre guillemets, puisque votre projet est accessible sur Github :

  • Le fork de l'application avec fonctionnalités implémentées
  • Créer le fichier Readme.md pour présenter le travail réalisé :
    • Veillez à y intégrer les noms des membres de l'équipe
    • Son contenu doit permettre d'apprécier l'implémentation des fonctionnalités demandées (ou non demandée et emplémentées)
      • d'un point de vue technique (Contrôleurs, vues, plugins…)
      • d'un point de vue fonctionnel (du point de vue de l'utilisateur)
    • Le fichier readme peut faire référence à des liens externes (pages supplémentaires hébergées…), images… (sur ce wiki par exemple, sur demande)
    • Le fichier readme doit mettre en avant le projet, sur le fond (son contenu) et sur la forme (esthétique)
  • slam4/php/phalcon/project/increase.txt
  • Dernière modification : il y a 5 ans
  • de 127.0.0.1