article rédigé le 21 novembre 2005
Maintenant qu’OpenOffice.org 2.0 possède un module de base de données appelé BASE (équivalent à ACCESS de Microsoft), il devient intéressant de mettre quelques applications en oeuvre...
1. AVANT PROPOS
Souvent la plupart des utilisateurs n’ont pas bien conscience de la différence entre des tables de données dans un tableur et des tables de données... dans une base de données. Si dans la première solution, la rigueur n’est pas tolérée, cela devient une obligation dans le deuxième au risque sinon de posséder une base de données inexploitable.
Car si tout le monde peut de façon intuitive s’amuser avec les formules des tableurs, il n’en va pas de même avec la création de base de données avec le module BASE d’OOo.org B-).
2. L’ETAPE PREALABLE
Avant de lancer le module BASE, plusieurs étapes sont à franchir. Pour être pratique, nous allons partir des relevés météorologiques établis tous les jours par des élèves d’une ou de plusieurs écoles d’un secteur géographique.
nous aurions pu prendre d’autres exemples, comme l’informatisation d’une BCD, la classification animale, la gestion du gymnase, etc.
- Dans quel but ? : permettre à tous les utilisateurs de consulter la base de données, pour établir un travail d’interprêtation et d’analyse des relevés météorologique.
- Modalités d’accès aux données : dans un premier temps on se contentera d’échanges de base entre les école
3. LA METHODE MERISE
Pour mettre au point la base de données, on peut recourir à diverses méthodes. Nous utiliserons ici, une méthode classique dite "Merise" adaptée aux bases de données relationnelles. Bien que commençant à dater (la méthode UML ayant plutôt tendance à prendre le relais), elle est tout à fait adaptable à nos besoins à l’école primaire.
La méthode Merise, comprend 4 niveaux avec chacun un modèle référent :
| niveau | modèle | questionnement | rôle |
|---|---|---|---|
| conceptuel | MCD (Modèle Conceptuel des Données) | Quoi ? Pour quoi faire ? | Quelles données et quels liens entre celles-ci ? |
| Logique | MLD (Modèle Logique des Données) | Qui ? où ? Quand ? Comment ? | Comment organiser le stockage des données ? |
| Physique | MPD (Modèle Physique des Données) | Avec quels moyens | Comment stocker les données |
Seul le MPD est lié au choix du logiciel, les MLD et MCD sont indépendants du logiciel utilisé pour traiter les bases de données
Sans rentrer dans les détails de la méthode, nous avons besoin de :
- Définir les entités
- Définir les attributs des entités
- Etablir le dictionnaire des données
- Organiser les données
- par MCD (Modèle Conceptuel des Données)
- par MLD (Modèle Logique des données)
Tout ceci peut se faire avec un crayon et du papier. Alternativement, nous vous proposons un petit logiciel libre et gratuit AnalyseSI qui fait à peu près tout ça au travers d’une interface graphique :
téléchargez le logiciel et installez-le (ici il s’agit de la version Windows ; pour la version autres OS : télécharger ceci
Sous linux, l’installation se fait en décompressant le fichier dans un répertoire du /home (par ex.) ; pour lancer le logiciel se mettre dans le répertoire créé et tapez la commande java -jar analysesi-0.x.x.jar (remplacez les "x" par le numéro de la version en cours)
Sous Windows, l’installation se fait en exécutant le fichier téléchargé et en suivant les indications au fur et à mesure.
remarque : AnalyseSI fonctionne que si Java est installé sur votre ordinateur.

- page d’accueil
4. DEFINIR LES ENTITES
Dans notre exemple, les entités qui nous viennent à l’esprit dans un premier temps, sont les suivantes :
- relevé météorologique
- école
- classe
- enseignant
- élève
Mais d’autres entités peuvent venir s’ajouter au cours de la réflexion :-)
5. DEFINIR LES ATTRIBUTS DES ENTITES
Chaque entité possède des "attributs", ainsi par exemple dans notre cas :
| entité | attributs |
|---|---|
| Ecole | identifiant RNE, nom, adresse, ville, code postal, téléphone, courrier électronique... |
| Classe | identifiant classe, dénomination... |
| enseignant | identifiant enseignant, nom, prénom... |
| élève | indentifiant élève, nom, prénom... |
| relevé météo | n°, date, température maxi, température mini, humidité, pression barométrique, pluviométrie, nivométrie,... |
6. ETABLIR LE DICTIONNAIRE DES DONNEES
Chaque attribut possède des caractéristiques définissant le type de données contenues. Par exemple, pour l’entité relevé météo :
| Atribut | type de données | exemple |
|---|---|---|
| date du relevé | date JJ/MM/AAA | 01/09/2004 |
| température maxi (en degrés Celsius) | nombre entier | 25 |
| nivométrie (en cm) | nombre entier | 15 |
| sens du vent | texte variable | Nord-Ouest |
| etc. | ... | ... |
7. PASSER AU MCD (MODELE CONCEPTUEL DES DONNEES)
Il est temps d’utiliser AnalyseSI ;-). La progression que nous allons vous proposer est celle qui nous paraît la plus évidente pour un novice des bases de données (les puristes nous excuseront B-)).
La première chose à faire est de compléter le dictionnaire des données à partir du travail effectué dans le paragraphe précédent.

- dictionnaire des données
Comme vous le constatez, les types de données sont prédéfinies, vous ne pouvez pas en inventer... mais cela vous laisse quand même le champ large !

- une entité
Passons maintenant à la fenêtre MCD. Tout se passe, ici, en mode graphique. Il suffit de créer les boîtes "entités", d’y ajouter les "attributs".

- création des entités
Le plus difficile reste à faire : créer les associations entre les entités...

- mise en place des entités
Remarque : les attributs soulignés dans chacune des entités, ont le statut de clé primaire , elles sont les identifiants uniques de l’entité
Les associations entre les entités sont généralement caractérisées par un "verbe"., et un type de lien
- un élève est inscrit dans une et une seule école ( ce lien est noté 1,1 )
- une école comprend un ou plusieurs élèves ( ce lien est noté 1,n )
- un relevé méteo est effectué par un et un seul élève (à la fois) ( ce lien est noté 1,1 )
- un élève enregistre 0 ou plusieurs relevés ( ce lien est noté 0,n )
- etc.

- ajout des associations
Les associations sont reliées de part et d’autre par ces liens qui peuvent être généralement de type :
| relations | 0,1 | 1,1 | 0,n | 1,n |
|---|

- type de liens
Une fois que vous pensez être sûr de vos associations et liens, il ne vous reste plus qu’à les mettre dans le schéma, puis à les relier aux entités par le type.
A ce stade, il est bon de cliquer sur la vérification, pour voir s’il n’y aurait pas quelques incompatibilités...

- MCD les relations...
8. PASSER du MCD AU MLD (MODELE LOGIQUE DES DONNEES)
Le MLD est la dernière étape avant de passer au module BASE d’OOo.org 2.0. Cette phase établit la structure de la base de données en transformant les entités en table de données en intégrant les associations que vous avez définies et en gérant les clés primaires. Vous obtenez une structure très proche de ce que vous demandera le module BASE d’OOo.org 2.0
Vous disposez maintenant d’assez d’informations, et vous avez organisé vos données... bien ;-) !
Dans AnalyseSI, un simple clic sur MLD, transforme votre MCD... en MLD

- MLD
9. PASSER DU MLD AU MODULE BASE D’OOO.ORG 2.0
Voilà, votre base de données est structurée et organisée dans les règles de l’art :-D.
... dans le prochain épisode ;-) parution le 17 décembre 2006 , nous vous expliquerons comment après ce passage obligé par la méthode Merise, on intègre les tables ainsi créées dans OpenOffice 2.0...
mise à jour du 17 décembre 2005
fichier d’aide pour AnalyseSI à dézipper et qui fonctionne comme un fichier d’aide Windows, sur le site Christian Muir , professeur en Economie et Gestion à Paris. Cette aide est surtout orientée pour la création d’une base vers Access... mais ça fera largement l’affaire pour OpenOffice 2.0 Base ! surtout pour le descriptif des types de données.



