(masquer detail) (afficher detail)

Merise - Introduction (Données)

1) Système d'Information et méthode Merise

2) Modélisation conceptuelle des données

3) Modélisation logique des données

4) Modélisation physique des données

5) Bases de données

1) Système d'Information (Index)

organisation
ensemble de personnes ayant un objectif commun et mettant en oeuvre des moyens pour les atteindre (entreprise, association, etc.)
Système d'Information
ensemble des moyens humains, matériels et immatériels mis en oeuvre afin de gérer l'information au sein d'une organisation
système informatique
ensemble de technologie matérielles et logicielles mises en oeuvre pour garantir le bon fonctionnement du SI

Fonctions du SI relatives aux informations :

Le SI représente la mémoire de l'activité de l'organisation.

SI des organisations

Merise : méthode de construction des SI

Merise est une méthode créée dans les année 1970 permettant d'analyser et de concevoir les SI des organisations. Elle décompose l'activité de l'organisation en :

Techniques

Merise utilise des techniques (schéma) qui permettent de représenter ces élements selon 4 niveaux, du plus invariant (conceptuel) au plus sujet à modification (physique):
niveauinformationstraitements
Organisationconceptuel : QUOI ?MCDMCT
organisationnel : QUI ? QUAND ? OU ?MODMOT
Moyens techniqueslogique : COMMENT ?MLDMLT
physique : COMMENT ?MPDMOpT

Démarche générale

Ces techniques interviennent à certaines étapes de la démarche Merise
-EtapeDescriptionDonnéesFlux et Traitements
PlannificationSchéma directeurdéfinition des orientations générales--
ConceptionEtude préalableProposition de solutions d'organisationMLD - MCDMOT - MCT - MCF
Etude détaillée (conception générale, puis conception détaillée par domaine)spécification utilisateurs complètes du futur systèmeMLD - MCTMOT - MCT
RéalisationEtude techniquespécifications techniquesMLD, MPDMOpT
Production logicielleEcritures des programmes, création des bases de données, testsscript SQLAlgorithmes et programmes
Mise en serviceinstallation, formation, chargement des données--
MaintenanceSuivi, corrections, améliorations et évolution--
démarche Merise

Les modèles

Les modèles sont de représentations déstinées à représenter la réalité en la simplifiant, de manière a en conserver ce qui est utile. Les représentations sont essentiellement graphiques.

modele

2) Modèle Conceptuel de Données (Index)

Objectif : représenter les objets et faits de l'entreprise en terme d'informations manipulées

(+)
données
élément d'information
dictionnaire de données
tableau récapitulant un ensemble de données utiles à l'organisation
dépendance fonctionnelle
lien sémantique entre 2 données qui définit qu'une valeur unique de la 1ere détermine une et une seule valeur de la seconde. La 1ere est appelée 'source', la seconde 'but'. On note : donnee_source -> donnee_but (par exemple un numéro d'étudiant détermine de manière précise et unique un seul nom d'étudiant, le nom d'étudiant dépend fonctionnellement du numéro d'étudiant)

Les étapes

  1. recueil des informations : dictionnaire de données et règles de gestion (+)
    1. étudier l'énoncé : mettre en évidence les données brutes (éléments porteurs d'une valeur : texte, quantité, etc.)
    2. récupérer les données élémentaires (dans une liste de prénoms, le prénom est la donnée élémentaire, non répétée)
    3. alimenter le dictionnaire de données et préciser la nature de chaque donnée
    4. éliminer les synonymes (noms différents mais même signification)
    5. renommer les polysèmes (nom identique mais significations différentes )
    6. éliminer les données non pertinentes (pas utiles pour la gestion de l'organisation)
    7. éliminer les données calculées (à condition d'avoir les données élémentaires permettant de les calculer)
    8. classer les données alphabétiquement et leur attribuer un numéro d'ordre (nécessite une feuille dans un classeur ou un tableau dans un document texte...)
  2. définition des liens entre les données : liste des dépendances fonctionnelles et graphe des dépendances fonctionnelles (ou matrices des dépendances fonctionnelles) (+)
    1. lister les dépendances fonctionnelles directes (s'assurer que les valeurs des sources des DF aient des valeurs stables, et non pas sujettes à modification : sinon définir des sources stables supplémentaires comme idX où X correspond à l'entité) (+) Par exemple : un numéro de sécurité sociale peut être amené à changer, tout comme le SIREN d'une entreprise, un nom, etc.. Ils peuvent néanmoins faire l'objet d'une identification comme 'identifiant alternatif'
    2. éliminer les dépendances fonctionnelles transitives (si "P1 -> P2,P3" et "P2 -> P3", alors on peut éliminer P3 de la 1ère)
    3. s'interroger sur les données non utilisées et décider de leur avenir : soit des paramètres à conserver, soit des données inutiles à éliminer (s'en assurer !)
    4. représenter le Graphe des Dépendances Fonctionnelles
  3. représentation du modèle Conceptuel de Donnée (+)
    1. encadrer chaque DF source aves ses DF buts (non sources eux-mêmes de DF) : on obtient un regroupement des propriétés d'une entité
    2. nommer les entités
    3. choisir et souligner en trait plein les identifiants (source stables de DF dans chaque entité)
    4. souligner en trait discontinu les identifiants alternatifs ou candidats(source non stables de DF dans chaque entité)
    5. les DF sources composées de plusieurs propriétés deviennent des associations non hiérarchiques, qu'on nommer à l'aide d'un verbe
    6. les DF fortes deviennents des associations hiérarchiques
    7. utiliser les règles de gestion pour définir les cardinalités
    8. compléter le schéma avec des rôles sur certaines pattes des associations afin d'améliorer la lisibilité
    9. ce schéma est repris de manière normalisée (cf. éléments graphiques su modèle conceptuel)

Entités

entité
objet ayant une existance et un intéret pour l'organisation
propriété
caractéristique décrivant une entité
identifiant
une propriété particulière permettant d'identifier une occurrence d'une entité
identifiant alternatif
une propriété particulière permettant aussi d'identifier une occurrence d'une entité, mais qui n'est pas choisi comme clef primaire
occurrence d'entité
un exemplaire particulier d'entité avec ses propres valeurs de propriétés
occurrence de propriété
un exemplaire particulier de propriété avec sa propre valeur

Associations

association
relation entre plusieurs entités
identifiant d'association
jamais décrit explicitement, il est constitué des identifiants des entités participant à l'association et sa valeur doit être unique
association binaire
association entre 2 entités
association ternaire
association entre 3 entités (à vérifier)
association n-aires
association entre plus de 3 entités : bien s'en assurer...
occurrence d'association
un exemplaire particulier d'association, identifié de manière unique par les valeurs des identifiants des entités qui participent à l'association
propriété
caractéristique qui participe à la description d'une entité (ou d'une association)
cardinalités
quantification du nombre d'occurences d'une entité pouvant participer à une association (nombre minimal et maximal)
rôle
sens donné à une branche (appelée parfois "patte") entre une entité et une association (une association comporte toujours au moins 2 branches)
CIF
Contrainte d'Intégrité Fonctionnelle (association hiérarchique, association fonctionnelle) : permet de définir une contrainte d'unicité dans une association, entre une ou plusieurs occurrence d'entités et une occurrence d'une autre entité participant à cette association. Les associations hiérarchiques de cardinalités 1,1-1,N portent par défaut une CIF.
CIM
Contrainte d'Intégrité Multiple (association non fonctionnelle) : définit une association avec des cardinalités maximales à N sur chacune de ses branches
modele

Cas particuliers (+)

Modèle Organisationnel de Données

Le MOD prend en compte les contraintes organisationnelles afin de préciser leurs effets sur le MCD (ou ses sous-ensembles par poste ou service). Il peut introduirte le mode de persistance ou l'historisation de certaines données, un découpage du MCD réparti sur plusieurs postes de travail/servicesavec indication des modes d'accès au données (insertion, suppression, modification, lecture), et le niveau de partage (public, privé, etc.)

3) Modèle Logique de Données relationnel (Index)

Objectif : choisir un mode d'organisation des données

Les étapes

  1. application des règles de transformation du MCD en MLDr
  2. vérifier l'application des formes normales

Le MLD relationnel

Table (clef primaire, attribut, ...,clef candidate, #clef étrangère, ...)

où :

Les règles

Des règles de passage permettent la transformation mécanique du MCD au MLDr. Elles sont à appliquer strictement afin de ne perdre aucune information :
  1. entité : toute entité devient une table, son identifiant devient clef primaire de la table, les propriétés deviennent les attributs de la table, les identifiants alternatifs deviennents clefs candidates
  2. associations cardi 1,1 - 1,N : la table côté 1,1 reçoit l'identifiant côté 1,N comme attribut clef étrangère
  3. associations cardi 1,N - 1,N : une nouvelle table est créée, sa clef primaire est constituée des identifiant des tables participantes (on a donc une clef primaire unique, mais composée de plusieurs attributs), ces attributs sont clefs étrangères vers les tables d'origine, les propriéts sont récupérées
  4. associations cardi (1,1) - 1,N : la table côté (1,1) provient d'une entité faible et la clef étrangère reçue de la règle 1,1-1,N participe également à la clef primaire.
  5. Autres règles (+)
    • associations cardi 0,1 - 1,N : 2 solutions
      • soit : règle du 1,1 - 1,N
      • soit : une nouvelle table est créée, sa clef primaire est constituée par l'identifiant côté 0,1, l'attribut correspondant est clef étrangère, et elle a comme attribut l'identifiant côté 1,N (les propriétés, si certaines sont définies, sont conservées)
    • entités filles (spécialisation) : la table récupère l'identifiant de l'entité mère comme clef primaire; cet attribut est également clef étrangère vers la table d'origine
    • pseudo-entités : traitement classique par les règles précédentes, la pseudo-entité doit être considérée comme un entité à part entière ayant comme identifiant, celui de l'association centrale (id. des entités qui participent)

L'algèbre relationnelle

4) Modèle Physique de Données (Index)

Objectif : choisir un type de bases de données

  1. utilisation personnelle : Microsoft Access, OpenOffice Base
  2. utilisation d'un groupe de travail : MySQL, PostgreSQL, Oracle, IBM DB2, Microsoft SQL Server
Le modèle physique reprend les tables et met en évidence les contraintes d'intégrité d'identité (clef primaires) et référentielles (clefs étrangères vers clefs primaires) ainsi que la nature des colonnes des tables:
  1. tables et colonnes avec leurs natures
  2. contraintes d'intégrité (d'identité : clef primaire, référentielle : clef étrangère vers clef primaire)
Les index peuvent également être indiqués (en conservant, par exemple, le souligné pointillés)
Représentation :

Exemple :

5) Bases de données (Index)

Objectif : implanter la base de données

  1. utilisation d'interface graphique et du langage QBE : Microsoft Access, OpenOffice Base
  2. utilisation du langage SQL : MySQL, PostgreSQL, Oracle, IBM DB2, Microsoft SQL Server
Opérations à réaliser :
  1. créer les tables : colonnes et leurs natures, contrainte d'intégrité d'identité
  2. définir les contraintes d'intégrités référentielles
  3. mettre en oeuvre les autres contraintes définies dans le MCD : utilisation des déclencheurs (triggers)
  4. insérer des données à partir de fichiers existants (les données sources ont dû déjà être préparées afin d'être intégrées dans les tables de manière cohérente)
  5. vérifications, contrôles croisés
  6. Autres opérations importantes : configuration du SGBD et optimisation/sécurité (répartition des fichiers sur différents disques, etc.), mise en place et test des sauvegardes
Développement d'applications :
  1. définir des formulaires pour Créer, Interroger, Mettre à joour et Supprimer
  2. définir des requêtes pour essentiellement Interroger
  3. définir des rapports pour présenter les résultats