Troisième partie
Application au contexte du stage
Chapitre 9
Les choix managériaux et
technologiques
9.1 La gestion de projet
Ce stage était un projet informatique "comme un autre".
On peut donc supposer que l'utilisation d'une méthodologie de gestion de
projet informatique aurait été logique. Cependant, l'utilisation
d'une méthode "stricte" était en fait peu adaptée a ce cas
pour différents motifs:
- Le retour d'expérience sur ce genre de projet est
assez rare (aussi bien au niveau personnel que dans les documentations
disponibles), il n'y a donc pas d'indications sur le fonctionnement d'anciens
projets du même type.
- Dans le cadre de projets menés par une seule
personne (comme c'était le cas ici), la mise en place de
mécanismes complets de management de projet peut s'avérer
complexe et nécessiter plus de temps quelle n'en fait gagner.
Nous avons donc adopté une gestion de projet minimale,
essentiellement basée sur les comptes-rendus hebdomadaires lors des
réunions de service.
- Enfin, comme l'approche employée est de type
empirique, son évolution est par essence difcile a prévoir (car
on traite les problèmes au fur et a mesure de leur découverte).
Une prévision trop précise et un planning décidé
trop tot seraient remis en cause a chaque nouveau problème.
9.2 La démarche suivie
Ce projet a été découpé en quatres
grandes "étapes" qui seront développées dans les chapitres
suivants:
- Recherche et évaluation des solutions existantes (voir
Section 10.2, page 33);
- Choix d'une solution (voir Section 9.3, page 29);
- Mise en cuvre de la solution (voir Section 10.3, page 33);
- Evaluation du travail a venir (voir Section 10.4, page 34).
Les choix managériaux et technologiques
|
|
9.3 Les technologies utilisées
9.3.1 PostgreSQL
Présentation
PostgreSQL1 est un Système de Gestion de Base
de Données Relationnelle (SGBDR) open source2.
Il a été initialement développé
à l'Université de Berkeley sous le nom de Ingres (1977- 1985). Il
a été amélioré régulièrement au cours
de ses premières années par les sociétés Rational
Technologies et Ingres Corp.. Ces sociétés ont été
rachetées par la société nommée maintenant
Informix. Le projet a ensuite continué indépendamment à
Berkeley sous le nom de Postgres (1986-1994). Après l'apparition des
premières normes du langage SQL, le langage de requête de Postgres
a été remplacé par le langage SQL. En 1995, le projet a
ensuite été repris par des développeurs
indépendants de l'Université de Berkeley et renommé
Postgres95. Là, le projet s'est étoffé et
transformé à partir de 1997 en PostgreSQL lorsque l'ensemble des
fonctionnalités SQL a été intégré au
serveur.
Avantages
PostgreSQL est un logiciel libre, il possède donc tous les
avantages qui en découlent, entre autre:
- La gratuité;
- Le nombre de déploiements ilimité;
- La communauté de développement active et
réactive;
- Les possibiité d'extension à volonté
(le code source étant disponible gratuitement, il est possible de
modifier ou d'étendre les fonctionnalités de PostgreSQL de
façon autonome).
- . . .
PostgreSQL respecte la quasi totalité de la norme SQL
et propose la plupart des fonctionnalités présentes dans les
autres "grands" SGBD (gestion des transactions, procédures
stockées, gestion des droits d'accès aux données, . .
.).
Dans le monde du logiciel libre, (mis à part SAPDB qui
est actuellement en pleine mutation due à son rapprochement de MySQL)
PostgreSQL est certainement actuellement le seul SGBD permettant de
gérer des bases de données à gros volume et avec un grand
nombre de connexions notamment grâce à son haut degré de
scalabilité.
Les concurrents libres de PostgreSQL ne sont pas aussi
aboutis, tant pour la tenue en charge que pour le nombre de
fonctionnalités disponibles, c'est pourquoi le choix en terme de bases
de données assez limité.
Inconvénients
PosgreSQL n'est pas disponible nativement pour Windows, il
utilise une couche d'émulation (CygWin). Seules les prochaines versions
à partir de la numéro 8 (à venir) seront
développées pour Windows.
1Version utilisée : 7.3.4-RH
2Sous licence BSD (voir Annexe E, page 52)
Les choix managériaux et technologiques
|
|
|
PostgreSQL, s'il est connu pour sa robustesse, a
également la réputation d'être relativement lent
(même si chaque nouvelle version amène des progrès
notables). Cela est dû au grand nombre de mécanismes de
préservation et de protection des données qui sont activés
par défaut mais qui peuvent pour la plupart être
désactivés après une étude détaillée
des besoins.
9.3.2 RedHat Database Présentation
RedHat Database3 est une version de PostgreSQL
7.3.4. optimisée pour fonctionner avec un serveur Red Hat
Linux4 et qui bénéficie du back-portage des
améliorations apparues avec la version 7.4.
Avantages
Rhdb5 est librement téléchargeable sur
le serveur ftp de RedHat. Il est également possible d'acquérir un
contrat de service (3267€) chez RedHat contenant:
- Red Hat Database (intégré, testé et
optimisé Red Hat Linux)
- L'installeur Red Hat
- La documentation complète de RhDb et des outils
graphiques
- Le support par le web et téléphonique
- Une inscription mensuelle fournissant des mises à jour
régulières
La CCI possède actuellement un serveur sous RedHat et
un contrat de type "Red Hat Enterprise Linux ES". En cas de problèmes
non spécifiques à la base de données, il est donc possible
de profiter du contrat de support souscrit.
Inconvénients
Red Hat n'a pas une politique très claire en ce qui
concerne le support de ce produit. Certes, une équipe Red Hat travaille
en permanence sur ce projet et une offre de services est proposée mais
le site de vente de RedHat reste peu clair sur ses avantages : le contenu de
l'offre n'est pas très détaillé et la version actuellement
proposée est la 2.16 alors la version 3 existe depuis
plusieurs mois.
9.3.3 Perl Présentation
Crée en 1986 par Larry Wall, Perl (Practical
Extraction and Report Language) est un langage de programmation
interprété (avec une phase interne de pré-compilation). Sa
syntaxe dérive des scripts shell, et d'autres langages comme C, awk,
sed.
3Aussi appelé : PostgreSQL - Red Hat Edition
ou RhDb 4version 9 ou Fedora Core 1
5Version utilisée : 3.0 (sortie le 16 janvier
2004) 6optimisé Red Hat Linux 7.1 et PostgreSQL 7.1.2
Les choix managériaux et technologiques
|
|
|
Avantages
Pour tous ceux qui connaissent ces langages, notamment pour
ceux qui viennent du monde Unix, Perl est relativement facile à
apprendre.
Perl a été conçu selon un concept de
langage naturel : on écrit du Perl comme on pense. Cette
caractéristique de Perl se retrouve dans son slogan "there is more than
one way to do it".
La puissance de Perl pour la manipulation de chaînes de
caractères et de fichiers lui donne des atouts considérables pour
écrire des applications nécessitant des expressions
régulières, par exemple le traitement de texte avec la
création de pages à la volée. L'allocation de
mémoire est prise en charge par l'interpréteur, il n'y a donc pas
de gestion de mémoire, pas de limite de buffer.
Perl existe depuis plus de 15 ans, beaucoup de
bibliothèques et de modules d'extensions sont donc déjà
disponibles.
L'application première de Perl est l'administration
Unix (manipulation de textes, de fichiers et de processus), une personne ayant
ce type de compétences aura donc certainement des connaissances du
langage Perl et pourra ainsi reprendre, maintenir et modifier le code source si
cela est nécessaire.
Inconvénients
Perl possède certains inconvénients notamment
des soucis de sécurité intrinsèques à son statut de
langage interprété. Toutefois, il existe un mode "secure" qui
vérifie pour chaque variable si elle est sécurisée ou non.
Comme ce mode ralentit l'application, il est réservé au
débuggage.
Perl n'est pas efficace pour le calcul scientifique.
C'est un langage très permissif qui laisse les
programmeurs libres de coder selon leurs méthodes. Cependant, la
diversité des méthodes de codage qui est un gros avantage pour la
simplicité d'apprentissage du Perl est aussi un des principaux
inconvénients du langage : il est souvent difficile de reprendre le code
d'un autre développeur, surtout s'il n'est pas correctement
documenté.
|