Analyse

C’est quoi encore ce truc ?

NB: Si vous n’aimez pas beaucoup de théorie, vous pouvez passer ce chapitre pour le moment, mais je vous recommande vivement d’y revenir ultérieurement.

Cette partie doit normalement être placée au début du cours, elle traite de ce que vous devez savoir avant de vous plonger dans les arcanes de la création d’une base de données.
Mais comme ce cours a été bâti sur une approche pratique pas à pas, je voulais d’abord vous mettre dans le bain pour savoir que la création des BD n’est pas assez compliquée et pour garder chez vous tout le plaisir à suivre cette formation.
Avant de débuter la création de votre BD, et avant même d’allumer votre ordinateur ! Il vous faut au préalable passer par une phase d’analyse dans le but de concevoir un plan de votre BD sur papier.

Reste à vous dire que ce petit chapitre est loin d’être une référence en matière d’analyse, ce n’est qu’une petite initiation dépourvue des concepts techniques compliqués, elle est spécialement destinée aux novices !

Comment fait-on pour analyser notre projet de BD ?

1- Réfléchissez d’abord à l’objectif de la base de données

A quoi va-t-elle servir ? Quelles informations doivent être stockées dans la BD et comment les répartir dans différentes tables, quel seront les documents à restituer : rapports, statistique, lettres, etc.?

Dans le chapitre précédent, nous avons étudié la structure des tables, cette dernière ajoutée aux relations qui peuvent relier les différentes tables ensemble constitue le fondement de toute BD.
La construction d’une BD est similaire à la construction d’une maison ; une architecture mal pensée peut mettre en péril tout le projet de votre maison de rêve.
La conception d’une application de BD nécessite alors beaucoup de réflexion quant à l’objectif final escompté.

2- Collecter analyser les données à informatiser

Le processus de conception d’une application de base de données doit passer obligatoirement par une analyse rigoureuse des données à saisir et des états à éditer. Commencez par examiner chaque document sur papier utilisé auparavant manuellement et que votre future application doit être capable de produire une fois fonctionnelle.
Recensez toute les informations même celles qui peuvent vous paraitre banales. Si vous êtes un développeur externe, vous devez consulter le ou les personnes impliquées directement dans le système à informatiser.
Plusieurs rencontres avec ces derniers seront nécessaire, vous serez ainsi en mesure de maîtriser le type des informations à traiter, leur acheminement, la périodicité, etc. vous saurez aussi quelles sont les attentes des futurs utilisateurs.

Un exemple pour mieux vous situer

La phase d’analyse est capitale dans tout projet d’application de BD. Pour comprendre et savoir comment procéder, nous utiliserons un exemple très simple mais concret :
Imaginez un enseignant de Math qui désire informatiser le bulletin de note de ses élèves. La première chose à faire, est de fouiller dans ses anciens dossiers pour trouver des bulletins de notes.
Ensuite, il commence à recenser les informations qu’ils contiennent. Nous partirons du plus simple et nous considérons le document ci-dessous :

analyse 1

Sur ce papier, notre enseignant distingue les données suivantes :

  • Le titre du document
  • Date de l’évaluation
  • Sujet de l’évaluation
  • Code de l’élève
  • Nom et prénom de l’élève
  • La note

Dans un premier temps toutes les informations sont nécessaires. Après, on doit examiner chaque donnée à part pour ne laisser que celles qui vont nous servir à la création des tables. Puis on procède à la répartition des informations filtrées par thème.
Dans notre exemple, il parait à premier abord qu’on peut utiliser une seule table pour notre base de données !
Mais, pensez un peu à la personne qui va saisir ces données à l’aide d’une application mono-table ou un tel tableau sur Excel ou sur Word ! Une fois les copies de l’examen corrigées, notre enseignant procède à la saisie des notes ; il doit entrer tout d’abord la date de l’évaluation et son sujet, puis entrer la note de chaque élève avec le nom et le prénom de celui-ci, ainsi que son code qu’il doit chercher sur un autre papier : la liste des élèves fournie par la direction par exemple.
Vous imaginez cette corvée à la fin de chaque évaluation !
En stockant les informations des élèves une seule fois dans une table distincte baptisée ElèvesTb et en liant cette table à la table NotesMathTb, vous gagnez en temps et en efficacité. Cela constitue l’une des grandes faveurs que nous apportent les bases de données relationnelles.

Nul ne peut donc contredire la nécessité de répartir les données dans différentes tables qu’on peut lier par la suite à l’aide des relations logiques ce qui nous offre un confort de travail et nous économise des efforts et du temps précieux. Alors, divisez pour régner !
Revenons à notre exemple, et commençons par filtrer notre liste :

  • Le titre du document « notes des mathématiques » est une information fixe et reste inchangeable sur tous les états imprimés.  Laissons-la de côté (du moins pour le moment !).
  • Tous les éléments d’information qui restent seront retenus et seront répartis en entités distinctes. Chaque entité devient ensuite une table de la BD.

analyse 2

Les entités principales qu’on peut distinguer dans notre exemple seront donc : – les évaluations ; – Les élèves ; – les notes.

3- Définition et normalisation des tables

Définition des entités de données qui deviendront des tables

Nous disposons maintenant des entités principales que nous pouvons définir entant que tables. Occupons-nous d’abord des champs (données élémentaires) que va contenir chaque table.  L’intuition du départ nous donne déjà une conception minimale :

  • Les évaluations sont caractérisées par une date de l’évaluation et un sujet de l’évaluation.
  • Les élèves sont caractérisés par un Code de l’élève et le Nom et prénom de l’élève.
  • La note est une valeur numérique unique qui sera attribuée à un élève.

analyse 3

La première ébauche des tables étant réalisée, vous pouvez affiner davantage leurs structures. Par exemple, le champ Nom et Prénom peut être scindé en deux : un pour le Nom et l’autre pour le Prénom, ce qui permet de trier vos élèves selon leurs noms ou leurs prénoms ou selon les deux, et aussi d’effectuer des recherches plus facilement.

Identifier les enregistrements dans chaque table : la clé primaire

Chaque table contiendra un ensemble d’enregistrements. Et chacun de ces enregistrements doit être identifié d’une manière unique ; de façon à ne pas avoir 2 enregistrements identiques dans une table.
La technique que nous offre Access pour différencier les enregistrements et la définition de la clé primaire : Alors, à chacune de nos 3 tables, nous allons définir une clé primaire comme ça :

  • Pour la table EvaluationsTb: On peut ajouter un identifiant pour chaque évaluation: un champ appelé CodEvaluation de type numéro Auto et qu’on peut considérer comme clé primaire
  • Pour la table ElèvesTb: on va rien ajouter, le champs CodEleve peut bien servir comme clé primaire
  • Pour la table NotesTb: si nous formulons bien la mission de cette table, il nous sera facile de définir sa clé primaire:  « la table NotesTb est destinée à stocker la note de chaque élève pour chaque évaluation » .
    Vous l’avez deviné on doit ajouter 02 champs à cette table pour identifier chaque note : CodEvaluation et CodEleve.
    ces 2 derniers seront définis comme clé primaire de la table NotesTb. 

Et bien c’est ce qu’on appelle une forme normale dans le cadre de la normalisation des tables de BD. C’est juste pour vous donner une idée.

Je ne veux pas vous égarer dans la théorie d’analyse, puisque ce cours est destiné aux débutants, mais, vous trouvez sur internet pas mal de cours qui traitent de l’analyse des BD si vous sentez le besoin d’en apprendre plus.

Alors ! Que faisons maintenant ?
Lier les tables !

4- Comment peut-on lier ces 03 tables ?

Enfin pour que notre BD fonctionne correctement, il faut lier les données contenues dans ces tables d’une manière cohérente.
Mais avant de passer à la pratique, nous allons apprendre un peu sur les relations.

C’est ce qu’on verra dans le chapitre suivant sur les relations.

Sommaire du coursGénéralités Découverte Tables Analyse Relations Formulaires Requêtes Etats Macros Empaquetage

Montrer !
Cacher !