Projet CVVEN
Ce PPE a été réalisé en collaboration avec d'autres étudiants. De ce fait, un travail de groupe basé sur la répartition des tâches et la coordination a été indispensable pour mener ce projet à bien.
Constitué de 4 étudiants, notre groupe fut divisé en deux binômes et dû se répartir les missions suivantes:
- PPE02: Calendrier
- PPE03: Réservation des séjours
- PPE04: Gestion des séjours
- PPE05: Authentification des utilisateurs
Mon binôme était chargé des missions "Calendrier" et "Authentification des utilisateurs".
Constitué de 4 étudiants, notre groupe fut divisé en deux binômes et dû se répartir les missions suivantes:
- PPE02: Calendrier
- PPE03: Réservation des séjours
- PPE04: Gestion des séjours
- PPE05: Authentification des utilisateurs
Mon binôme était chargé des missions "Calendrier" et "Authentification des utilisateurs".
Contexte
Le CVVEN, ou Comité pour les Villages de Vacances de l'Education Nationale, est une association prenant le rôle de comité d'entreprise pour les agents de l'Education Nationale.
Elle met à leur disposition des villages de vacances proposant différents services tels que des séjours, des congrès, des séminaires, ou encore des collocations.
Besoin
Le conseil d'administration de CVVEN désire déployer une application web facilitant la réservation de leurs séjours et l'organisation de leurs collocations.
Pour réaliser ce projet, nous avons choisi d'utiliser le framework CodeIgniter et de développer cette application avec PHP.
Existant
Un schéma conceptuel à été mis a notre disposition, nous permettant ainsi de réaliser une Base de Données fidèle aux attentes du conseil d'administration:
PPE02 - Calendrier
Contexte de la mission
Les réservations n'étant possibles que par courrier, formulaire internet et téléphone, aucune tâche n'est automatisée.
Il nous est donc demandé de réaliser un module d'affichage des séjours sous forme de calendrier, facilitant ainsi les réservations.
Les réservations n'étant possibles que par courrier, formulaire internet et téléphone, aucune tâche n'est automatisée.
Il nous est donc demandé de réaliser un module d'affichage des séjours sous forme de calendrier, facilitant ainsi les réservations.
Existant
Application développée en PHP et avec CodeIgniter permettant l'affichage des réservations des utilisateurs.
Démarche de réalisation
Les différentes tâches de ce projet ont été réalisées dans l'ordre suivant:
- Affichage des réservations sur un calendrier mensuel pour les utilisateurs enregistrés sur le site,
- Affichage des semaines indisponibles (hors vacances scolaires),
- Possibilité de consulter le mois précédent ainsi que le mois suivant à l'aide de liens hypertexts,
- Intégration de liens vers les détails des réservations des utilisateurs.
Problèmes rencontrés
L’utilisation de la classe Calendar intégrée à CodeIgniter était fortement recommandée.
Cette mission n’a pas pu être aboutie à causes des problèmes rencontrés suivants :
Bien que la classe Calendar ait été utilisée, nous ne savions pas comment réaliser les tâches 1, 2 et 4.
La tâche 3 a été réalisée sans soucis. Nous avions juste un calendrier standard avec des liens hypertextes pour afficher le mois précédent et suivant.
De ce fait, nous n’avons pas intégré le calendrier au projet, qui nous était jugé inutile car il n’était pas fonctionnel.
Par manque de temps, nous avons abandonné le reste de la mission afin de nous consacrer à la seconde phase du projet, la mission PPE05.
Les différentes tâches de ce projet ont été réalisées dans l'ordre suivant:
- Affichage des réservations sur un calendrier mensuel pour les utilisateurs enregistrés sur le site,
- Affichage des semaines indisponibles (hors vacances scolaires),
- Possibilité de consulter le mois précédent ainsi que le mois suivant à l'aide de liens hypertexts,
- Intégration de liens vers les détails des réservations des utilisateurs.
Problèmes rencontrés
L’utilisation de la classe Calendar intégrée à CodeIgniter était fortement recommandée.
Cette mission n’a pas pu être aboutie à causes des problèmes rencontrés suivants :
Bien que la classe Calendar ait été utilisée, nous ne savions pas comment réaliser les tâches 1, 2 et 4.
La tâche 3 a été réalisée sans soucis. Nous avions juste un calendrier standard avec des liens hypertextes pour afficher le mois précédent et suivant.
De ce fait, nous n’avons pas intégré le calendrier au projet, qui nous était jugé inutile car il n’était pas fonctionnel.
Par manque de temps, nous avons abandonné le reste de la mission afin de nous consacrer à la seconde phase du projet, la mission PPE05.
PPE05 - Authentification des utilisateurs
Contexte de la mission
Le second projet a pour but l'ajout de nouvelles fonctionnalités à l'application. En effet, l'utilisateur devra avoir la possibilité de s'authentifier. Il devra donc pouvoir se créer un compte ou changer son mot de passe par exemple.
Démarche de réalisation
Les différentes tâches de ce projet ont été réalisées dans l'ordre suivant:
- Formulaire de création de compte utilisateur,
- Possibilité de changer de mot de passe via un formulaire,
- Authentification des utilisateurs enregistrés dans la base de données,
- Ajout d'un bouton de déconnexion.
Problèmes rencontrés
Pour que les utilisateurs enregistrés puissent se connecter au site, nous avons mis en place une session.
Lors de cette mission, nous n'arrivions pas à afficher les réservations en fonction de l'ID Utilisateur des utilisateurs , directement lorsque ces derniers se connectaient.
Nous avons donc mis en place un champs leur permettant d'entrer leur ID Utilisateur. Une fois qu'ils l'ont saisi, leurs réservations portant le même ID que le leur, s'affichent.
Problème non-résolu : Les utilisateurs et l'administrateur ne disposent pas que d'une seule session. En effet, il y a deux sessions distinctes. Il faudrait que dans une même session, il y ait une vérification de la condition Admin de la personne se connectant. Ainsi, les utilisateurs ne pourront plus se connecter dans la partie admin.
Le second projet a pour but l'ajout de nouvelles fonctionnalités à l'application. En effet, l'utilisateur devra avoir la possibilité de s'authentifier. Il devra donc pouvoir se créer un compte ou changer son mot de passe par exemple.
Démarche de réalisation
Les différentes tâches de ce projet ont été réalisées dans l'ordre suivant:
- Formulaire de création de compte utilisateur,
- Possibilité de changer de mot de passe via un formulaire,
- Authentification des utilisateurs enregistrés dans la base de données,
- Ajout d'un bouton de déconnexion.
Problèmes rencontrés
Pour que les utilisateurs enregistrés puissent se connecter au site, nous avons mis en place une session.
Lors de cette mission, nous n'arrivions pas à afficher les réservations en fonction de l'ID Utilisateur des utilisateurs , directement lorsque ces derniers se connectaient.
Nous avons donc mis en place un champs leur permettant d'entrer leur ID Utilisateur. Une fois qu'ils l'ont saisi, leurs réservations portant le même ID que le leur, s'affichent.
Problème non-résolu : Les utilisateurs et l'administrateur ne disposent pas que d'une seule session. En effet, il y a deux sessions distinctes. Il faudrait que dans une même session, il y ait une vérification de la condition Admin de la personne se connectant. Ainsi, les utilisateurs ne pourront plus se connecter dans la partie admin.
Compétences mises en œuvre lors de ce projet
A.1.1.1 - Analyse du cahier des charges d'un service à produire
A.1.1.3 - Etude des exigences liées à la qualité attendue d'un service
A.1.3.4 - Déploiement d'un service
A.1.4.1 - Participation à un projet
A.1.4.2 - Conception ou adaptation de l'interface utilisateur d'une solution applicative
A.2.1.2 - Evaluation et maintien de la qualité d'un service
A.2.3.1 - Identification, qualification et évaluation d'un problème
A.2.3.2 - Proposition d'amélioration d'un service
A.3.1.1 - Proposition d'une solution d'infrastructure
A.3.2.1 - Installation et configuration d'éléments d'infrastructure
A.4.1.1 - Proposition d'une solution applicative
A.4.1.2 - Conception ou adaptation de l'interface utilisateur d'une solution applicative
A.4.1.3 - Conception ou adaptation d'une base de données
A.4.1.7 - Développement, utilisation ou adaptation de composants logiciels
A.5.2.1 - Exploitation des référentiels, normes et standards adoptés par le prestataire informatique