-
Notifications
You must be signed in to change notification settings - Fork 2
Home
| Nom | Pseudo Github | US décrite | US implémentée |
|---|---|---|---|
| Abderrachid BELLAALI | @Rachiid007 | Afficher les voitures | Lien US |
| Patson TIAKO | @CardinPatson | Choisir la plage horaire de location | Lien US |
| Aymar HAKIZIMANA | @HaAymar | Choisir la marque de la voiture | Lien US |
| Michaël POURBAIX | @Pourbaix | Ajouter des voitures | Lien US |
Le projet consiste en la création d'une application web permettant à des utilisateur de louer des voitures d'un particulier. L'application possèdera deux interfaces. une interface réservée au visiteur/utilisateur(visiteur inscris sur la plateform) et une autre administrateur.
En ce qui concerne l'interface administrateur, il un vue globale sur l'ensemble du site avec la possibilité de rajouter des voitures destinées à être loué par les utilisateur, de gérer les location des utilisateur mais aussi de rajouter des administrateurs.
Pour ce qui est de l'interface client le visiteur aura la possibilité de consulter les voitures destinées à être loué et l'utilisateur inscris aura en plus la possibilité de louer un voiture. L'objectif est de créer une application Web de location de voiture, avec un espace membre et un panneau administratif pour la gérer.
- Backend : NodeJS-Express
- Frontend : React Redux
- Base de données : PostgreSQL
- Gestionnaire de tâches
- Gestionnaire de temps
- Vidéo de présentation du projet final
- Maquette du site
- Schéma de base de données
Nous organisons des réunions hebdomadaires via un serveur discord. Durant ces réunions nous discutons de l'avancement du projet, des prochaines tâches à réaliser et nous nous concertons sur certains sujets. Ces réunions sont aussi un moment très opportun pour faire une auto-évaluation de notre travail et compléter les différents points présents dans le git.
Une réunion dure en moyenne 4h00 mais bien évidemment nous allons bien au delà de sa celà nous permet d'être beaucoup plus productif . Durant ces réunions, nous répartissons les tâches de manière équitable. Durant ces réunions nous faisons aussi le point sur celles-ci qui sont déjà terminé et celle qui nécessite un travail collaboratif.
La création d'une branche github se fait lorsque plusieurs personnes on besoin de travail differente partie du code ex: pour une fonctionnalité qui vient d'être implémenté mais qui n'est pas completement fonctionnelle mais la personne a besoin de sauvegarder son avancement dans la fonctionnalité et une autre personne qui à besoin du code completement fonctionnelle pour avancer sur une autre partie du code.
La personne dont la fonctionnalité n'est pas complètement fonctionnelle créera une branche afin de rendre sa fonctionnalité fonctionnelle, Bien évidement si cette fonctionnalité nécessite un travail collaboratif tout le groupe n'hésite pas à se déplacer sur la nouvelle branche afin de terminer la fonctionnalité
Lorsqu'une fonctionnalité est terminé sur une nouvelle branche le créateur de la branche effectu une pull request afin de merger sa fonctionnalité dans la branche principale master. Si la pull request nécessite une resolution de conflit ou review du code le créateur de la branche peut désigner un reviewer qui va se charger de relire le code avec le créateur de la branche et de l'aider à résoudres les conflits
Afin de faciliter la collaboration dans le projet nous avon mis en place quelques astuces qui nous permet de mieux répartir le travail entre nous
- Un générateur de nombres aléatoires pour répartir parfois la complétion de certaines parties du wiki
La façon dont on utilise Github Project est repris dans cette partie du wiki
Qui nous permet de renseigner le temps de travail que chaque membre du groupe à effectuer durant la semaine ainsi que des différentes réunion hebdomadaire que nous effectuer.
- Discord
Utilisé afin de planifier les différentes réunions hebdomadaires, il nous sert d'outil d'échange entre les membres du groupe. Nous utilisons aussi Discord beaucoup plus pour partager les différents liens de formation, tutoriels qui nous permettent de réaliser une ou plusieurs fonctionnalités
Il nous permet aussi de nous entretenir sur la résolution de bug dans le code, de mentionner des éventuelles crash du serveur ou de l'interface de l'application dans le cas où ne saurais sois même résoudre le problème.
Nous utilisons git pour poster l'implémentation de notre code comme mentionner dans cette section. Afin de faciliter la résolution de code ou encore de conflit lors des différents pull request on essaie au mieux de suivre une convention élaboré par l'ensemble du groupe pour les différents messages de commits.
- [FIX] : Quand un bug ou un problème a été identifié et fixé dans la projet
- [ADD] : Quand une fonctionnalité a été terminé ou un nouveau fichier a été ajouté
- [DEL] : Quand une fonctionnalité ou un fichier a été supprimé
- [UPG] : Quand une fonctionnalité a été amélioré
- [PEND] : Quand une fonctionnalité a été entamé mais est toujours en phase de réalisation
- [REF] : Quand la structure du code ou d'une fonctionnalité a été modifié
- [UPD] : Quand une fonctionnalité fonctionnelle a été optimisé
- [TEST] : Quand une fonctionnalité fonctionnelle est en cours de test
Le gestionnaire de tâche utilisé est Github Project.
Afin de séparer au mieux les étapes du projet on utilise comme gestionnaire de projet GitHub Action qui nous permet de diviser l'implémentation de fonctionnalité en 6 parties décrite ci-dessous:
- Backlog :
Contient toutes les users stories du projet avec un lien vers les issues correspondantes c'est dans cette partie que l'on mettra toutes les fonctionnalités qui seront destinées à être prise en main ainsi que ce
- To do :
Contient toutes les fonctionnalités qui seront destinées à être implémenté le plus vite possible et classé par ordre d'importance.
Contient toutes les fonctionnalités qui sont en cours d'implémentation
Contient toutes les fonctionnalités terminées mais qui nécessitent des test qui n'ont pas encore été mis en place. Dans cette liste ont place en attente les US afin de corriger soit un autre bug soit d'aider un membre du groupe dans l'implémentation d'une autre fonctionnalité.
Contient toutes les fonctionnalités dont les tests sont en cours d'implémentation. Si un membre du groupe place une fonctionnalité dans cette partie s'il travaille hâtivement sur celle ci.
Lorsqu'une fonctionnalité à été completement implémenté et ne necessite plus que des mises à jour ou une maintenance du code et que les tous les tests implémentés à l'étape précédente passent correctement, elle est placé dans cette partie.
- Documentation: Utilisé pour préciser les us qui sont documentées.
- TAG DE NOM: Utilisé pour préciser quel est le membre du groupe qui gère la US.
[Quels autres outils ont été utilisés? Pourquoi?]