Vous êtes sur la page 1sur 20

ESTINATION FORMATION

Un aller simple vers le savoir-faire

INITIATION A LANALYSE ET A LA CONCEPTION DE BASE DE DONNEES

AVANT PROPOS Ce support de cours est un outil personnel, il ne constitue pas un guide de rfrence. C'est un outil pdagogique labor dans un souci de concision : il dcrit les actions essentielles connatre pour apprhender le sujet de la formation. Aprs ralisation d'un exercice : Notez votre dmarche, vous aurez ainsi une trace des remarques formules " chaud". Renforcez vos connaissances en demandant des prcisions au formateur.

Charte graphique :
Certaines images sont utilises comme repre de lecture, notamment :

Remarque importante

Contient des exemples

Microsoft est une marque dpose. DESTINATION FORMATION Tout droits rservs. Toute reproduction de ce support, mme partielle, du contenu par quelque procd que ce soit est interdite sans autorisation.

SOMMAIRE
ANALYSE ET CONCEPTION DE BASE DE DONNEES

I.

INTRODUCTION_________________________________ 1

A. LES LIMITES DU TABLEUR EXCEL ______________________________2 B. LA METHODE MERISE ____________________________________3 II. RECUEIL ET ORGANISATION DES INFORMATIONS ___ 4

A. CREER LE DICTIONNAIRE DE DONNEES__________________________5 B. PLACER LES INFORMATIONS DANS UNE MATRICE __________________6 III. LES SCHEMAS CONCEPTUELS _____________________ 9

A. LE MODELE CONCEPTUEL DE DONNEES ________________________10 B. LE MODELE LOGIQUE DE DONNEES ___________________________13 C. LES REQUETES _________________________________________14 IV. ANNEXE : EXERCICE DAPPLICATION. _____________ 15

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

I. Introduction

Partie 1 : Introduction

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

A. A. LES LIMITES DU TABLEUR EXCEL

Excel est un tableur, qui est capable de grer des bases de donnes simples. Le problme est que les limites dExcel sont vite atteintes en ce qui concerne la redondance de linformation.
La feuille de calcul ci-dessous reprsente une table de facture avec les clients.

Pour trois factures, les informations sur le client sont ressaisies trois fois !!!

Il serait plus logique davoir deux tableaux avec un lien entre les deux tables.

LIEN

Il reste savoir o mettre les champs, cest dire quel champ doit tre plac dans quelle table ? Pour ce faire, il existe une mthode, nomme MERISE (Mthode dEtude de Ralisation Informatique par Sous-Ensemble). Cette mthode permet de conceptualiser une base de donnes.

Partie 1 : Introduction

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

B. LA METHODE MERISE

Pour MERISE, il est classique de mettre en vidence trois niveaux de rflexion : *Le niveau conceptuel correspond la dfinition des finalits de l'entreprise en expliquant sa raison d'tre. Ce niveau traduit les objectifs et les contraintes qui psent sur l'entreprise. L'informatique doit les intgrer sans remise en cause. Ces finalits constituent gnralement le niveau le plus stable. On y trouvera par exemple les rgles de gestion du personnel, de tenue de la comptabilit ou de livraison des produits finis. *Le niveau organisationnel permet de dfinir l'organisation qu'il est souhaitable de mettre en place dans l'entreprise pour atteindre les objectifs viss. On parle alors de choix d'organisation, pour lesquels la marge de manuvre est plus importante. Ce niveau prcise les postes de travail, la chronologie des oprations, les choix d'automatisation, tout en intgrant les contraintes ventuelles. *Le niveau technique intgre les moyens techniques ncessaires au projet. Ils s'expriment en termes de matriels ou de logiciels et sont (par suite des progrs technologiques) les plus sujets changement. Si MERISE a la vocation de concevoir un systme d'information ais maintenir et bien intgr l'entreprise, il est aussi un gage de scurit et un atout prcieux pour un analyste, auquel il propose une organisation du travail. La sparation des donnes et des traitements, jointe la dfinition des niveaux permet d'aborder successivement les problmes et de se situer tout moment dans l'avancement des travaux. Le parcours des diffrents niveaux est alors le suivant : -1- Le dictionnaire des donnes. -2- La matrice des dpendances fonctionnelles. -3- Le Modle Conceptuel de Donnes (MCD). -4- Le Modle Logique de Donnes (MLD). -5- Le passage sur un logiciel de SGBDR (Systme de Gestion de Base de Donnes Relationnelles), par exemple Access.

Partie 1 : Introduction

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

II. Recueil et organisation des informations

Partie 2 : Recueil et organisation des informations

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

A. CREER LE DICTIONNAIRE DE DONNEES

Aprs un travail rigoureux de recueil de linformation sur le terrain auprs des utilisateurs du systme dinformations (il sagit du recueil de lexistant) et lintgration des nouvelles demandes, il faut regarder lensemble des donnes utiles sauvegarder. Cet ensemble forme le dictionnaire de donnes. Ce dictionnaire est prsent sous forme de tableaux : Champs retenus Type de donnes Exemple : la notation du groupe BTS 1 chez Promotrans Les donnes retenues peuvent tre : - le nom, le prnom, ladresse et le tlphone des tudiants - le libell de la matire - les notes de chaque contrle - les moyennes des tudiants par matire - la moyenne gnrale - la date des contrles Commentaires

Ce sont des attributs ou des rubriques

Tous ces attributs vont tre placs dans un modle de donnes. Il existe des champs de type calcul, tels les moyennes, qui ne figureront pas dans le modle de donnes. Les types de donnes sont : *Alphanumrique *Numrique *Date/heure *Boolen (oui/non) Une fois le dictionnaire de donnes mis en place, il faut crer un dictionnaire simplifi, duquel les champs calculs sont ts. Il faut aussi enlever tous les champs redondants (un code article et une rfrence article par exemple, qui qualifient la mme information). Enfin, il peut exister des homonymes. Or, chaque enregistrement doit pouvoir tre identifier comme unique de faon certaine. Pour ce faire, il faut crer un identifiant. Dans lexemple des tudiants, on ajoute donc un numro dtudiant et un code matire. Un identifiant permet de retrouver un et un seul enregistrement. Lidentifiant possde gnralement une forme courte. Il peut tre cr artificiellement dans le cas o il nexisterait pas dans le dictionnaire de donnes. Lexemple type didentifiant reste le numro de scurit sociale. Le dictionnaire de donnes simplifi regroupe donc tous les champs non redondants conserver dans le systme dinformations. Chaque champ possde un type de donnes. Ce tableau permet de crer ensuite la matrice des dpendances fonctionnelles. Pour sentraner, crer le dictionnaire de donnes de lexercice plac en annexe.

Partie 2 : Recueil et organisation des informations

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

B. PLACER LES INFORMATIONS DANS UNE MATRICE

A partir de maintenant, tous les chapitres seront illustrs par lexercice plac en annexe. Avant de mettre en place la matrice, il faut dterminer les rgles de gestion. Ces rgles sont identifies suite aux interviews menes auprs des utilisateurs. Elles sont en gnral donnes dans les noncs de vos exercices. Dans le cas contraire, il faut les isoler. Dans notre exercice, les rgles de gestion sont les suivantes : -A- La socit ne veut avoir affaire qu un et un seul contact . -B- Chaque catgorie rfrence logiquement plusieurs produits . -C- Chaque commande peut contenir un ou plusieurs produits . -D- Le prix de vente peut diffrer du prix unitaire . La matrice des dpendances fonctionnelles est un simple tableau. La premire colonne reprend tous les attributs du dictionnaire simplifi. Une deuxime colonne numrote chaque champ de un linfini.
Num Client Raison sociale Client Nom contact Prnom contact Fonction contact Adresse Client Code postal Client Ville Client Fax Client Rfrence produit Nom produit Prix unitaire du produit Prix de vente du produit Code catgorie Nom catgorie Description catgorie Num Commande Date commande 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Dans la liste des attributs, les identifiants sont souligns. En face de chaque identifiant, il faut placer une toile dans la colonne correspondant lidentifiant. A partir de chaque identifiant, il faut alors se poser la question si je prends un identifiant, est ce quun attribut correspond une et une seule fois cet identifiant ? . Ainsi, si je prends le numro de client, est-ce que jai une et une seule raison sociale qui correspond ?

Partie 2 : Recueil et organisation des informations

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

Si la rponse est oui , on place un 1 dans la colonne portant le numro de lidentifiant. Cela nous donne la matrice suivante :
1 * 1 1 1 1 1 1 1 1 10 1 14 17 11+17 10

Num Client Raison sociale Client Nom contact Prnom contact Fonction contact Adresse Client Code postal Client Ville Client Fax Client Rfrence produit Nom produit Prix unitaire du produit Prix de vente du produit Code catgorie Nom catgorie Description catgorie Num Commande Date commande

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

* 1 1 1 * 1 1 * 1

Lors de cette recherche des attributs correspondants un identifiant, il faut faire attention de toujours repartir de la ligne 1. Lattention doit aussi porter sur les rgles de gestion. Ici, ces rgles donnent un seul contact par client. Sil y en avait eu plusieurs, il aurait t impossible de mettre des 1 dans la colonne 1 face aux nom, prnom et fonction du contact. Il arrive que certains attributs ne rpondent pas la question pose. Ainsi, si je prends le prix de vente du produit, il nest pas le mme pour un mme produit. Cet attribut possde donc plus dun identifiant. Ici, lidentifiant du prix de vente est la fois la rfrence produit et le numro de commande . En effet, le prix de vente de larticle 1 peut tre de 14 francs dans la commande 12, mais de 16 francs dans la commande 5. Il faut bien avoir le numro de la commande pour retrouver le prix de vente. La matrice des dpendances fonctionnelles de cet exercice est donc :
Num Client Raison sociale Client Nom contact Prnom contact Fonction contact Adresse Client Code postal Client Ville Client Fax Client Rfrence produit Nom produit Prix unitaire du produit Prix de vente du produit Code catgorie Nom catgorie Description catgorie Num Commande Date commande 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 * 1 1 1 1 1 1 1 1 10 14 17 10+17

* 1 1 1 * 1 1 * 1

Partie 2 : Recueil et organisation des informations

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

Il existe trois relations. Les relations 1 et 2 sont simples. La troisime est complexe, puisqu'elle forme une colonne part entire de la matrice. Elles lient respectivement: -1- La table Client la table Commande -2- La table Produit la table Catgorie -3- La table Produit la table Commande Une fois que la matrice est dtermine avec tous les attributs affects des identifiants, la partie la plus dure est ralise. Le passage au MCD, puis au MLD reste simplement une question de formalisme. La question des relations se posera dans cette partie.

Partie 2 : Recueil et organisation des informations

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

III. Les schmas conceptuels

Partie 3 : Les schmas conceptuels

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

A. LE MODELE CONCEPTUEL DE DONNEES

Pour crer ce modle, il faut transformer chaque colonne en table. Une table comporte un nom, un ou plusieurs identifiant(s) et des attributs. Elle se prsente sous cette forme : CATEGORIE
Nom de la table

Code catgorie
Nom catgorie Description catgorie

Identifiant Attributs

Lidentifiant est maintenant nomm cl primaire . Une cl primaire est constitue dun ou plusieurs attributs. Elle permet de reprer un et un seul enregistrement. La cl est toujours souligne. Pour dterminer les associations entre les diffrentes tables, il suffit de prendre les lignes qui possdent la fois * et 1. Une association est dite binaire si elle relie deux tables, naire si elle lie plus de deux tables. En rgle gnrale, il existe peu de cas o une association concerne plus de quatre tables la fois. Lorsque la ligne possde la fois 1 et *, il sagit dune CIF (Contrainte dIntgrit Fonctionnelle). La CIF est une relation simple, laquelle on donne un nom (en gnral, un verbe). Dans notre cas, il existe deux CIF entre : - La table CATEGORIE et la table PRODUIT - La table COMMANDE et la table CLIENT
CLIENT PRODUIT Num Client Raison sociale Nom contact Prnom contact Fonction contact Adresse Code postal Ville Fax

Rfrence produit Nom produit Prix unitaire

Appartenir
CIF

CATEGORIE Passer
CIF

Code catgorie Nom catgorie Description COMMANDE NumCommande DateCommande

Partie 3 : Les schmas conceptuels

10

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

Lorsque la matrice des dpendances fonctionnelles possde des colonnes avec deux numros, la relation est plus complexe, car elle contient des attributs.
10+17 Num Client Raison sociale Client Nom contact Prnom contact Fonction contact Adresse client Code postal client Ville client Fax client Rfrence produit Nom produit Prix unitaire du produit Prix de vente du produit Code catgorie Nom catgorie Description catgorie Num Commande Date commande Cette colonne donne la relation reprsente droite PRODUIT

Rfrence produit Nom produit Prix unitaire

Commander * Prix de vente

1 COMMANDE

Num Commande Date commande

N.B : la relation commander possde une cl primaire constitue de deux champs : la rfrence produit et le num commande. On peut faire apparatre ces champs dans la relation, ce qui donnerait ceci :

Commander Rfrence produit Num Commande

Quelles sont les possibilits des associations ? La nature des associations est dtermine par les cardinalits. Une cardinalit dtermine le nombre minimum et maximum doccurrences quil peut exister. Elle est dtermine par la logique ou par les rgles de gestion. Voici tout les types de cardinalits possibles : 0,1 1,1 0,n 1,n Exemple : Chaque catgorie rfrence plusieurs produits .

CATEGORIE 1,n Appartenir


CIF

PRODUIT 1,1

Code catgorie Nom catgorie Description

Rfrence produit Nom produit Prix unitaire

Partie 3 : Les schmas conceptuels

11

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

La cardinalit 1,n signifie quune catgorie peut regrouper plusieurs produits, alors que la cardinalit 1,1 veut dire quun produit appartient une seule catgorie.

Les CIF ont toujours des cardinalits 1,1 et 1,n (on dit un plusieurs ), tandis que les associations compliques ont des cardinalits 1,n 1,n ( plusieurs plusieurs ). Le zro existe lorsque des attributs de la table sont stocks mais pas forcment utiliss (par exemple, on aurait mis 0,1 si des produits existaient dans la table sans jamais avoir t catgoriss). Le MCD complet de notre exercice donne ceci :

CLIENT
Num Client

PRODUIT

Raison sociale Nom contact Prnom contact Fonction contact Adresse Code postal Ville Fax

Rfrence produit Nom produit Prix unitaire

1,1

Appartenir

0,n 1,n Commander CATEGORIE

1,n Passer

Prix de vente 1,n COMMANDE 1,1 Num Commande Date commande Code catgorie Nom catgorie Description

Partie 3 : Les schmas conceptuels

12

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

B. LE MODELE LOGIQUE DE DONNEES

Le modle logique constitue la dernire tape avant le passage sur Access. Il permet de dterminer les cls trangres et les requtes. Il consiste donc en deux tapes : supprimer les relations complexes pour les transformer en table part entire d'une part et d'autre part trouver les cls trangres. La cl trangre est forme dun ou plusieurs attributs permettant de relier la cl primaire dune table. Cette cl est toujours place du ct 1,1 de lassociation. Elle est prcde du signe #. Dans notre exercice, le modle logique est le suivant : CLIENT (Num Client, Raison sociale, Nom contact, Prnom contact, Fonction contact, Adresse, Code postal, Ville, Fax) PRODUIT (Rfrence produit, Nom produit, Prix unitaire, #Code catgorie) CATEGORIE (Code catgorie, Nom catgorie, Description) COMMANDE (Num Commande, Date commande, #Num Client) COMMANDER (Num Commande, Rfrence produit, Prix de vente) Il est galement possible de le reprsenter sous une forme proche du MCD :
CLIENT
Num Client

PRODUIT

Raison sociale Nom contact Prnom contact Fonction contact Adresse Code postal Ville Fax 1,1

Rfrence produit Nom produit Prix unitaire #Code catgorie

1,1

0,n

1,n CATEGORIE

1,n

COMMANDER Code catgorie Nom catgorie Description

1,1 COMMANDE 1,n

1,1

Num Commande Rfrence produit Prix de vente

Num Commande Date commande #Num Client

Partie 3 : Les schmas conceptuels

13

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

C. LES REQUETES

Avant de passer la partie logicielle, il reste dterminer les requtes dont lutilisateur besoin pour extraire des informations des tables. Ces requtes sont dfinies laide des interviews et du recueil des documents manipuls au sein du systme dinformations de lentreprise. Il existe trois types de requtes : Les requtes slection, qui permettent de choisir des enregistrements selon certains critres (exemple des filtres Excel). Les requtes jointure, qui relient deux tables, laissant ainsi la possibilit dextraire des informations de plusieurs tables la fois. Les requtes projection, qui rcuprent certains champs sans passer de critres.

Pour utiliser les requtes, il existe le langage SQL (Structured Query Language). Cependant, pour simplifier, nous utiliserons un langage papier . Les exemples suivants donnent un aperu de l'criture des requtes : ____________________ R1 = PROJECTION CLIENT (Num Client, Raison sociale)
Cette requte ressort tous les clients avec leur numro.

____________________ R2 = SELECTION CLIENT (Raison sociale = Promotrans ) R3 = PROJECTION R2 (Nom contact, Prnom contact, Fonction contact, Adresse, Code postal, Ville, Fax)
Cette requte nous donne toutes les informations concernant Promotrans. On peut inverser R2 et R3.

____________________ R4 = JOINTURE CLIENT, COMMANDE (Num Client.Client = Num Client.Commande) R5 = JOINTURE COMMANDE, COMMANDER (NumCommande.Commande = NumCommande.Commander) R6 = JOINTURE COMMANDER, PRODUIT (RefProduit.Produit = RefProduit.Commander) R8 = SELECTION CLIENT (Raison sociale = Promotrans ) R9 = PROJECTION R8 (Raison sociale, Nom produit, Prix unitaire)
Cette requte permet de savoir tout ce que Promotrans nous a command comme produit.

____________________

Partie 3 : Les schmas conceptuels

14

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

IV. ANNEXE : exercice dapplication.

Partie 4 : Annexe

15

ESTINATION FORMATION Un aller simple vers le savoir-faire

ACSI

Votre socit veut crer une petite base de donnes de gestion des commandes pour contrler ses stocks et ainsi pouvoir alimenter ses clients de manire ininterrompue, et ce qu'elle que soit la demande.

Chaque client est une socit avec une raison sociale et un numro de client interne votre entreprise. Pour des raisons pratiques, vous possdez le nom dun contact et sa fonction au sein de lentreprise. Votre socit, pour des raisons dorganisation, ne veut avoir faire qu un et un seul contact. De plus, vous connaissez videmment le numro de tlphone, le fax et ladresse de votre client.

Vous possdez une gamme de produits en catalogue, parmi lesquels les clients peuvent commander. Un produit possde une rfrence, un nom et un prix unitaire. Il entre dans une catgorie code. Chaque catgorie a en plus dun code, un nom et une description. Elle rfrence logiquement plusieurs produits.

Vous recevez ainsi des commandes dun client, chacune dentre elles pouvant contenir un ou plusieurs produits. Cette commande est numrote et date. Le ou les produits qui la composent sont vendus un prix de vente qui peut diffrer du prix unitaire, puisque votre socit dcide de sa marge selon ses clients.

A partir de ce texte, construire un dictionnaire de donnes, une table des dpendances fonctionnelles, un MCD, un MLD, puis construire les tables et les relations sous Access 97.

Partie 4 : Annexe

16

VOS REMARQUES

Aprs utilisation de votre support, vous avez peut tre des remarques ou des suggestions formuler. Nous vous remercions de bien vouloir nous en faire part en nous adressant ce coupon rponse, par courrier, ladresse suivante :

2, rue des Meuilles 38370 LES ROCHES DE CONDRIEU


rd.formation@wanadoo.fr Vos propositions et critiques permettront d'amliorer ce support de cours. Merci d'avance.

DESTINATION FORMATION

VOTRE SOCIETE :................................................................................ Votre nom :................................... Prnom : ....................................... Intitul Formation :.............................................................................. Date de la formation : .......................................................................... Vos remarques et suggestions :

Vous aimerez peut-être aussi