Description du projet

Dans l’univers étudiant, les espaces d’études jouent un rôle essentiel dans l’apprentissage en dehors des salles de classe. De nombreuses institutions scolaires présentent des espaces d’étude, généralement sous forme de local situé dans leurs bibliothèques. Ces institutions possèdent un système de réservation permettant aux étudiants de réserver un espace d’étude.

Cependant, ces systèmes ne sont pas pleinement adaptés aux besoins des étudiants et souffrent souvent de plusieurs problèmes. Tout d’abord, dans les établissements scolaires, la restriction de la réservation aux salles d'études et aux seuls étudiants de l’établissement concerné entraîne une utilisation inefficace de tout l'espace disponible au sein de ces établissements. Ensuite, il est difficile d’adapter ces systèmes de réservations actuels pour répondre aux besoins de flexibilité. En effet, dans ces systèmes, il n'est pas évident d'étendre la réservation à tout espace favorable à l'étude mais aussi les normes et politiques de résevation sont souvent contraignantes. De plus, la plupart de ces systèmes de réservation connaissent un problème d’utilisabilité notamment ceux utilisés par les bibliothèques universitaires au Québec. En effet, dans ces derniers, il n'est souvent pas évident d'identifier et de distinguer les différentes bibliothèques disponibles, il n'y a souvent pas de guide clair sur la manière d'effectuer une réservation correcte et il n'est souvent pas facile de naviguer parmi les options de réservation.

Pour répondre aux lacunes énoncées, nous proposons de construire Nestor, une plateforme de réservation inclusive et dynamique mettant l'accent sur l'accessibilité et la flexibilité. Tout d’abord, Nestor ouvre la réservation à tout espace favorable à l'étude et à l'entraide, que ce soit dans une bibliothèque, un centre, un parc ou un commerce. Grâce à des fonctionnalités avancées de recherche, les utilisateurs peuvent facilement trouver les espaces correspondant à leurs besoins spécifiques, qu'il s'agisse de salles de travail en groupe, de zones de silence ou de laboratoires spécialisés. En permettant aux utilisateurs de modifier facilement leurs réservations et de notifier le système en cas de libération d'espace, Nestor favorise une gestion agile et efficace des espaces d'études. De plus, les utilisateurs pourront communiquer des informations sur le statut de l’espace réservé et inviter ou autoriser d'autres personnes à les rejoindre lors de leurs sessions d'étude. Enfin, Nestor permet aussi aux étudiants de donner leur avis sur les espaces utilisés, ce qui pourra aider les établissements à améliorer la gestion des espaces d'étude de manière continue et efficace.

Exigences

Besoins fonctionnels

Besoins non-fonctionnels

Infrastructure

Rapport d'avancement

  • Exigences & Analyse
  • Prototypage & Conception
  • Implémentation: Infrastructure & Application
  • Validation

Semaine 15 –

Présentation

Objectifs

  • Commencer à préparer une présentation

Réalisations

  • Présentation du projet

Liens

Semaine 14 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Continuer l'implémentation
  • Commencer à rédiger un rapport

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer la modélisation des données
  • Continuer Implémentation : ( React ) Cartes
  • Implémentation : ( React ) Réservation & Authentification
  • Implémentation : ( Fastify & MongoDB ) Réservations & User : routes, api, schema

Notes

Pendant la réunion :

Semaine 13 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Continuer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer la modélisation des données
  • Continuer Implémentation : ( React ) Filtre & Cartes
  • Implémentation : ( React ) Réservation & Authentification
  • Implémentation : ( Fastify & MongoDB ) Réservations & User : routes, api, schema

Notes

Pendant la réunion :

  • Terminer les parties 'réservation' et 'authentification'

Semaine 12 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Continuer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer la modélisation des données
  • Continuer Implémentation : ( React ) Filtre & Cartes
  • Implémentation : ( React ) Connexion & Réservation
  • Implémentation : ( Fastify & MongoDB ) Réservations : routes, api, schema

Notes

Pendant la réunion :

  • Structure du schéma Réservation à modifier : Ajouter les dates de createDate & endDate

Semaine 11 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Continuer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer la modélisation des données
  • Continuer Implémentation : ( React ) Filtre & Cartes
  • Implémentation : ( React ) Connexion & Réservation
  • Implémentation : ( Fastify & MongoDB ) Réservations : routes, api, schema

Notes

Pendant la réunion :

  • Réservations : changement de date -> delete & create new
  • Réservations : changement de guests -> update
  • Gestion des espaces: filter by Organisation
  • Affichage des images : slide -> sections séparées

Semaine 10 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Continuer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer la modélisation des données
  • Continuer Implémentation : ( React ) Filtre & Cartes
  • Implémentation : ( React ) Connexion & Réservation
  • Implémentation : ( Fastify & MongoDB ) Spaces : routes, api, schema

Notes

Références des outils utilisés :

  • Tanstack Query

Pendant la réunion :

  • Terminer les sections de filtres et de réservations
  • Fixer le bug d'affichage des cartes lors de défilage

Semaine 9 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Continuer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer le prototype sur Figma
  • Continuer la modélisation des données
  • Implémentation : ( React ) Filtre & Cartes
  • Implémentation : ( Fastify & MongoDB ) Spaces : routes, api, schema

Notes

Références des outils utilisés :

Pendant la réunion :

  • Champs d'addresse : autocomplete
  • À faire : Sections Filtres & page détail

Semaine 8 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Continuer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer le prototype sur Figma
  • Continuer la modélisation des données
  • Implémentation : ( React ) Filtre & Cartes
  • Implémentation : ( Fastify & MongoDB ) Spaces : routes, api, schema

Notes

Références des outils utilisés :

Références pour l'apprentissage des outils du projet :

Pendant la réunion : Modélisation des données & Implémentation

  • React-router autorisé
  • base de données : availabilities -> periodic ?

Semaine 7 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Commencer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Continuer le prototype sur Figma
  • Continuer la modélisation des données
  • Implémentation : ( React ) Initialisation, page d'accueil

Notes

Références des outils utilisés :

Références pour la modélisation des données :

Références pour l'apprentissage des outils du projet :

Pendant la réunion : Modélisation des données & Démarrage de l'implémentation

  • Agrégation : Admin -> Organisation
  • Composition : Equipement -> Space
  • Composition : Mes favoris -> User
  • Groupes d'utilisateurs
  • Grooupes d'espaces
  • Implémentation : Initialisation de React & fastify & MongoDB

Semaine 6 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception & Implémentation

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Déterminer les exigences du projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Continuer la modélisation des données
  • Commencer l'implémentation

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Avancer le prototype sur Figma
  • Commencer la modélisation des données sur Miro
  • Ajouter des exigences non-fonctionnelles

Notes

Références pour le prototypage UX/UI :

Références pour la modélisation des données :

Références pour l'apprentissage des outils du projet :

Pendant la réunion :

  • Message -> Communication externe
  • Structure de la page 'Home' : 1. Search 2. Filter 3. Tags 4. Content 5. Footer

Semaine 5 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception

Objectifs

  • Continuer à apprendre les outils envisagés pour le projet
  • Déterminer les exigences du projet
  • Continuer le prototypage du UI/UX et le flux d'Activités
  • Commencer la modélisation des données

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Avancer le prototype sur Figma
  • Commencer la modélisation des données sur Miro

Notes

Références pour le prototypage UX/UI :

Références pour la modélisation des données :

Références pour les outils du projet :

Pendant la réunion : Prototype UI/UX

  • Page 'Ajouter un groupe' : Enlever l'option 'nombre de personnes disponibles'
  • Ajouter 'modifier un groupe'
  • Page 'horaire' : Juste afficher l'horaire individuellement
  • Page 'Ajouter un nouvel espace et un nouveau groupe' : Permettre aux administrateurs d'ajouter plusieurs intervalles pour les heures d'ouverture

Semaine 4 –

Élaboration des exigences & Analyse préliminaire & Prototypage & Conception

Objectifs

  • Choisir un outil pour le Back-end
  • Continuer à apprendre les outils envisagés pour le projet
  • Déterminer les exigences du projet
  • début du prototypage de l'expériece étudiant dans le système de réservation avec le cu de réservation d'espace étude
  • Continuer le prototypage du UI/UX et le flux d'Activités

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Outil du back-end choisi : fastify
  • Avancer le prototype sur Figma

Notes

Références pour le prototypage UX/UI :

Références pour les outils du projet :

Pendant la réunion : Prototype UI/UX

  • Même flux de confirmation de la création du compte pour les étudiants et les administrateurs. Mais les informations nécessaires à remplir seront différentes.
  • Catégorie : (Types d'espace) Bibliothèque, Université, Nombre de personnes, Parc, Café, ...

Semaine 3 –

Élaboration des exigences & Analyse préliminaire

Objectifs

  • Choisir un outil pour le Back-end
  • Continuer à apprendre les outils envisagés pour le projet
  • Déterminer les exigences du projet
  • Commencer le prototypage du UI/UX et le flux d'Activités

Réalisations

  • Continuation des apprentissages des outils avec les tutoriels en lignes
  • Comparaison des outils du back-end (fastify, Express, FastAPI, Flask, Django)
  • Affinement des CUs en utilisant un diagramme de CU
  • Choix des outils pour le prototypage UI/UX : Figma, Miro et sketch à la main
  • Commencer le prototype sur Figma

Notes

Références pour le prototypage UX/UI :

Références pour les outils potentiels pour le back-end du projet :

Pendant la réunion :

  • Établit un plan d'objectifs pour les semaines 3 et 4
  • Construit un diagramme de CU pour bien cueillir les besoins fonctionnels (Admin espace, étudiant)

Semaine 2 –

Élaboration des exigences & Analyse préliminaire

Objectifs

  • Terminer la description du projet
  • Continuer à apprendre les outils envisagés pour le projet
  • Déterminer les exigences du projet

Réalisations

  • Apprentissage de React et postCSS avec les tutoriels en lignes
  • Cueillette des besoins fonctionnels

Notes

Références pour l'apprentissage du PostCSS :

Pendant la réunion :

  • Définir quelles sont les motivations du projet et donner les propositions pour établir la description du projet
  • Discuter des choix d'outils pour le projet

Semaine 1 –

Ouverture de projet & Élaboration des exigences

Objectifs

  • Prendre en main les outils qui seront utilisés pour le projet
  • Produire une première version de l'échéancier
  • Étudier le domaine, les notions et outils envisagés pour le projet
  • Commencer la description du projet

Réalisations

  • Choix d'outils pour Front-end : PostCSS, React
  • Apprentissage de React avec les tutoriels en lignes
  • Déveloper les idées pour la description du projet pendant la réunion

Notes

Références pour l'apprentissage du React :

Références pour étudier le domaine :