Compte Rendu PPE APPLI_FRAIS

Génération du Modèle Conceptuel de Données

Le MCD suivant a du être fait à la main, car la rétro-conception proposée par WinDesign ne fonctionnant pas parfaitement, certaines contraintes de clés primaires/étrangères disparaissaient.

Voici donc le Modèle Conceptuel de Données :

Test de l'Application

Débogage de l'application

Lors du débogage de celle ci, nous avons observé 4 erreurs :

* La première erreur concerne le fichier //"init.inc.php"// auquel il manquait une "jointure" avec le fichier //"_gestionSession.lib.php"// à la ligne 10. Par conséquent nous avons ajouté la ligne de code suivante :

require("_gestionSession.lib.php");

* La deuxième erreur concerne le fichier //"_bdGestionDonnées.php"//. En effet, le problème venait des identifiants de connexion à la base de données qui n'étaient pas les bons à la ligne 20.

Nous avons donc remplacé le login par root et enlevé le mot de passe afin que la connexion est lieue.

$hote = "localhost";
$login = "root";
$mdp = "";
return mysql_connect($hote, $login, $mdp);

* La troisième erreur concerne toujours le même fichier, à la ligne 34 cette fois ci. Le nom de la base de données n'était pas le bon. Nous avons donc remplacé //"gsb_valide"// par //"gsb_frais"//.

$bd = "gsb_frais";

* La quatrième et dernière erreur concerne le fichier cAccueil.php à la ligne 24. En effet ici, le nom du fichier stipulé dans le require était incomplet. Nous avons donc complété //"_fin.php"// en le remplaçant par //"_fin.inc.php"//

require($repInclude . "_fin.inc.php");

Jeux d'essais

Combinaison Login/Mot de passe

Voici tout d'abord, un tableau récapitulatif des différents jeux d'essais réalisés :

Les lignes apparaissant en rouge (en rose ?) sont les jeux d'essais ayant échoués. Ceux en vert sont ceux ayant été acceptés par l'application. Nous pouvons en conclure plusieurs choses :

* Il faut obligatoirement que les deux champs soient remplis.
* Il faut que la combinaison Login/Mot de passe corresponde à celle enregistrée dans la base de données.

Saisie des fiches de frais

Voici, encore une fois, un tableau récapitulatif des jeux d'essais réalisés avec en rouge (en rose ?) les combinaisons ayant échouées et en vert celles ayant été acceptées par l'application.

Plusieurs éléments peuvent être observés :

* Uniquement des valeurs numériques peuvent être saisies.
* Les valeurs décimales et négatives ne sont pas acceptées.
* Malgré le fait qu'il n'y ai que 31 jours maximum dans un mois, on peux passer plus de nuit qu'il n'y a de jours dans un mois à l'hôtel.
* Tous les champs doivent être obligatoirement remplis.
* Le format de la date doit être sous la forme jj/mm/aaaa ou jj/mm/aa
* Les doublons sont acceptés par l'application

Visualisation des fiches de frais

Cette partie ne servant qu'à afficher les informations concernant les fiches de frais saisies, elle ne nécessite donc pas de jeu d'essai particulier.

Application de la norme de développement

Voici la liste des erreurs de normes trouvées :

* //"_bdGestionDonnées.php"// et //"_utilitairesGestionErreurs.php"// étant tous deux des fichiers contenant des fonctions, il manque donc .lib à chacun d'eux.
* L'indentation n'est pas présente dans le fichier //"init.inc.php"//
* Les accolades ouvrantes désignant le début d'une fonction doivent être placées sur la même ligne que la déclaration de celle ci. L'erreur se trouve dans les fichiers //"_bdGestionDonnées.php"// et //"_gestionSession.lib.php"//
* Chaque terme d'une appellation se doit d'être séparé par une majuscule afin de bien distinguer ceux-ci. Cette erreur se retrouve dans le fichier //"_bdGestionDonnées.php"//, //"sommaire.inc.php"// et //"cConsultFicheFrais.php"// Exemple :

function filtrerchainepourbd($str)

Se doit d'être écrit de la manière suivante :

function filtrerChainePourBD($str)

Les noms des éléments HTML doivent être préfixés par une abréviation rappelant leur type. Ce qui n'est pas le cas dans le fichier “cSaisieFicheFrais.php”