GL51 Rapport d'audit « Librairie Informatique » Code : BATSPETA-000

Maîtrise d'oeuvre	M. Fischer
Maîtrise d'ouvrage	M. Petrequin
Responsables de l'audit	Melle Bats, M. Petazzoni

Date rédaction : 05/01/04	Version : 1.1	Date MAJ : 10/01/04

Table des matières

I. Fiche signalétique	2

1. Projet	2

2. Maîtrise d'ouvrage	2

3. Maîtrise d'oeuvre	3

4. Responsables de l'audit	3

II. Étude	4

1. Conclusions générales	4

2. Démarche	4

3. Détail de l'étude	4

a. Au niveau utilisateur	4

b. Au niveau gestionnaire	5

c. Au niveau administrateur technique	5

d. Au niveau développeur	6

III. Améliorations proposées	7

1. Au niveau de l'organisation	7

2. Au niveau de la documentation	7

3. Au niveau du développement	7

IV. Conclusion	8

Fiche signalétique

Projet

Audit d'un logiciel : Librairie Informatique

Notre objectif était d'étudier un logiciel de librairie informatique en ligne. Le logiciel est un site Web consultable avec un navigateur Internet. Il repose sur une base de données Oracle et le langage de génération de pages dynamiques PSP proposé par Oracle. Notre étude du projet visait à identifier les caractéristiques défaillantes de celui-ci et de faire des propositions pour la conduite du futur projet.

Code : BATSPETA-000

Maîtrise d'ouvrage

Nom	Rôle	Niveau
Petrequin Samuel samuel.petrequin@utbm.fr	Chef de projet	Etudiant GI-UTBM
Burnet Fabien fabien.burnet@utbm.fr	Développeur	Etudiant GI-UTBM
De-Weck Julien julien.de-weck@utbm.fr	Développeur	Etudiant GI-UTBM
Mas Jean Sébastien jean-sebastien.mas@utbm.fr	Développeur	Etudiant GI-UTBM

Maîtrise d'oeuvre

Nom	
Fischer Christian christian.fischer@utbm.fr	Professeur UV BD50

Responsables de l'audit

Nom	Niveau
Bats Mélanie melanie.bats@utbm.fr	Etudiant GI04-UTBM
Petazzoni Thomas thomas.petazzoni@utbm.fr	Etudiant GI04-UTBM

Étude

Conclusions générales

Un logiciel fonctionnel et utilisable mais il reste des points problématiques :

Organisation de l'équipe très chaotique

Ergonomie de l'interface perfectible

Procédure d'installation du logiciel délicate

Fonctionnalités de gestion des comptes et de recherche à améliorer

Mauvais choix au niveau des technologies utilisées

Pas de contrôle qualité

Démarche

Le logiciel étant un site Web, les problèmes rencontrés se situent à quatre niveaux :

Niveau utilisateur : il visite le site pour réaliser des achats.

Niveau gestionnaire du site : il utilise le site pour rajouter des produits, mettre à jour les prix, lister les commandes en cours, etc...

Niveau administrateur technique du site : il doit le mettre en place et le mettre à jour.

Niveau développeur : il doit ajouter de nouvelles fonctionnalités, corriger des bugs.

Afin de réaliser cette étude, nous avons utilisé :

Installation du logiciel et tests empiriques

Lecture et étude des dossiers de spécification et de conception

Interview du chef de projet et du maître d'oeuvre

Questionnaires

Grilles d'évaluation

Vous trouverez quelques uns de ces documents en annexe.

Détail de l'étude

Au niveau utilisateur

Nous avons tout d'abord étudié l'ergonomie générale du site, puis ses diverses fonctionnalités principales, en relevant à chaque fois les points positifs et les points négatifs.

Points positifs	Points négatifs
Ergonomie
Interface légère	Interface spartiate
Interface facile à prendre en main sur la plupart des aspects	Menu très peu esthétique avec des problèmes de positionnement
	Difficile de savoir qu'il faut cliquer sur la petite flèche dans le menu d'administration ou de gestion de compte, pour accéder aux sous-rubriques
Gestion des comptes
Le visiteur normal peut s'inscrire pour être identifié par le site : le menu gère tous les cas typiques de mauvaises saisies (mots de passe différents, champs incomplets)	Si l'utilisateur fait une mauvaise saisie, celui-ci doit remplir de nouveau le formulaire en entier.
Le changement de mot de passe fonctionne	Procédure de connexion/déconnexion pas très claire (il faut cliquer sur administration pour se déconnecter lorsque l'on est utilisateur)
Le changement des informations personnelles fonctionne.	
Recherche
Le menu de recherche donne des résultats corrects	À la fin de chaque recherche, il indiqué sous les résultats que la recherche n'a pas abouti même si celle-ci s'est bien déroulée
	La recherche n'est pas multi-critères
	La recherche selon mots-clé ne semble pas fonctionner, cela étant peut être dû au non-respect des contraintes d'intégrité.
Liste des produits
Liste des produits facile et agréable à consulter grâce aux images	Léger manque de lisibilité entre les produits (besoin d'une séparation)
	Il faut cliquer sur la photo pour accéder à un descriptif précis du produit, ce qui n'est pas intuitif.
Panier
Le panier stockant les articles commandés fonctionne bien : il est clair, simple et efficace	

Au niveau gestionnaire

Points positifs	Points négatifs
Les diverses fonctionnalités d'ajout d'auteur / mot clé / thèmes et livres fonctionnent.	La suppression d'un auteur dans un livre est buggée : tous les auteurs du livre sont supprimés.
Les fonctionnalités de modification fonctionnent presque toutes.	Le lien vers la page administration est affiché même si l'on est loggué en utilisateur normal (sans droits).
Les fonctionnalités de suppression fonctionnent.	Si l'on est connecté en utilisateur sans droits, il ne faut pas aller sur la page "Administration", sinon on se retrouve déconnecté du site.
La gestion des commandes fonctionne bien.	

Au niveau administrateur technique

Points positifs	Points négatifs
Outils utilisés listés dans le rapport,	Oracle très complexe à installer (en tout cas sous GNU/Linux)
Présence d'un court fichier explicatif dans le projet décrivant les différentes étapes pour mettre en place le site Web et la base de données.	Oracle difficile à configurer lorsqu'on a pas fait BD50 (utilisation de SQL*Plus, etc...)
	Erreur lors de la création de la base avec le script CreationBase.SQL
	Erreur dans les contraintes d'intégrité lors de l'éxécution du script RemplirBase.SQL
	Pages qui ne se compilaient pas en raison d'un encodage incorrect du symbole Euro.
	Tous les accents dans les pages et dans la base sont erronés. Peut-être est-ce du au changement Windows/Linux ?
	Difficultés à configurer le DAD et le fonctionnement des pages PSP.

Au niveau développeur

Points positifs	Points négatifs
Organisation
Définition de rôles avec un chef d'équipe.	Non respect des rôles.
Répartition prévisionnelle organisées des tâches.	Non respect de cette répartition, 2 personnes de l'équipe se sont retrouvées surchargées.
	Aucun planning prévisionnel n'a été définit.
	Aucun planning réel de l'avancement du projet.
	Pas de management réel du projet par son responsable.
Documentation
Existence d'un dossier de spécifications détaillé.	Aucun cahier des charges.
Existence d'un dossier de conception.	Pas de documentation sur le fonctionnement interne du logiciel.
	Aucune documentation de tests / contrôle qualité.
Développement
Une documentation précise au niveau interface et base de données a été réalisée.	Pas de commentaires dans le code, et pas d'homogénéité.
	Pas de séparation entre l'interface et le contenu => difficile de changer l'interface du site. L'utilisation d'une technologie standard comme CSS serait souhaitable, mais l'équipe n'a pas réussi à le faire fonctionner avec PSP.
	PSP sous-utilisé en ce qui concerne les possibilités d'insertion de code.
Existence d'une phase finale de tests.	Pas de contrôle qualité suivi.
Gestion sommaire des différentes versions du projet pour le travail des développeurs.	Gestion de version manuelle et peu efficace à base d'archives.

Améliorations proposées

Cette partie a pour but de faire un certains nombres de propositions afin d'améliorer le logiciel précédemment étudié.

Au niveau de l'organisation

Définir des rôles au sein de l'équipe, de manière à répartir équitablement le travail en fonction du temps et des compétences des membres de l'équipe. Cela permettra d'assouplir les relations entre les développeurs en travaillant de manière plus coopérative et plus homogène.

Définir un planning prévisionnel permet de proposer des délais réalistes au client, et définir un planning réel permettant de mesurer l'avancée réelle afin de tenir le client au courant et en interne d'optimiser l'utilisation des ressources humaines.

Au niveau de la documentation

La définition d'un cahier des charges précis est une étape primordiale du projet. Elle permet de cerner l'ensemble des besoins du client afin d'avoir une connaissance globale des fonctionnalités à implémenter.

Le dossier de spécification est la seconde étape importante, il permet aux développeurs de définir l'architecture globale du système et les technologies qui vont être utilisées. Il constitue un socle sur lequel une bonne organisation s'appuie.

La mise en place de documents de gestion de la qualité permet de rédiger en fonction du cahier des charges des séquences de tests adaptées afin de valider l'ensemble des fonctionnalités attendues par le client.

Parrallèlement à la rédaction de ces documentations doit avoir lieu un contrôle suivi et continu de ces documents par au moins 2 personnes autres que le rédacteur initial.

Au niveau du développement

D'un point de vue ergonomique, il serait souhaitable de revoir certains aspects de l'interface. En particulier l'esthétique et le placement du menu, les liens d'accès aux sous-rubriques et la mise en valeur des informations par des boites pour délimiter l'espace.

D'un point de vue fonctionnalité, il paraitraît intéressant, en fonction des besoins du client, d'ajouter ou d'améliorer :

Le système d'administration pour le gestionnaire. En effet, le client gestionnaire du site aura besoin d'ajouter, modifier et supprimer des ouvrages, gérer l'état des commandes, les promotions, etc...

La recherche multi-critères facilitera la navigation au sein du site pour le visiteur qui essaie de trouver un livre.

Un système de commentaires et de notation des ouvrages permettra de créer une communauté de visiteurs : le site ne sera plus uniquement un magasin en ligne, mais également un lieu d'échanges et de discussion entre les visiteurs. Ceux-ci reviendront donc régulièrement sur le site, ce qui tendra à leur faire renouveler l'acte d'achat.

Une page « nouveautés » permettra aux visiteurs de découvrir en un clin d'oeil les nouveaux ouvrages disponibles. Il n'aura pas besoin d'aller chercher dans le site pour découvrir de nouveaux ouvrages. Là encore, le but est de faire en sorte que le visiteur revienne régulièrement : le site est aussi un site d'information sur les nouvelles sorties.

Au niveau des technologies employés :

L'utilisation d'une technologie de génération de pages dynamiques documéntée est primordiale. Il convient donc de trouver ou d'acheter de la documentation sur PSP, ou alors de se tourner vers des technologies mieux documentées comme ASP (http://www.asp.net) ou PHP (http://www.php.net).

Séparer le contenu du site de son apparence visuelle est un point important lorsqu'il s'agit de remodeler l'interface de celui-ci. Il conviendrait donc d'utiliser les technologies standards adaptées comme CSS (http://www.w3.org/Style/CSS/) et XML (http://www.w3.org/XML/).

Utilisation d'un outil de versionnage distribué comme CVS (http://www.cvshome.org). Ceci permettra de revenir en arrièreen cas d'erreur et de mieux gérer la collaboration entre les différents développeurs. Il conviendra de mettre en place une politique claire en ce qui concerne l'accès à ce serveur.

Conclusion

Le schéma des améliorations permet de garder à l'esprit l'ensemble des points à modifier dans le cadre du futur projet. Les détails complémentaires proposés permettront de mettre en place ces améliorations dans de bonnes conditions, et constitueront une bonne base pour un nouveau cahier des charges et une nouvelle organisation interne plus efficace et plus coopérative.

Annexes

Rapport - Page de garde	1

Rapport - Première page	2

Rapport - Pages	3

Rapport - Contenu	4

Ergonomie	5

Installation	6

Fonctionnalités	7

Audit	12/12	BATSPETA-000

2004-01-05T20:12:37