P. 1
cours_BDD

cours_BDD

|Views: 1,086|Likes:
Publié parthomas_ro

More info:

Published by: thomas_ro on Mar 24, 2009
Droits d'auteur :Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/10/2014

pdf

text

original

GEA S3 module 531

Gestion des Systèmes d’information : données et traitements
applications sur Microsoft ACCESS Olivier Marcant
Introduction : la gestion des systèmes d’information............................................................3 Définition du système d’information :....................................................................................3 Représentation de l’information : les modèles (mettre en forme)..........................................3 Multiplicité des représentations :............................................................................................4 Unicité de l’information..........................................................................................................5 Traitement de l’information :..................................................................................................5 Chapitre 1 : Les données..........................................................................................................7 1 L' exemple ..............................................................................................................................7 2 Le dictionnaire des données..................................................................................................7 1 -La première étape consiste à recenser toutes les données..................................................7 2 -La seconde étape consiste à conserver toutes les données élémentaires plus les données calculées datées.......................................................................................................................8 3 la matrice des dépendances fonctionnelles..........................................................................9 1 Création de la matrice des dépendances fonctionnelles.......................................................9 2 -Les dépendances fonctionnelles.........................................................................................9 3 -Simplification de la matrice des dépendances fonctionnelles..........................................10 4 -Élimination des dépendances fonctionnelles transitives...................................................11 4 La recherche des dépendances fonctionnelles composées................................................12 5 Le modèle de données..........................................................................................................12 1 -Les entités.........................................................................................................................13 2 -Les associations................................................................................................................13 3 -Les contraintes d'intégrité fonctionnelle (CIF).................................................................13 4 -Les cardinalités.................................................................................................................15 6 Le modèle relationnel..........................................................................................................17 7 La contrainte d'intégrité multiple: la CIM........................................................................18 8 La pseudo-entité...................................................................................................................19 9 La réflexivité.........................................................................................................................20 10 La spécialisation/généralisation........................................................................................22 Les contraintes sur les entités spécialisées............................................................................24 11 L'entité dépendante...........................................................................................................26 12 Les contraintes sur les associations..................................................................................27 Chapitre 2 : Traitements et autorisations ............................................................................32 1 Le modèle de contexte..........................................................................................................32 1 –Définition.........................................................................................................................32 2 -Représentation du modèle de contexte.............................................................................32

3 -Exemple............................................................................................................................33 2 Le modèle de flux.................................................................................................................33 1 Définition...........................................................................................................................33 2 Exemple.............................................................................................................................34 3 Décomposition des activités...............................................................................................35 4 Exemple (suite)..................................................................................................................35 5 Intérêts du modèle de flux..................................................................................................36 3 Le modèle organisationnel de traitements analytiques....................................................36 1 Définition...........................................................................................................................36 2 -Représentation du MOTA.................................................................................................37 3 Les concepts.......................................................................................................................37 4 -Application.......................................................................................................................40 5 Liens entre le modèle de flux et le MOTA........................................................................44 6 Liens entre le modèle de données et le MOTA..................................................................45 4 Les vues d'un modèle de données.......................................................................................46 1 Définition d'une vue...........................................................................................................46 2 Autorisation sur les objets..................................................................................................46 3 Exemple.............................................................................................................................47 4 Les groupes de données ....................................................................................................49 5 Les stratégies de répartition de données............................................................................50 1-Introduction........................................................................................................................50 2. les différentes stratégies de répartition de données...........................................................50 3 Les différents types de réplication de données..................................................................51 4 Maintenance d'une base de données répliquée...................................................................54 5 Distribution ou réplication.................................................................................................54 6 Les données à répliquer......................................................................................................55 7 Localisation des tables de référence...................................................................................55 8 Conséquences de la réplication de données sur la création des clés primaires..................55 9 -Méthode pour répartir les données...................................................................................56

Introduction : la gestion des systèmes d’information
Définition du système d’information :
"Un système d’information est constitué de l’ensemble des moyens, humains et techniques, en relation, qu’une organisation met en œuvre pour gérer son information." ou encore, "un ensemble organisé de ressources permettant d'acquérir, traiter, stocker, communiquer, etc., des informations" (1) L’information sert à décider : - décision opérationnelle, souvent automatisée (relance d’un client) - décision stratégique (choix de lancement de produit) L’information doit être utile (sinon c’est du bruit)

Représentation de l’information : les modèles (mettre en forme)
L’information = entité + propriétés + valeurs Propriétés : rubriques ou champs Entité = article = ensemble de rubriques (=propriétés) Entité : Client Nom Prénom Adresse Solde Enumération des propriétés

Un fichier logique est un ensemble homogène d’articles de même nature code 100 101 102 Nom Adresse Banque Dupond Rue Pi BNP Olive Durant Rue A Av… CA BNP Débit 1000 3000 5000 Crédit 800 3000 2000 Solde 200 0 3000 article

Une base de données est un ensemble de fichiers logiques (entités) reliés entre eux par des associations. Le modèle de données (cf le chapitre 1-5) est un modèle « entitésassociations » (ex du schéma ci-dessous) :

1

Robert Reix, "Systèmes d'information et management des organisations" (Librairie Vuibert 1995)

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p3

Client
N° client Nom client Adresse client CP client Ville client 1,n Correspond Ligne facture quantité 1,1 1,n

Produit

Référence Désignation Prix unitaire

0,n

Facture

N° facture Date facture Total HT

Multiplicité des représentations :
Le modèle relationnel qui correspond à ce modèle des données s’écrit : client (n° client, nom client, adresse client, cp client, ville client) produit (référence, désignation, prix unitaire) facture (n° facture, date facture, n° client#, montant facture) lignes facture (n° facture, référence, quantité) Les logiciels de gestion de SI sont aussi appelés SGBDR (système de gestion de base de données relationnelle). Ex : Access, Apisoft, SAP (cf module S4). Le modèle des données ci-dessus sera représenté dans un SGBDR comme Access par le schéma des relations ci-dessous (commande Outils Relations) :

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p4

Unicité de l’information
Pour assurer la fiabilité et la rapidité d’accès et de mise à jour des informations du SI, il faut que chaque information soit enregistrée dans la base de façon unique. On parlera alors d’un logiciel intégré (cf S4 : introduction aux progiciels intégrés : apisoft et SAP) exemple : si l’adresse d’un client change, on la change une fois dans le fichier « client » sans avoir besoin de la changer dans chacune des factures du client (c’est le n° client qui relie la facture au client) Une représentation sous forme de tableau (exemple : Excel) obligerait à répéter l’adresse dans chaque facture, d’où un risque d’erreurs en cas de mise à jour.

Traitement de l’information :
Une fois les informations représentées par le modèle des données, on va s’intéresser aux traitements qu’on leur fait subir. Pour cela, on part des résultats qu’on veut obtenir : Non Calculées Information s Résultantes Décomposition en infos élémentaires Information entrée Elémentaire
seules ces informations sont enregistrées de façon permanente dans la base de données

Calculées Sens de validation

les traitements transforment les infos d’entrée (enregistrées ou saisies) en infos de sortie (enregistrées ou éditées sur écran ou imprimante) Info Elémentair e Traitement

Info de sortie

Info de commande (instructions algorithmes)
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p5

Ce sont les modèles de traitement (modèles de flux, d’activités…cf chapitre 2) qui vont représenter ces traitements. exemple de traitement sous access : - un formulaire va permettre de modifier un enregistrement ; - une requête va sélectionner des enregistrements et les présenter dans un état de sortie. Conclusion : l’analyse des SI se passe en deux temps : - quelles sont les informations dont on a besoin ? Comment sont-elles reliées ? - quels sont les traitements qu’on va leur faire subir ? Quand ? A périodicité fixe ou à l’occasion de quel événement déclencheur ?

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p6

Chapitre 1 : Les données 1 L' exemple
Il s'agit d'organiser l'informatisation de la facture. Le comptable souhaite que les factures soient présentées ainsi :

Les prix unitaires changent fréquemment. On ne souhaite pas conserver les anciens prix unitaires. En fin d'année, on offre une ristourne aux meilleurs clients en fonction du chiffre d'affaires réalisé avec eux

2 Le dictionnaire des données
1 -La première étape consiste à recenser toutes les données
Une donnée est un élément qui peut prendre des valeurs différentes. Il existe plusieurs types de données. Une donnée peut être : • Soit une donnée élémentaire si elle n'est pas obtenue par calcul à partir d'autres données.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p7

• • •

Soit une donnée calculée si elle résulte d'un calcul effectué à partir d'autres données. Soit une donnée calculée datée si elle résulte d'un calcul effectué et si on souhaite conserver cette donnée dont la valeur peut varier en fonction du temps. Soit un paramètre qui est une donnée particulière qui ne prend qu'une unique valeur.

Présentons le dictionnaire de données :
Données Nom entreprise Adresse entreprise Code postal entreprise Ville entreprise N° client Nom client Adresse client Code postal client Ville client N° facture Date facture Référence Désignation Prix unitaire Quantité Montant brut Total HT Montant TVA TTC TauxTVA Type Paramètre Paramètre Paramètre Paramètre Élémentaire Élémentaire Élémentaire Élémentaire Élémentaire Élémentaire Élémentaire Élémentaire Élémentaire Élémentaire Élémentaire Calculée Calculée datée Calculée Calculée Paramètre Règles de calcul

N° client +1

N° facture +1

Prix unitaire* Quantité Somme des montants bruts Total HT *TauxTVA Total HT + MontantTVA

principes de construction du tableau : • En analyse, on se situe toujours dans le cadre de référence de l'entreprise observée. Dans notre exemple, il s'agit des factures établies par l'entreprise Au Bon Beurre. La donnée Nom entreprise ne prendra pour seule valeur la valeur Au Bon Beurre. Nom entreprise est donc un paramètre. Éviter les polysémies, c'est-à-dire deux noms de rubrique identiques pour deux contenus différents. Ex:TVA qui peut désigner le taux de TVA ou le montant de la TVA. Éliminer les synonymes, c'est-à-dire deux noms de rubrique différents pour un contenu identique : Ex: raison sociale et nom client. Éliminer les données pré-imprimées qui n'ont aucune signification: ex: N° folio. Ne pas faire référence à un document. En effet, pour repenser tout le système d'information, il faut oublier les documents qui existaient et se concentrer uniquement sur les données.

• • • •

2 -La seconde étape consiste à conserver toutes les données élémentaires plus les données calculées datées
Dictionnaire de données final :
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p8

Données N° client Nom client Adresse client Code postal client Ville client N° facture Date facture Référence Désignation Prix unitaire Quantité Total HT

Les paramètres n'apparaissent pas dans la suite de la modélisation mais sont des valeurs essentielles dans la compréhension d'un sujet.

3 la matrice des dépendances fonctionnelles
1 Création de la matrice des dépendances fonctionnelles
Créons le cadre de cette matrice à partir des données élémentaires et calculées datées trouvées dans le dictionnaire de données. Elle se présente ainsi :
Données N° client Nom client Adresse client clientCode postal Ville client N° facture Date facture Référence Désignation Prix unitaire Quantité Total HT

N° client Nom client Adresse client Code postal client Ville client N° facture Date facture Référence Désignation Prix unitaire Quantité Total HT

2 -Les dépendances fonctionnelles
Pour remplir cette matrice, on considère chaque colonne de données.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p9

Pour une valeur de cette donnée en colonne (en ne considérant pas les données sur ellemême), on pose la question suivante: existe-t-il au maximum une seule valeur de la donnée située en ligne ? Dans l'affirmative, on traduit cette réponse en inscrivant 1 à l'intersection. Ex : Un client a un seul nom mais peut avoir plusieurs factures et sur chaque facture plusieurs quantités Ex : colonne numéro facture : il faut répondre à la question, à un n° facture, y a-t-il un seul n° client ? oui, donc 1. La présence d'un 1 à l'intersection des deux données traduit l'existence d'une dépendance fonctionnelle.
Données N° client Nom client Adresse client clientCode postal Ville client N° facture Date facture Référence Désignation Prix unitaire Quantité X 1 X Total HT

N° client Nom client Adresse client Code postal client Ville client N° facture Date facture Référence Désignation Prix unitaire Quantité Total HT

X 1 1 1 1

X X X X

1 1 1 1 1 X 1

X X 1 1 X X

3 -Simplification de la matrice des dépendances fonctionnelles
On ne conserve pas dans la matrice les colonnes vides, c'est-à-dire qui ne contiennent pas de 1. La présentation de la matrice simplifiée est donc la suivante :

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p10

Données

N° client Nom client Adresse client Code postal 1 client Ville 1 client N° facture Date facture Référence Désignation Prix unitaire Quantité Total HT

N° client X 1 1

N° Référence facture 1 1 1 1 1 X 1 X 1 1 1

4 -Élimination des dépendances fonctionnelles transitives
Une dépendance fonctionnelle (notée A->B) est dite transitive s'il existe une donnée C telle que A->C et C->B. Ces dépendances fonctionnelles transitives entraînent une redondance d'information et ne servent donc à rien. Il faut donc les éliminer de la matrice. Il y a un risque important de présence de dépendances fonctionnel/es transitives s'il existe plusieurs 1 sur la même ligne dans la matrice des dépendances fonctionne/les. Sur la ligne nom client, il va deux 1 Cela signifie que : Pour un numéro client, il y a un seul nom client (noté N° client ->Nom client) Pour un n° facture, il y a un seul nom client (noté N° facture ->Nom client) Cherchons laquelle de ces deux dépendances fonctionnelles risque d'être positive: Existe-t-il une donnée C telle que N° client -> C et C->Nom client ? Non Existe-t-il une donnée C telle que N° facture ->C et C->Nom client? Oui, c'est N° client. En effet. N.° facture ->N° client et N° client ->Nom client. Donc N° facture -> Nom client est transitive On barre dans la colonne N° facture le 1 sur la ligne nom client. On tient le même raisonnement pour les dépendances fonctionnelles N° facture ->Adresse client, N" facture ->Code postal client, N" facture ->Ville client. On obtient la matrice des dépendances fonctionnelles finale :

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p11

Données

N° client Nom client Adresse client Code postal 1 client Ville 1 client N° facture Date facture Référence Désignation Prix unitaire Quantité Total HT

N° client X 1 1

N° Référence facture 1 1 1 1 1 X 1 X 1 1 1

4 La recherche des dépendances fonctionnelles composées
Certaines données ne sont pas reliées aux autres. Dans l'exemple, la seule donnée qui n'est pas reliée (c'est-à-dire qui ne contient pas de 1 ni dans sa ligne, ni dans sa colonne) est Quantité. Pour la relier à d'autres données, nous allons travailler à partir d'un petit tableau qui aura cette forme :
Données têtes de colonnes Données non reliées

Appliqué à l'exemple, nous obtenons le tableau suivant:
Données têtes de colonnes Données non reliées N° client N° facture Référence quantité

Puisqu'il n'existe pas de dépendances fonctionnelles simples entre Quantité et les données en tête de colonne, nous allons rechercher une dépendance fonctionnelle composée entre Quantité et plusieurs données têtes de colonne. Avec uniquement ces données nous allons essayer de mettre dans une dépendance fonctionnelle composée Quantité. Une dépendance fonctionnelle composée est de la forme A, B->C. Elle se lit : pour une valeur de A et une valeur de B, on a au maximum une seule valeur de C. Dans notre exemple, pour un N° facture et une référence, il y a une seule quantité. Nous la notons: N° facture, référence -> Quantité.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p12

5 Le modèle de données
Le modèle de données permet de représenter de manière visuelle les liens entre les différentes données.

1 -Les entités
Elles sont déduites à partir de la matrice des dépendances fonctionnelles. Chaque colonne induit la création d'une entité dont la clé primaire est la tête de colonne. La clé primaire (ou identifiant) est la donnée qui prend une valeur unique et qui permet d'identifier les différentes occurrences d'une entité. Par exemple, la clé primaire de l'entité Client est N° client. En effet, chaque valeur de N° client est unique et permet d'identifier à coup sûr le client. L’entité client se représente ainsi : Client
N° client Nom client Adresse client CP client Ville client Nom de l’entité Clé-primaire

2 -Les associations
Elles sont déduites à partir des dépendances fonctionnelles composées. Toute dépendance fonctionnelle composée induit la création d'une association dont les branches sont reliées aux entités contenant les différentes données clés primaires de l'association. Par exemple, la dépendance fonctionnelle composée N° facture, référence -> Quantité induit la création de l'association suivante :

Ligne facture quantité

Nom de l’association Donnée se trouvant en partie droite de la dépendance fonctionnelle composée

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p13

3 -Les contraintes d'intégrité fonctionnelle (CIF)
Dans la matrice des dépendances fonctionnelles, la présence de 1 dans la ligne d'une donnée tête de colonne traduit la présence d'une contrainte d'intégrité fonctionnelle entre ces deux données (ce sont toutes les deux des clés primaires). Attention, la CIF doit continuer à exister dans le temps et ne pas exister seulement pour une période. Dans notre exemple, la ligne N° client (donnée figurant également en tête de colonne) contient un 1 dans la colonne N° facture et traduit l'existence d'une CIF entre N° facture et N° client, c'est-à-dire que pour un N° facture, il y a au maximum un N° client et donc par déduction: pour une. facture, il y a au maximum un client.

Ceci se représente dans notre exemple de la manière suivante : Client
N° client Nom client Adresse client CP client Ville client 1,n Correspond Ligne facture quantité 1,1 1,n

Produit

Référence Désignation Prix unitaire

0,n

Facture

N° facture Date facture Total HT

4 -Les cardinalités
Ce sont des couples de 2 chiffres qui peuvent prendre les valeurs suivantes : 0,1 0,n 1,1 1,n
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p14

Le premier chiffre correspond au minimum et le deuxième chiffre au maximum. Commençons par la CIF :
Correspond

1,1 : pour une facture, j’ai au min un client et au max un client 1,n : pour un client, j’ai au min une facture et au max plusieurs factures

1,1

Facture

N° facture Date facture Total HT

1,n : pour un client, j’ai au min une facture et au max plusieurs factures

Client
N° client Nom client Adresse client CP client Ville client 1,n Correspond

Pour l’association : 1,n : pour une facture, j’ai au min une quantité (s’il y a une seule ligne sur la facture) et au max plusieurs quantités (s’il y a plusieurs
lignes sur la facture) Ligne facture quantité

Facture

1,n

N° facture Date facture Total HT

Produit

1,n : pour un produit, j’ai au min aucune quantité (si personne ne le commande) et au max plusieurs quantités
Ligne facture

Référence Désignation Prix unitaire

__________________________________________________________________________________________ quantité Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p15

6 Le modèle relationnel
Le modèle de données donne une bonne vision de l'organisation des données. Mais pour mettre en place la base de données, il faut utiliser le modèle relationnel. Chaque relation correspond sous Access (ou tout autre SGBDR) à une table. 3 règles permettent de transposer le modèle conceptuel de données en modèle relationnel : Une entité induit la création d'une relation où la clé primaire est simple. Une association induit la création d'une relation où la clé primaire est composée. Une contrainte d'intégrité fonctionnelle induit la création d'une clé étrangère. Dans notre exemple, les entités Produit, Client et Facture induisent la création des relations suivantes : Produit (Référence, Désignation, Prix unitaire) Client (N° client, Nom client, Adresse client, CP client, Ville client) Facture (N° facture; Date facture, Total HT) L'association Ligne facture induit la création de la relation suivante: Ligne Facture (N° facture. Référence, Quantité) La CIF entre Facture et Client induit la création d'une clé étrangère (notée #) dans la relation Facture. Celle-ci devient : Facture (N° facture, Date facture, Total HT: N° client #) En effet, pour un N° facture, j'ai un seul N° client. Remarque: De manière plus générale, toute cardinalité 0, 1 ou 1,1 entraîne la création d'une clé étrangère. Le modèle relationnel complet est le suivant : Produit (Référence, Désignation, Prix unitaire) Client (N° client, Nom client, Adresse client, CP client, Ville client) Facture (N° facture, Date facture, Total HT, N° client #) Ligne facture (N° facture,. Référence, Quantité)

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p16

7 La contrainte d'intégrité multiple: la CIM
Il arrive que l'on veuille traduire une information donnée dans l'énoncé du type : Pour une valeur de A, nous avons plusieurs valeurs de B, et pour une valeur de B nous avons plusieurs valeurs de A. Exemple: soit les entités Diplôme et Élève : Diplôme
N° diplôme Nom diplôme

Elève
N° élève Nom élève Prénom élève

Pour un élève, nous pouvons avoir plusieurs diplômes. Pour un diplôme, nous pouvons avoir plusieurs élèves. Il existe manifestement un lien entre ces deux entités, mais ce lien n'est pas du type 1,1. On crée alors une contrainte d'intégrité multiple (CIM) qui est en fait une association non porteuse de données. Les cardinalités afférentes à cette CIM ne peuvent jamais prendre la valeur 1, 1. Voici sa représentation dans le modèle organisationnel de données : Diplôme
N° diplôme Nom diplôme 0,n Profil 0,n

Elève
N° élève Nom élève Prénom élève

Le modèle relationnel est le suivant: Diplôme (N° diplôme, nom diplôme) Élève (N° élève, nom élève, prénom élève, date de naissance) Bagage (N° élève. N° diplôme) Attention, ne commencez pas à mettre des CIM partout. En général, la présence d'une CIM apparaît clairement dans un énoncé. Les cardinalités se justifient ainsi : Pour une valeur de l'entité A, il existe au minimum combien de valeurs de l'entité B et au maximum combien de valeurs de l'entité B. Idem pour l'autre cardinalité. Dans notre exemple : Pour un diplôme, il existe au minimum aucun élève et au maximum plusieurs élèves. Pour un élève, il existe au minimum aucun diplôme et au maximum plusieurs diplômes.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p17

8 La pseudo-entité
Il arrive que l'on veuille traduire une information donnée dans l'énoncé du type : Pour une valeur de l'entité A et une valeur de l'entité B, nous avons une seule valeur de l'entité C. Exemple: soit les entités Ouvrier, Semaine et Horaire : Ouvrier
N° ouvrier Nom ouvrier Prénom ouvrier

Horaire
N° horaire Libellé horaire Taux heure supplémentaire

Semaine
N° semaine Libellé semaine

Chaque semaine, les ouvriers ont des horaires de travail différents. En fait, ils retrouvent à peu près toutes les quatre semaines le même horaire. Comme certains horaires sont plus difficiles, le taux de l'heure supplémentaire varie en fonction de l'horaire. Pour un ouvrier et une semaine, il y a un seul horaire. On crée alors une pseudo-entité qui est en fait une association dont la donnée but est clé primaire dans une entité. Une des cardinalités afférentes à cette pseudo-entité prend toujours la valeur 1, 1. Voici sa représentation dans le modèle organisationnel de données :

Ouvrier
N° ouvrier Nom ouvrier Prénom ouvrier

0,n Planning

0,n

Semaine
N° semaine Libellé semaine

1,1 0,n

Horaire
N° horaire Libellé horaire Taux heure supplémentaire

Le modèle relationnel est le suivant : Ouvrier (N° ouvrier, nom ouvrier, prénom ouvrier) Semaine (N° semaine, libellé semaine) Horaire (N° horaire, libellé horaire, taux heure supplémentaire) Planning (N° ouvrier,. N° semaine, N° horaire#)
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p18

N° horaire est en fait une clé étrangère contenue dans une association. Les cardinalités se justifient ainsi : Pour une valeur de l'entité A et une valeur de l'entité B, il existe une seule valeur de l'entité C. Pour une valeur de l'entité C, il existe au minimum combien de couples (A, B) et au maximum combien de couples (1,n). Dans notre exemple : Pour un ouvrier et une semaine, il y a un seul horaire: 1,1 Pour un horaire, il y a au minimum personne qui travaille et au maximum plusieurs ouvriers travaillant sur plusieurs semaines.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p19

9 La réflexivité
Une association est dite réflexive si elle utilise la même donnée, en donnée source et en donnée but. Représentation dans le MOD :
association

x.x

x.x

Rôle 1 entité

Rôle 2

Notion de rôle : La donnée source joue un rôle vis-à-vis de la donnée but. De même, la donnée but joue un rôle vis-à-vis de la donnée source. Si A est la donnée source et B la donnée but: A joue le rôle 1 pour B et B joue le rôle 2 pour A. Exemple : Un club de randonnée organise des visites pédestres de différents lieux. Les enfants de membres ont droit à une réduction. Tous sont des participants, parents et enfants. Il y a réflexivité car un participant peut jouer le rôle de parent et un autre le rôle de l'enfant. Ainsi on peut dire : Un participant est le parent d'au minimum zéro enfant (cardinalité 0) et au maximum de plusieurs enfants (cardinalité n). Un participant est 1 enfant d'au minimum zéro parent (cardinalité 0) et au maximum de plusieurs parents (cardinalité n).

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p20

association

0,n

0,n

Est l’enfant participant
N° participant Nom participant Prénom âge

Est le parent

Passage au modèle relationnel : Les règles habituelles s'appliquent. Nous allons avoir deux tables : L’entité induit la création d'une table avec une clé primaire simple. L’association induit la création d'une table avec une clé primaire composée. Table_entité (a, b, c). Table_association (a,a) Exemple (suite) : Le modèle relationnel est le suivant : Participant (N° Participant, Nom participant, Prénom participant, Âge participant). Lien parental (N° Parent. N° enfant). Remarque : Dans l'association, il est plus facile de remplacer le participant par le rôle qu'il joue dans l'association afin de rendre celle- ci plus compréhensible. Voici un extrait du contenu des deux tables : Table participant :

N° participant 1 2 3 4 5 6 table lien parental

Nom participant Duliège Duliège Joly Dalphin Dalphin Dalphin

Prénom participant Vincent Benoît Fabrice Vincent Patricia Pierre

Age participant 42 14 40 17 45 44

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p21

N° enfant 2 4 4

N° parent 1 5 6

Benoît Duliège est le fils de Vincent Duliège. Vincent Dalphin est le fils de Patricia et Pierre Dalphin. Passage sur Access : Access ne gère pas correctement dans le schéma des relations les relations réflexives. Il faut faire apparaître deux fois la table concernée par la réflexivité.

10 La spécialisation/généralisation
Pendant la phase d'analyse, il arrive que l'on s'aperçoive que certaines entités ont des propriétés qui ne sont pas toujours remplies. Exemple : La société Au bon beurre vend ses produits à des supérettes. Parfois, des clients occasionnels (des indépendants) sont en rupture de stock avec leurs propres fournisseurs et font donc appel à la société Au bon beurre. L’entité Client se présente ainsi : client
N° client Nom client Adresse client Code postal client Ville client Total des ventes de l’année Remise accordée ancienneté

La donnée Total des ventes de l'année concerne les clients occasionnels. En effet, à la fin de l'année, l'entreprise Au bon beurre accorde une ristourne à ses clients
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p22

occasionnels en fonction du chiffre d'affaires annuel. Les données Remise accordée et Ancienneté concernent les clients réguliers (supérettes). La remise accordée est négociée en début d'année par le commercial lors de la signature d'un contrat où la supérette s'engage sur un certain volume acheté. L’ancienneté permet de savoir depuis combien d'années la supérette travaille avec nous. La donnée Total des ventes n'est pas renseignée quand le client est une supérette. De même, les données Remise accordée et Ancienneté ne sont pas renseignées quand le client est un client occasionnel. Le processus de spécialisation/généralisation permet de rassembler les propriétés communes à tous les clients dans l'entité générique. Les propriétés spécifiques à chaque type de client sont placées dans des entités spécialisées. Le formalisme est le suivant : Entité générique

Entité spécialisée

Entité spécialisée

Appliqué à notre exemple, le processus de spécialisation/généralisation donne le résultat suivant :

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p23

client
N° client Nom client Adresse client Code postal client Ville client

Client occasionnel
Total des ventes de l’année

Supérette
Remise accordée ancienneté

Remarque importante : Les entités spécialisées n'ont pas d'identifiant propre. Il n'y a pas non plus de cardinalités à placer. Conséquences sur le modèle relationnel : Les entités spécialisées induisent la création d'une relation dont l'identifiant est l'identifiant de l'entité générique. Dans notre exemple : L’entité Client génère donc la création de trois relations : Client (N° client, Nom client. Adresse client, Code postal client. Ville client} Client occasionnel (N° client, total des ventes de l'année} Supérette (N° client, remise accordée. ancienneté}

Les contraintes sur les entités spécialisées
• La contrainte de partition

C'est la contrainte la plus fréquemment rencontrée. Une occurrence d'une entité générique ne peut pas contenir les valeurs de plusieurs entités spécialisées mais d'une seule. Exemple : Un client est soit un client occasionnel,. soit une supérette. Il ne peut pas être les deux à la fois. Il ne peut pas non plus ne pas être l'un des deux types de clients. Le formalisme est le suivant:

+

Cela se traduit donc ainsi sur le MOD :
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p24

client
N° client Nom client Adresse client Code postal client Ville client

+

+

Client occasionnel
Total des ventes de l’année

Supérette
Remise accordée ancienneté

• La contrainte d'exclusion Une occurrence d'une entité générique ne peut pas contenir les valeurs de plusieurs entités spécialisées, mais d'une seule ou de zéro. Exemple : Un client est soit un client occasionnel, soit une supérette. Il ne peut pas être les deux à la fois. Il existe par contre des clients qui ne sont ni des clients occasionnels, ni des supérettes. Le formalisme est le suivant:

X

Le MOD est identique sauf X à la place de + • La contrainte de totalité Une occurrence d'une entité générique doit contenir les valeurs d'au moins une entité spécialisée voire de plusieurs. Exemple : L’entreprise Au Bon Beurre souhaite que certaines supérettes puissent aussi bénéficier de la ristourne accordée aux clients occasionnels, en plus de la remise négociée lors de la signature du contrat. Un client bénéficie soit des avantages d'un client occasionnel, soit de ceux d'une supérette, soit des deux. Le formalisme est le suivant :

T

Le MOD est identique sauf T à la place de +

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p25

• Conséquences sur le modèle relationnel Il n'y en a pas. Cela signifie que ces contraintes n'apparaîtront pas quand on va implanter physiquement la base de données. Il faudra veiller lors de la création de formulaires à tenir compte de ces contraintes en créant des contrôles lors de la saisie.

11 L'entité dépendante
Une entité est dite dépendante : • • si elle n'existe que par l'intermédiaire d'une autre entité,

s'il existe une contrainte d'intégrité fonctionnelle entre l'entité dépendante et l'entité principale. Cela se traduit par la cardinalité (1, 1). Entité principale Entité dépendante
(1,1) 1,n Est un lien

Dans le modèle relationnel, l'identifiant est la concaténation de l'identifiant de l'entité principale + l'identifiant de l'entité dépendante. Entité dépendante (A,X#, B, C) Entité principale (X, Y, Z) Exemple Dans une bibliothèque, il y a plusieurs exemplaires d'un même livre. Nous avons donc les entités livre
N° livre Nom livre Nom auteur Année édition

exemplaire
N° exemplaire Etat livre

Le numéro exemplaire prend les valeurs 1, 2, 3, 4 pour le livre « Harry Potter à l'école des sorciers »(livre n° 28). Il prend les valeurs 1, 2, 3 pour le livre « Peggye Sue et les fantômes » (livre n° 31). Le n° exemplaire ne peut donc identifier un livre. Pour ceci, il faut utiliser la clé concaténée : n° livre+n° exemplaire Le modèle relationnel correspondant est : Livre (n° livre, Nom livre, Nom auteur, Année édition) Exemplaire (n° livre#,n°exemplaire, État livre).
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p26

12 Les contraintes sur les associations
Les contraintes vues précédemment sur les entités spécialisées peuvent être utilisées pour décrire des contraintes sur des associations. Celles-ci peuvent être porteuses de données, non porteuses de données ou être des contraintes d'intégrité fonctionnelle. • La contrainte de partition Une occurrence d'une entité participe soit à l'association 1, soit à l'association 2, mais pas aux deux à la fois. Le formalisme est le suivant :

Entité A

0,n

0,n

Association 2

Association 1

0,n

+
0,n

Entité B

Entité C

Le trait en pointillé indique quelle est l'entité concernée par la contrainte. Une occurrence de l'entité A doit donc participer à l'association 1 ou à l'association 2 mais pas les deux à la fois (à cause du symbole +).

Exemple : La société Au Bon beurre souhaite diversifier son offre et tient à proposer à ses clients des produits frais qu'elle fabrique (en particulier dans le domaine des fromages). Chaque produit serait acheté à un seul fournisseur. Parmi les produits vendus par la société Au Bon Beurre, il y a donc des produits que la société a fabriqués elle-même (yaourts, beurre, crème fraîche) et des marchandises qu'elle achète auprès de fournisseurs. Un produit est donc : Soit fabriqué par l'entreprise Au Bon Beurre. Soit acheté auprès d'un unique fournisseur.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p27

Cela se traduit donc ainsi sur le MOD :

Produit N° produit désignation

0,1

0,n

Est fourni

fabrication

0,n

+

Quantité nécessaire 1,n

fournisseur N° fournisseur Nom fournisseur Adresse fournisseur

Matière première N° matière première Nom mat première

• La contrainte de totalité Une occurrence d'une entité participe au moins à une association : soit à l'association 1 , soit à l'association 2, soit aux deux à la fois. Le formalisme est le suivant :

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p28

Entité A

0,n

0,n

T
Association 2

Association 1

0,n

0,n

Entité B

Entité C

Exemple (indépendant du précédent) : La société Au Bon Beurre change sa politique commerciale. Certains produits se verront appliquer une politique de remise classique. Par contre, pour certains produits, une ristourne sera accordée en fin d'année en fonction des ventes faites sur ces produits. Tous les produits ouvriront droit à au moins une réduction (ristourne ou remise). Un produit pourra cependant ouvrir droit à plus d'une réduction (ristourne et remise). Cela se traduit donc ainsi sur le MOD : Produit N° produit désignation
0,n

0,n

ristourne Taux ristourne 0,n

remise

T

Taux remise 1,n

Tranche ristourne Tranche CA • • La contrainte d'exclusion Une occurrence d'une entité participe :

Tranche remise Quantité achetée

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p29

soit à l'association 1 , soit à l'association 2, soit à aucune des associations. Le formalisme est le suivant :
0,n

Entité A

0,n

Association 2

Association 1

0,n

X

0,n

Entité B

Entité C

Exemple (indépendant du précédent) : La société Au bon beurre change sa politique commerciale. Certains produits se verront appliquer une politique de remise classique. Par contre, pour certains produits, une ristourne sera accordée en fin d'année en fonction des ventes faites sur ces produits. Certains produits « vache à lait » n'auront pas de réduction (ni ristourne, ni remise). Un produit aura donc au maximum une réduction (ristourne ou remise) ou aucune. Cela se traduit donc ainsi sur le MOD : Produit
N° produit désignation 0,n

0,n

ristourne Taux ristourne 0,n

remise

X

Taux remise 1,n

Tranche ristourne
Tranche CA

Tranche remise
Quantité achetée

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p30

Chapitre 2 : Traitements et autorisations 1 Le modèle de contexte
1 –Définition
Le modèle de contexte permet de cerner le domaine d'étude : • La première difficulté est en effet de cerner le champ sur lequel on souhaite intervenir. • Parfois, il s'agit d'une entreprise dans sa totalité, mais souvent, il s'agit d'une fonction particulière. • On appellera domaine d'étude la partie de l'entreprise que l'on va étudier. • Les autres parties de l'entreprise en relation avec le domaine d'étude seront appelées des domaines connexes. • Les personnes physiques et morales extérieures à l'entreprise seront appelées des acteurs externes. Le modèle de contexte permet de mettre en évidence les flux d'informations qui existent entre le domaine d'étude, les domaines connexes et les acteurs externes. • On ne s'intéressera pas aux relations entre acteurs externes ou entre domaines connexes. • II va donc falloir recenser tous les messages circulant entre le domaine d'étude et son environnement (acteurs externes ou domaines connexes).

2 -Représentation du modèle de contexte
Les différentes représentations des objets sont : Les messages Flux d'information Domaine d’étude Domaine connexe

Acteur externe

Le modèle de contexte sera donc représenté sous cette forme Acteur externe Flux 1 Flux 3 Domaine connexe

Domaine d’étude Acteur externe Flux 2 Flux 4 Domaine connexe

:

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p31

3 -Exemple
La société Au bon Beurre fabrique des produits laitiers (beurre, crème fraîche, fromages). Son responsable souhaite avoir un système informatique plus performant dans le domaine de la facturation client. Les clients sont des grossistes et des centrales d'achat. Dès qu'une commande est reçue, elle est immédiatement traitée. Un bon de livraison est édité et est transmis à l'entrepôt pour que la livraison soit préparée. La facture est envoyée le jour de la livraison. En cas de contestation de la facture, une négociation a lieu entre Au bon beurre et le client. Une facture d'avoir peut être délivrée. Les clients règlent à 60 jours.
commande facture règlement négociation

Facturation client

Bon de livraison

Entrepôt

client
Facture d’avoir

Remarque : Pour rendre le modèle plus clair, il est possible de faire apparaître la livraison entre le domaine connexe « entrepôt » et l'acteur externe client en représentant ce flux d'information en pointillés.

2 Le modèle de flux
1 Définition
Le modèle de flux se construit à partir du modèle de contexte. Il s'agit en fait de voir ce qu'il se passe dans la « boîte noire » qui est le domaine d'étude. Celui-ci va être décomposé en un ensemble d'activités. Le modèle de flux va donc repérer l'ensemble des flux d'informations circulant entre les différentes activités d'un domaine d'étude et entre les activités et les domaines connexes et les acteurs externes. Une activité est un ensemble d'actions homogènes. Par action, on entend toute opération d'ajout, de mise à jour, de consultation, de suppression sur la base de données. Schéma d’un modèle de flux

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p32

Activité n°1 Acteur externe Domaine connexe

Activité n°2

Domaine connexe Acteur externe Activité n°3

Comme dans le modèle de contexte, on ne se préoccupe pas des flux entre acteurs externes et domaines connexes. Les flèches représentent les flux d'informations.

2 Exemple
À la société Au bon Beurre, les commandes sont traitées directement : la procédure est la suivante : Il y a vérification du client, pour savoir s'il s'agit d'un nouveau client ou non. Quand la procédure est terminée, le bon de livraison est édité et transmis au chef de quai de l'entrepôt. • La création de la facture va se faire de la manière suivante : À partir du bon de livraison, Calcul du montant de la facture, Attribution d'un délai de règlement en fonction du montant de la facture et du client. Quand un règlement arrive, la facture correspondante est maintenant considérée comme payée. Cette information permet ensuite de passer l'écriture comptable correspondante. • En cas de contestation de la facture, il faut gérer le litige. Après interrogation du chef de quai, une facture d'avoir est éventuellement délivrée par la comptabilité. Le modèle de flux aura cette représentation :
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p33

commande

Gestion des commandes client
Bon de livraison Facture règlement

Bon de livraison

entrepôt

facturation

Facture d’avoir

Facture payée

comptabilité

Facture d’avoir à créer litige Demande de renseignements

Gestion des litiges
réponse

3 Décomposition des activités
Une activité est ininterruptible. Cela signifie qu'une fois que le traitement d'une activité est lancé, il n'y a pas de point d'arrêt. Un ou plusieurs événements peuvent déclencher cette activité. Un ou plusieurs messages peuvent résulter de cette activité. Mais une fois l'activité lancée, on n'attend plus aucun message jusqu'à la fin du traitement de l'activité. Il faut donc décomposer les activités où il y a des points d'arrêt, jusqu'à obtenir des activités ininterruptibles. Un modèle de flux peut donc être de niveau 1, 2 ou 3. Le niveau correspond au nombre d'étapes réalisées pour obtenir un modèle de flux où toutes les activités ne peuvent plus être décomposées.

4 Exemple (suite)
Examinons l'activité Facturation. Il y a un point d'arrêt. En effet, après avoir envoyé la facture, il y a attente jusqu'à la réception du règlement. Il faut donc décomposer cette activité en deux activités : -Gestion des factures -Gestion des règlements
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p34

Voici un extrait du modèle de flux de niveau 2 :
commande

Gestion des commandes client
Bon de livraison Facture

Bon de livraison

entrepôt

Gestion des factures

règlement

Gestion des règlements
Facture payée

comptabilité

L’activité Facturation est maintenant décomposée en deux activités qui sont toutes les deux ininterruptibles.

5 Intérêts du modèle de flux
Dans l'exemple vu ci-dessus, il n'est pas fait allusion aux services. Cet outil oblige à faire abstraction des différentes fonctions habituelles dans l'entreprise. Il s'agit en effet de faire apparaître les activités, sans tenir compte (nous sommes au niveau conceptuel) de l'organisation de l'entreprise. Ceci demande une gymnastique intellectuelle pour éviter de repartir directement dans le schéma classique de l'entreprise. Les nouvelles formes d'organisation en entreprise (Intranet, client serveur,...) obligent en effet à repenser le travail en terme d'activités et non pas de services.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p35

3 Le modèle organisationnel de traitements analytiques
1 Définition
Le MOTA permet de décrire les différentes actions d'une activité en montrant pour chacune de ces actions les données utilisées. Une action est soit : -Une consultation sur la base de données ; -Une mise à jour de données ; -Une suppression d'enregistrements ; -Un ajout d'un nouvel enregistrement. Le MOTA est donc la suite logique du modèle de flux de dernier niveau. Pour chaque activité du modèle de flux, il y aura donc un MOTA.

2 -Représentation du MOTA
Objet du MOD

messages déclencheurs

Message 1

Message 2 consultation Objet du MOD ajout

synchronisation

ET Nom de l’activité

activité

Description des différentes actions OK Non OK

Objet du MOD Mise à jour

suppression Objet du MOD

messages de sortie

Message 3

Message 4

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p36

3 Les concepts
L’événement (ou message annonçant l'événement) déclencheur C'est lui (ou eux) qui déclenche l'activité. Il est soit interne, soit externe, soit temporel. • Un événement interne provient d'une autre activité de l'entreprise. Exemple: Le bon de livraison provient de l'activité Gestion des commandes • Un événement externe provient d'une entité extérieure à l'entreprise ou est destiné à une entité extérieure à l'entreprise. Exemple: Une commande • Un événement temporel correspond en fait à un moment précis. Exemple :Tous les jours L’événement (ou message annonçant l'événement) résultat Le message de sortie ou l'événement résultat peut être soit interne soit externe : Exemple d'un message de sortie interne: Facture payée Exemple d'un message de sortie externe: Facture à payer La synchronisation : Une activité peut être déclenchée par un seul événement. Mais il arrive assez souvent qu'il faille que deux ou trois événements surviennent pour que l'activité démarre. Il faut alors utiliser des règles de synchronisation et utiliser les opérateurs ET et OU. Exemple de synchronisation : L’activité démarre si l'événement A ou l'événement B se produisent :
Message B

Message A

OU

Si plus de deux événements sont en jeu, l'utilisation des parenthèses explicite les règles de la synchronisation :
Message A Message B Message B

* = (A ou B) et C

*

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p37

L’activité C'est une série ininterruptible d'actions. Ininterruptible signifie que toute la série d'actions se fait sans attendre un message (ou événement). Les actions possibles sur une base de données sont : -l'ajout -la suppression -la modification -la consultation Exemple : l’activité Gestion de la commande se traduit par les actions suivantes : Mise à jour du stock Impression du bon de commande Si le stock est suffisant, la commande est en cours, sinon elle est refusée.
Gestion de la commande Mise à jour du stock Impression du bon Stock suffisant Non OK Règles d’émission

Commande en cours

Commande refusée

Remarque : • Quand l'activité génère toujours le même message de sortie, les règles d'émission sont remplacées par le mot « toujours. ». • Les règles d'émission peuvent comporter plus de deux cas. Description des actions Une action sur une table de la base de données peut être : -Une consultation de données -Un ajout d'un enregistrement (occurrence) -Une mise à jour de données -Une suppression d'une occurrence. Elles sont symbolisées par les traits suivants : Consultation: Ajout: Mise à jour: Suppression: Action .. Action .. Action Action Table (entité ou association) Table (entité ou association) Table (entité ou association) Table (entité ou association)

Si l'action est soumise à une condition, il faut écrire celle-ci sur la flèche.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p38

Changement d'état des objets L:objet correspond à une table sous Access. Une table (entité ou association) peut changer d'état suite à l'application d'une action. Le changement d'état est représenté ainsi :
table Etat intial Etat après action

Chaque action peut provoquer des changements d'états sur une ou plusieurs tables. Exemple: dans une activité, l'action Création Commande entraîne la création d'un enregistrement dans l'entité Commande.
… création commande … … commande créée

Autre exemple: l'édition de la facture entraîne la mise à jour de l'enregistrement correspondant dans la table commande :
… émission facture … … commande

créée

facturée

Les acteurs Il nous faut maintenant préciser quel type de poste exécute l'activité. Rappel : • Le type de site. C'est une unité géographique où des acteurs exécutent des activités. Par exemple, l'agence de Sète. • Le type d'acteur C'est un ensemble de personnes qui exécutent les mêmes activités sur des sites différents. Sur l'agence de Sète et sur celle de Béziers, des acteurs exécutent les mêmes activités de suivi des contrats et de suivi des litiges. • Le type de poste. Il représente les moyens dont dispose un utilisateur pour réaliser les activités. C'est donc la réunion des informations sur le type de site et le type d'acteurs. Pour chaque MOTA, il faut donc indiquer le type de poste concerné par l'activité.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p39

Exemple: l’activité Gestion des commandes est gérée par le type de poste «Commercial ».

4 -Application
Un extrait du modèle de données de la société Au Bon Beurre vous est donné : client
N° client Nom client Adresse client CP client Ville client

Produit
référence produit désignation prix unitaire quantité en stock

1,n

0,n

correspond

Ligne commande Quantité commandée

1,1

1,n

commande
N° commande Date commande Bon de livraison éditée (O N) Facture éditée (O N) Facture payée (O N)

Intéressons-nous à l'activité Gestion des commandes : Le service commercial reçoit les commandes. Il saisit immédiatement la commande et édite un bon de livraison à destination du chef de quai et du service Facturation. Nous considérerons que l'entreprise n'a pas de rupture de stock. Quels sont les événements qui déclenchent l'activité ? L’activité Gestion des commandes est déclenchée par l'événement externe Commande. Quels sont les messages de sortie générés par l'activité ? L’événement de sortie est le bon de livraison. Quel type de poste gère l'activité Gestion des commandes ? Il s'agit du type de poste commercial. Quelles sont les actions de l'activité Gestion des commandes ? Les actions sont : Vérification de l'existence du client Création éventuelle du client Saisie de la commande Mise à jour du stock Quelles sont les données concernées par l'activité citée ci-dessus ?
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p40

Tous les objets du modèle de données sont concernés par l'activité Gestion des commandes Quels sont les objets qui vont changer d'état ? L’entité Client s'il s'agit d'un nouveau client. L’entité Commande: il y a création d'un nouvel enregistrement. L’association Ligne Commande: il y a création d'autant d'enregistrements qu'il y a de produits dans la commande. L’entité Produit: la quantité en stock est mise à jour La représentation du MOTA sera la suivante : Type de poste: Commercial
client

commande client créée Si nouveau client commande Gestion des commandes Vérification existence client Création client Création commande Mise à jour stock toujours créée

Ligne commande

produit Bon de livraison stocké déstocké

Intéressons nous maintenant à l'activité Gestion des factures : Le service facturation traite les bons de livraison reçus tous les jours à 14 h. La facture est éditée et est ensuite envoyée au client. Quels sont les événements qui déclenchent l'activité ? Il faut cette fois-ci que deux événements se produisent : -l'événement interne Bon de livraison -l'événement temporel 14 h Quels sont les messages de sortie générés par l'activité ? L’événement de sortie est la facture.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p41

Quel type de poste gère l'activité Gestion des factures ? Il s'agit du type de poste Facturation. Quelles sont les actions de l'activité Gestion des factures ? Les actions sont : Édition de la facture Mise à jour de la commande Quelles sont les données concernées par l'activité citée ci-dessus ? Tous les objets du modèle de données sont concernés par l'activité Gestion des commandes Quels sont les objets qui vont changer d'état ? L’entité Commande: la donnée Commande éditée prend la valeur « Oui ». La représentation du MOTA sera la suivante :
client

Bon de livraison

14 h commande

ET
Gestion factures Edition facture Mise à jour de la commande toujours produit stocké facture commande créée facturée déstocké Ligne commande créée

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p42

5 Liens entre le modèle de flux et le MOTA
Les flux d'informations se trouvant dans le modèle de flux sont les événements déclencheurs ou résultants des diffé- rentes activités (à l'exception des événements temporels). Le MOTA est en fait un zoom du modèle de flux.

Evénement 1

Activité A
Evénement 2

Acteur externe

Domaine connexe

Activité B
Evénement 4

Entité A

événement 1

Entité B

association

Activité A Entité C OK Non OK créée

Entité D Evénement 2 Evénement 3 créée

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p43

6 Liens entre le modèle de données et le MOTA
Les objets se trouvant dans le modèle de données sont les tables sur lesquelles les actions de l'activité décrites dans le MOTA agissent. Les mises à jour, créations, suppressions et consultations affectent les données des différentes tables. Entité B
Est géré 1,1 0,n association 0,n 1,1 concerne 1,n

Entité C
donnée

Entité A Entité D

Entité A

Entité B événement 1

association

Activité A

Entité C créée

OK

Non OK

Entité D créée Evénement 2 Evénement 3 __________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p44

4 Les vues d'un modèle de données
1 Définition d'une vue
À partir du modèle de données général et du MOTA, il est possible de réaliser des modèles de données par vue. Le modèle de données par vue permet de visualiser les données qu'un type de site ou qu'un type d'acteur peut voir. On parlera de modèle organisationnel de données (MOD). Rappel : • La vue d'un type de site Cette vue du MOD permet de préciser l'accès aux données en fonction de la localisation du site. Ainsi, selon le type de liaison existant entre deux sites; l'accès à certaines données sera différent. • La vue d'un type d'acteur Cette vue du MOD permet de préciser l'accès aux données par rapport à la fonction de l'acteur. • La vue d'un type de poste Cette vue du MOD combine la vue d'un type d'acteur et la vue d'un type de site. C'est celle que nous rencontrerons le plus fréquemment. Quand l'entreprise se trouve sur un seul site, la vue d'un type de site se confond avec le MOD général. La vue d'un type de poste se confond alors avec la vue d'un type d'acteur.

2 Autorisation sur les objets
À partir du MOD général, on construit la vue d'un MOD en faisant apparaître les entités et associations avec uniquement leur nom. On précise pour chaque objet les actions pouvant être réalisées. Grâce au MOTA, il est aisé de savoir quelles sont les tables utilisées par un type d'acteur et de connaître les accès nécessaires sur ces tables. Le MOD peut indiquer quelles actions peuvent être réalisées sur chaque table. Les actions s'écrivent ainsi : C : Création I : Lecture (ou interrogation) M: Mise à jour S : Suppression Le formalisme utilisé est le suivant : Nom de l’objet autorisation

Nom de l’association autorisation

Sur le MOD à la place des propriétés, nous indiquerons donc les actions possibles.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p45

3 Exemple
Soit un extrait du modèle de données de la société « Au bon beurre » : client
N° client Nom client Adresse client CP client Ville client

produit
Référence produit Désignation Prix unitaire Quantité en stock 0,n correspond Ligne commande

1,n

commande
1,1 N° commande Date commande Bon de livraison éditée (O N) Facture éditée (O N) Facture payée (O N) 1,n

Quantité commandée

• Le service commercial gère les commandes : Lors d'une réception de commande : -il vérifie l'existence du client, -il crée le client si nécessaire, -il crée la commande, -le stock des produits est mis à jour. Le MOD par vue du type de poste Service commercial sera : client produit

CIM
1,n 0,n correspond

I

Ligne commande

commande
1,1 1,n

CIM

CIM
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p46

Remarque : le stock de produits est mis à jour automatiquement par un programme. Le service commercial ne fait donc rien. Son action déclenche la mise à jour du stock mais il ne le fait pas lui-même ; d'où l'accès uniquement en consultation de la table Produit. • Le service facturation gère l'envoi des factures : Lors de la réception d'un bon de commande transmis par le service commercial : Il édite l'état de la facture, Il met à jour l'entité commande. Le MOD par vue du type de poste Service facturation sera : client produit

I
1,n 0,n correspond

I

Ligne commande

commande
1,1 1,n

I

IM
• Le service comptabilité enregistre les règlements : Il met ainsi à jour l'entité commande. Il peut aussi supprimer des commandes (faillite client,...) de la base. Le MOD par vue du type de poste Service comptabilité sera : client produit

I
1,n 0,n correspond

I

Ligne commande

commande
1,1 1,n

IS

IMS
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p47

4 Les groupes de données
À partir du MOD par vue on peut regrouper les données en trois catégories: , Les données privées : Elles sont accessibles seulement par un type de poste. Elles ne sont donc pas accessibles par les autres. Les données protégées : Elles sont accessibles en CIMS par un type de poste et en interrogation par d'autres types de poste. Elles sont donc protégées pour un type de poste et consultables pour ceux qui peuvent interroger ces données. Les données partagées : Elles sont accessibles en CIMS par plusieurs types d'acteurs. Elles sont donc partagées par plusieurs types d'acteurs. Ceci est important pour l'implantation des données. En effet, on n'installera pas les tables dans les mêmes répertoires si certaines tables sont partagées et d'autres privées. Ainsi des données partagées par plusieurs types d'acteurs devront se trouver sur le serveur central alors que des données privées pourront se trouver sur des répertoires d'un autre ordinateur. La présentation sous forme de formulaire permet de synthétiser l'ensemble des informations. Exemple de formulaire des groupes de données : Continuons avec l'exemple de Au bon beurre en ajoutant l'information ci-dessous : L’entité compte (au sens de la comptabilité générale) est reliée à l'entité Produit : Pour un compte, il y a un seul produit. Comptable Commercial Facturation Client Consultable Protégée Consultable Produit Consultable Consultable Consultable Commande Partagée Partagée Partagée Ligne commande Partagée Partagée Consultable Compte Privée Remarque : quand un type de poste a des droits autres qu'en interrogation, on considérera que la table n'est pas consultable mais soit protégée, privée, ou partagée.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p48

5 Les stratégies de répartition de données
1-Introduction
La stratégie de répartition de données est importante dans un environnement client serveur. En effet, il va falloir décider à quel endroit seront stockées les données. Le but est que pour l'utilisateur et le développeur, la base de données réparties ne soit considérée que comme une seule grande et unique base de données accessibles à tous en fonction des autorisations et des droits. La stratégie de répartition va dépendre des différents modèles réalisés, en particulier des différentes vues du MOD général et des contraintes techniques liées à l'utilisation du réseau.

2. les différentes stratégies de répartition de données
a. La distribution des données Nous sommes ici dans un environnement particulier où le serveur joue uniquement le rôle de serveur de données et où les clients interrogent la base de données à partir de requêtes. Les données sont donc stockées sur les serveurs et les différentes applications (formulaires, états,...) sont stockées chez les clients. Exemple : Les tables de la base de données sont gérées par SQL Server. Les formulaires et états sont créés sous Access, les tables étant attachées à partir de la base de données SQL Server. On peut noter certains inconvénients importants de cette architecture : • Le manque de fiabilité L’accès aux données centralisées ne peut être garanti en cas de défaillance du réseau. Tous les sites peuvent se trouver bloqués et les coûts financiers engendrés par de telles défaillances sont très importants. • Le manque de performances De plus, les applications distribuées souffrent souvent de médiocres performances du fait de la lenteur (relative, certes) des réseaux. Enfin, les données centralisées sont souvent utilisées par plusieurs applications (système d'aide à la décision, production, ...) et de ce fait le temps d'accès à ces mêmes données s'en trouve fortement augmenté. Siège social à Niort Agence de Toulouse

Table client

Toutes les données se trouvent sur le serveur du siège social. Toutes les requêtes font appel au serveur de Niort qui transmet les résultats

Agence de Blois

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p49

b. La réplication des données Cette technique de répartition consiste à gérer des copies de tables sur plusieurs sites. Siège social à Niort Agence de Toulouse

Table client

Table client

Agence de Blois

Table client

Dans cette société, les données concernant les clients sont traitées dans chaque agence, puis sont transmises au siège social pour les opérations de comptabilité qui sont centralisées au siège. La réplication de données permet de répondre aux problèmes de l'architecture distribuée : • Meilleure disponibilité : Du fait que plusieurs copies existent de la même table, un site peut continuer à fonctionner même si le ser- veur central est en panne. De plus, il est possible d'installer sur un autre site un serveur de secours qui prenne le relais en cas de défaillance du serveur central. • Amélioration des performances : Les données étant plus proches physiquement du lieu où elles sont traitées, cela se traduit par une réduction des goulets d'étranglement situés sur le réseau. La réplication permet de même la séparation entre les systèmes d'aide à la décision et de production. Ceci améliore automatiquement les temps d'accès aux données.

3 Les différents types de réplication de données
Les questions principales à se poser sont : A quel moment les agences doivent-elles transmettre les informations mises à jour de la table client au centre ? • Tout de suite • En fonction d'une règle de gestion définie à l'avance • Selon une fréquence à définir Qui effectue la mise à jour ?
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p50

• Uniquement les agences • Uniquement le siège • Le siège et les agences Les réponses à ces questions vont conditionner un type de réplication. a. Le cliché Cette réplication copie une vue entière de données sur un autre ordinateur. Elle ne tient pas compte des mises à jour éventuelles et écrase la précédente version. Cette stratégie est utilisée lorsque les données changent rarement. Une fréquence est déterminée en fonction des besoins. Comme la mise à jour n'est pas immédiate, les données transmises lors d'un cliché ne peuvent servir que pour la consultation. Le site qui reçoit les données mises à jour ne pourra donc pas mettre lui-même les données à jour. Cette stratégie est donc utilisée quand les mises à jour se font sur la base primaire et que la réplication de données se fait sur les tables répliquées. Exemple de réplication par cliché :
1. Tous les mois, maj des tarifs par le directeur commercial

Siège social à Niort

2. Tous les mois, le siège transmet les nouveaux tarifs aux agences

Agence de Toulouse

3. maj de la table tarif

Table tarif (base primaire)

Table tarif (base « cliente »)

Agence de Blois
3. maj de la table tarif

Table tarif (base « cliente »)

b. La réplication asynchrone Avec ce type de réplication, les mises à jour effectuées sur un ordinateur sont répliquées plus tard sur un ou plusieurs autres ordinateurs. Les principales caractéristiques de ce type de réplication sont : • Elle permet aux sites de travailler en totale autonomie : Ainsi, il n'est pas nécessaire que les différents sites soient connectés entre eux tout le temps (cela est juste nécessaire lors des moments où les processus de réplication sont activés). Quand la réplication a lieu, tous les sites se retrouvent alors avec les mêmes données. • Elle est déclenchée à une heure programmée ou à la demande.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p51

Cette stratégie est donc utilisée quand les mises à jour de données sont déclenchées par une règle de gestion (tous les soirs, après la création de cinq clients, ). • La mise à jour n'étant pas immédiate, les données transmises lors d'une réplication asynchrone ne peuvent servir que pour la consultation. Le site qui reçoit les données mises à jour ne pourra donc pas mettre lui-même les données à jour.(dans la réalité, cela est cependant possible, mais cela risque d'engendrer des conflits gérés alors par l'administrateur grâce à un service de résolution de conflit (l'agent de fusion sous SQL Server)). Cette stratégie est donc utilisée quand les mises à jour se font sur les bases de données clientes et que la réplication de données se fait sur la base de données primaire. Exemple de réplication asynchrone :
3. maj des infos provenant des agences

Siège social à Niort

2. les infos clients sont transmises tous les soirs pour que le siège puisse passer les écritures

Agence de Toulouse

1. maj des infos sur les clients

Table client (base primaire)

Table client (base « cliente »)

Agence de Blois
1. maj des infos sur les clients

Table client (base « cliente ») c. La réplication synchrone Cette stratégie est utilisée quand les mises à jour de données entre les bases de données clientes et la base de données principale se font en temps réel. Il est aussi possible d'effecteur les mises à jour de la base de données principale vers les bases de données clientes en temps réel. • La mise à jour étant immédiate, les données transmises lors d'une réplication synchrone peuvent être mises à jour par plusieurs sites différents• Les sites doivent être tous connectés en permanence. • Cette stratégie est donc utilisée quand les mises à jour se font sur une base de données cliente et que la réplication de données se fait immédiatement sur la base de données principale et sur les autres bases de données clientes. Elle est aussi utilisée quand les mises à jour se font sur la base de données principale et que la réplication de don- nées se fait immédiatement sur les bases de données clientes.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p52

Exemple de réplication synchrone

3. maj immédiate des stocks

Siège social à Niort

Table client (base principale)

2. le stock maj est immédia-tement transmis au siège qui centralise la gestion des stocks

Agence de Toulouse

1. maj du stock après chaque vente

Table stock (base « cliente »)

4. le stock est mis à jour immédiatement dans les autres agences

Agence de Blois
5. maj du stock

Table client (base « cliente »)

4 Maintenance d'une base de données répliquée
Réplication par cliché ou asynchrone Risque de problèmes si deux sites mettent à jour la même information Maintenance plus difficile car les sites doivent toujours être accessibles réplication synchrone Données toujours mises à jour Maintenance plus aisée car les sites ne sont pas toujours en communication avec d'autres sites.

5 Distribution ou réplication
La solution la plus simple à installer est la distribution de données. En effet, aussi bien au point de vue technique que logiciel, l'installation d'une telle stratégie ne pose pas de problèmes particuliers. Par contre, cette solution ne conviendra pas si la quantité d'informations à communiquer est trop importante. En effet, le réseau va se mettre à « ramer Il et les délais de communication vont s'allonger. Suivant le type d'application, le délai acceptable peut varier de 1 à 2 secondes à une dizaine de secondes. Dans le cas où la solution de distribution de données ne convient pas, il convient alors de choisir une des trois stratégies de réplication. Aujourd'hui la solution distribuée convient donc à de petites structures réparties soit sur un seul site, soit sur un faible nombre de sites. De plus, le nombre de requêtes ne doit pas être trop important.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p53

6 Les données à répliquer
À partir des différentes vues du MOD général, il est possible de déterminer les groupes de données: données privées, données protégées et données partagées. Les données privées sont installées sur les postes de travail des acteurs concernés. Seules les données protégées et les données partagées sont concernées par la réplication. Comme nous travaillons maintenant sur une entreprise répartie sur plusieurs sites, les vues par type d'acteur ne sont pas suffisantes. Il faut les compléter par des vues par type de site. Exemple : Formulaire des groupes de données Type de site agence de Toulouse agence de Blois siège à Niort Entités Salarié Privée Ventes Protégée Protégée Consultable Produit Consultable Consultable Protégée Stock Partagée Partagée Partagée Formulaire des autorisations Type de site agence de Toulouse agence de Blois siège à Niort Entités Salarié CIMS Ventes CIMS CIMS I Produit I I CIMS Stock CIMS CIMS CIMS La table Salarié est ici installée à Niort sur le poste de travail du service Gestion du personnel. Les tables Ventes, Produit et Stock sont à répliquer.

7 Localisation des tables de référence
La table de référence est la table « principale» qui est répliquée. Dans notre exemple page précédente : • La table de référence Vente est située dans le type de site Agence, puisque ce sont les agences qui font les mises à jour. Dans chaque agence, il va donc se trouver une table principale. La réplication sera donc asynchrone et sera déclenchée, par exemple tous les soirs. Celle-ci permettra de consolider l'ensemble des ventes dans la table répliquée située au siège. Il n'y a pas de risque de conflit car les agences ajoutent chacune des ventes et ne font pas de mises à jour de données existantes. • La table Produit est située sur le site du siège. On considère que les mises à jour sont rares et sont donc effectuées au siège. La réplication sera faite par cliché et sera déclenchée, par exemple toutes les semaines. Les anciennes tables produits sont alors effacées dans les agences et sont remplacées en totalité par la nouvelle table. . • La table Stock est située au siège. En effet, les agences et le siège font des mises à jour sur la table. Pour la table Stock, la réplication sera synchrone car les mises à jour se font dans les deux sens et il est nécessaire de connaître en temps réelle stock des produits.

8 Conséquences de la réplication de données sur la création des clés primaires
Prenons le modèle relationnel suivant.
__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p54

Contrat (N° contrat, Date contrat, Montant contrat, N° agence #) Agence (N° agence, Nom agence, Adresse agence) La table contrat est répliquée en mode asynchrone tous les soirs sur la base principale. Si on utilise le modèle relationnel ci-dessus, on risque d'avoir deux contrats qui portent le même numéro. N° contrat 128 129 N° contrat 128 129 128 129 Agence de Toulouse Date Montant contrat contrat 22/4 3000 22/4 2500 siège Date Montant contrat contrat 22/4 3000 22/4 2500 22/4 4500 22/4 1800 N° agence 1 1 N° agence 1 1 2 2 N° contrat 128 129 Agence de Blois Date Montant contrat contrat 22/4 4500 22/4 1800 N° agence 2 2

Situation impossible à réaliser !

Pour éviter ce problème, il suffit de créer une clé primaire concaténée : N° contrat + N° agence : D'où le modèle relationnel suivant. Contrat (N° contrat + N° agence, Date contrat, Montant contrat, N° agence #) Agence (N° agence, Nom agence, Adresse agence) Conséquence sur notre exemple : Agence de Toulouse N° Date Montant contrat contrat contrat 128-1 22/4 3000 129-1 22/4 2500 Agence de Blois Date Montant contrat contrat 22/4 4500 22/4 1800

N° agence 1 1

N° contrat 128-2 129-2

N° agence 2 2

9 -Méthode pour répartir les données
• • • • Construire une vue du MOD général par site. Rappel: un site est une unité géographique où des acteurs exécutent des activités. Les données se trouvant sur plusieurs sites doivent être réparties. En fonction des contraintes techniques et financières, choisir un mode de répartition de données. En cas de réplication, Indiquer pour chaque table le lieu où se trouvent situées la table de référence et les tables répliquées. Les tables de référence se situent sur le type de site qui fait les mises à jour. En cas de mise à jour réalisée par plusieurs types de sites, il faut juger au cas par cas. Choisir pour chaque table son mode de réplication.

__________________________________________________________________________________________ Gestion des systèmes d’information 2ème année GEA Olivier Marcant (d’après « Organisation des SI » BTS CGO 1 et 2par JA Baronne ed Fontaine Picard) p55

You're Reading a Free Preview

Télécharger
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->