Modélisation et Conception des systèmes d Informationd MERISE École Supérieure de la Statistique et de l Analyse de l Information (ESSAI) Fatma CHAKER KHARRAT 1 Qu est ce qu un système? Un système est un tout constitué d éléments unis par des relations, leurs propriétés et les valeurs que peuvent prendre ces dernières, ainsi que son activité et l organisation qui en découle. Les fonctions du système d information 1- Recueil de l information (saisie ) 2- Mémorisation de l information (stockage dans des fichiers ou bases de données) 3- Exploitation de l information (traitement) 4- Diffusion de l information (édition) 2 Informations externes Décisions Système Système de pilotage (ou de décision) Système d informations Informations traitées Informations vers l extérieur Flux entrants Ordres, consignes Système opérant Informations collectées Flux sortants 3
Le système d information d dans l entreprise Système de pilotage Information représentation : information qui donne une représentation du réel Système d information Information décision Information interaction : information nécessaire au système opérant pour qu il fonctionne Système opérant 4 Démarche de modélisation d un d SI ❶ Analyse de la situation existante et des besoins Définition des limites du système à modéliser, Identification des éléments importants et les types d interaction entre ces éléments, Détermination des liaisons qui les intègrent en un tout organisé. ❷ Création d'une série s de modèles qui permettent de représenter tous les aspects importants 5 Démarche de modélisation d un d SI ❸ A partir des modèles, implémentation mentation d'une base de données Exprimer dans un langage de programmation approprié les équations décrivant les interactions entre les différents sous systèmes ❹ Simulation Avec des données fictives ou des jeux d essaies, on étudie le comportement dans le temps du système conçu 6
7 MERISE (Méthode d'étude et de Réalisation Informatique des Systèmes d'entreprise) Qu'est-ce que Merise? Démarche de construction de système d'information A quoi sert Merise? En ce qui concerne les données : A identifier le nombre et la nature des tables, les articulations et la ventilation des informations entre ces tables, afin que l'ensemble soit le plus efficace et évolutif possible, Pour les traitements : A identifier les fonctionnalités selon une approche "top / down" (du général au particulier), leur découpages et leurs enchaînements. MERISE (Méthode d'étude et de Réalisation Informatique des Systèmes d'entreprise) Démarche Merise se caractérise par une double démarche : par niveau d abstraction et par étape de construction. 8 Démarche par niveau d abstractiond 9
Démarche par niveau d abstractiond 10 Démarche par étape de construction 1- Approche globale du SI Schéma directeur 2- Étude des différentes solutions possible puis choix Étude préalable 3- Complément des spécifications du domaine Étude détailld taillée Dossier de spécifications fonctionnelles ou cahier des charges utilisateurs 4- Spécifications techniques complètes Étude technique Dossier de spécifications techniques ou cahier des charges de réalisation 5- Écriture des programmes Production 6- Tests, essais, formation utilisateur Mise en oeuvre 7- Corrections et adaptations du logiciel Maintenance 8- Contrôle de la conformité des résultats par rapport aux demandes 11 Contrôle de qualité Le Modèle Conceptuel des Données MCD 12
Le Modèle Conceptuel des Données (MCD) Basé sur le Modèle Entité-Association Ensemble de concepts pour modéliser les données d'une application (d'une entreprise) Ensemble de symboles graphiques associés Formalisé en 1976 par P. Chen Etendu vers E/R généralisé puis vers l'objet 13 Entité Une entité permet de modéliser un ensemble d'objets concrets ou abstraits de même nature. L occurrence d une entité est un élément individualisé appartenant à cette entité. 14 Entité client Occurrences Client_3 Client_3 003 003 Hammami Hammami Client_2 Ali Client_2 Ali 27,av hédi nouira 27,av hédi nouira 2037 002 2037 002 Tunis Saada Tunis Saada Client_1 nesima Client_1 nesima 41,av mohamed 41,av mohamed 3000 001 3000 001 Sfax Sallemi Sfax Sallemi Mohamed Mohamed 34,av hédi nouira 34,av hédi nouira 2030 2030 Tunis Tunis 15
Propriété (ou Attribut) Une propriété est une donnée élémentaire d'une entité. Propriété désignant le code postal d un client A l'intérieur des occurrences, les propriétés prennent des valeurs. A l intérieur de chaque occurrence, chaque propriété ne prend qu une seule valeur au maximum 16 Identifiant (ou Clé) Un identifiant aussi appelé clé est un attribut qui permet de retrouver une occurrence d'entité unique à tout instant parmi celles de l entité. Exemple: NVeh dans Voitures, NSS dans Personnes Un identifiant peut être constitué de plusieurs attributs (clé composée) Exemple: [N, Rue, Ville] pour Maisons [Nom, Prénom] pour Personnes 17 Identifiant (ou Clé) Le numéro du client joue le rôle de clé de l entité «Client» 18
19 Association (ou Relation) Une relation décrit un lien entre deux ou plusieurs entités. Chaque relation possède un nom, généralement un verbe à l'infinitif. En général une association relie deux entités ; elle peut toutefois relier une entité avec elle même (relation réflexive) ou relier trois voire n entités (relation ternaire / n-aire) Une relation peut avoir des attributs : on parle d association porteuse de données 20 Association : Exemples Ce MCD renseigne sur le fait quels sont les livres écrits par les auteurs Ce MCD renseigne sur le fait quelle matière est enseignée dans quelle classe par quel professeur pour une année scolaire donnée. 21
Cardinalité Les cardinalités précisent la participation de l'entité concernée à la relation. Le premier nombre indique la cardinalité minimale, le deuxième la cardinalité maximale. Cardinalité maximale : le nombre maximum de fois q une occurrence d'une entité participe à une relation. Cette cardinalité vaut souvent 1 ou n, avec n indiquant une valeur >1 Cardinalité minimale : le nombre maximum de fois q une occurrence d'une entité participe à une relation. Cette cardinalité vaut souvent 0 ou 1. 22 Cardinalité (Exemples) Exemple 1: Un client peut passer une ou plusieurs commandes Une commande ne concerne qu un et un seul client 23 Cardinalité (Exemples) Exemple 2 : Un client ne peut avoir qu une seule carte membre (card. 1) comme il peut ne pas en avoir (card. 0). Une carte membre appartient à un et un seul client 24
Remarques : Une relation ne peut pas être liée uniquement à des entités dépendantes ayant en plus une cardinalité maximale de 1!!! Faux Il faut réunir les propriétés des deux entités dans une seule. 25 Remarques : Une relation à cardinalité (1,1) n'est jamais porteuse de propriétés. Dans ce cas, les propriétés migrent dans l'entité portant cette cardinalité (1,1). 26 Le Modèle Conceptuel des Données Cas particuliers du MCD Cas de relation ternaires Chaque occurrence de la relation enseigner associe un professeur à une matière et une classe pour une année donnée. Ou encore, ce modèle nous permet de montrer pour chaque année scolaire quelle matière est enseignée dans quelle classe par quel professeur. 27
Le Modèle Conceptuel des Données Cas particuliers du MCD Généralement, si une ou plusieurs des entités liées à une relation ternaire possèdent une cardinalité maximale de 1, la modélisation n est pas optimisée Il faudrait mieux décomposer la relation ternaire, c.à.d. la représenter par 2 relations binaires. 28 Le Modèle Conceptuel des Données Les associations transitives CONTRAT NumContrat Concerner APPARTEMENT NumAppartement Appartenir 1,1 0,n 1,1 1,n PROPRIETAIRE NumPropriétaire.. 1,1 1,n Etablir 29 Le Modèle Conceptuel des Données Cas particuliers du MCD Cas de relation réflexiver Une relation réflexive, est une relation, dont les deux pattes sont liées à une même entité. En général, la signification des pattes d'une relation réflexive devrait être clarifiée par l'indication d'un rôle. Exemples : 30
Les extensions du formalisme E-AE MERISE 2 Concept de Généralisation/SpG ralisation/spécialisation Employé Num_E Nom_E Adr_E Entité générique Mensuel date_e salaire Vacataire Cout_H Nb_H Entités Spécialisées 31 Les extensions du formalisme E-AE MERISE 2 Identification Relative Toute entité doit être dotée d un identifiant. Certaines entités ont par ailleurs une existence totalement dépendante d autres entités. On peut alors avoir recours à un identifiant relatif. L identifiant d une facture est composé du numéro de chantier et du n de facture. Chantier Num_C Adr_C 1,n Figurer (1,1) Facture Num_F Date_F 32 Les extensions du formalisme E-AE MERISE 2 Contraintes d extension d sur les relations ou sur les entités Partition Contraintes s appliquant s aux sous-types d entitd entités Toutes occurrences du type d entités appartiennent à une seule occurrence du sous-type d entités Totalité Toutes occurrences du type d entités appartiennent à au moins une occurrence du sous-types d entités Exclusion Toute occurrence du types d entités appartient à au plus une occurrence du sous-types d entités. 33
34 Les extensions du formalisme E-AE MERISE 2 35 Les extensions du formalisme E-AE MERISE 2 Contraintes s appliquant s aux associations La contrainte d Exclusion La contrainte d'exclusion sur relation exprime le fait que deux occurrences d'entités ne peuvent pas participer simultanément à une même relation. Ent 1 Lien X Ent 2 Ent 3 Lien Exemple : Inscrire ETUDIANT Nom Prénom 0,n X 0,n MODULE Code Intitulé 0,n 0,n 36 Admis
Les extensions du formalisme E-AE MERISE 2 La contrainte de Totalité Participer PERSONNE Nom 0,n Prénom T 0,n Club Code Thème 0,n 1,n Animer La contrainte d égalité La contrainte d'égalité entre associations exprime le fait qu'une occurrence d une entité participant à une association, participe obligatoirement à l'autre association, et réciproquement. 37 Ent 1 Lien = Lien Ent 2 Ent 3 Les extensions du formalisme E-AE MERISE 2 La contrainte d inclusion La contrainte d inclusion entre association exprime le fait que toute occurrence d une association est implicitement occurrence d une autre. L inclusion n étant pas symétrique, le formalisme associé à cette contrainte met en valeur, parmi les deux ensembles, celui qui doit être inclus dans l autre. Intervenir PROF Nom Prénom 1,1 I 1,n COURS NumCours NomCours 0,n 2,2 Responsable La contrainte d inclusion assure que tout professeur responsable d une classe intervient dans la classe. 38 Le Modèle Conceptuel des Communications MCC 39
Le Modèle Conceptuel des Communications MCC Définition de l organisationl Délimiter le système : Identifier les Acteurs Un acteur est une personne morale ou physique capable d émettre ou de recevoir des informations. Les acteurs internes appartiennent au système d information étudié. Les acteurs externes n appartiennent pas au système d information mais sont l origine ou la destination de flux d informations reçus ou émanant du système d information. 40 Le Modèle Conceptuel des Communications MCC Organisation Acteurs Externes Acteurs Internes Organisation 41 Le Modèle Conceptuel des Communications MCC Diagramme Conceptuel des flux Acteur 1 MSG 1 Acteur 4 MSG 4 Acteur 2 MSG 2 Acteur 5 MSG 3 Acteur 6 MSG 5 Acteur 3 42
Le Modèle Conceptuel des Communications MCC 43 Le Modèle Conceptuel des Traitements MCT 44 Le Modèle Conceptuel des Traitements Acteur Dans le Modèle Conceptuel de Traitements, seuls les acteurs externes sont modélisés ; d une part parce qu on ne cherche qu à formaliser les traitements découlant d interactions avec l environnement Événement Un événement est un flux de nature quelconque ou un fait concourant au lancement d une opération. Un événement est généralement désigné par un verbe au participe passé ou par un substantif dérivé. 45
Le Modèle Conceptuel des Traitements Opération Une opération est une production de flux d information. Une opération est définie "immatériellement", sans contrainte organisationnelle. Elle décrit aussi bien la gestion manuelle, que la gestion automatisée. Une opération se décompose en actions. Action Une action est une fonction élémentaire. Entre les actions d une opération, il n y a pas d état d attente, et leur déroulement est séquentiel. 46 Le Modèle Conceptuel des Traitements Règle de gestion Une règle de gestion est une loi qui, à l échelle de l entreprise, va s appliquer systématiquement dans les divers cas qu elle est censée régir. Les règles de gestion servent à définir l ensemble des règles à respecter pour les actions. Une même règle de gestion peut être appliquée à plusieurs actions. Synchronisation Une condition de synchronisation est représentée par une condition booléenne liant les événements déclencheurs grâce aux opérateurs logiques " Et ", " Ou " et " Non ". L opération n est pas déclenchée si la condition n est pas réalisée. 47 Le Modèle Conceptuel des Traitements Règle d éd émission Une règle d émission définit la condition sous laquelle des événement résultats seront produits par une opération. Une opération peut avoir une ou plusieurs règles d émission, une règle gérant l émission de un ou plusieurs événements résultats. Une opération peut ne pas avoir de règle d émission. Dans ce cas, l émission des événements est inconditionnelle. 48
Le Modèle Conceptuel des Traitements Formalisme 49 Demande client Exemple MCT Événement déclencheur Traiter demande Quantité disponible Quantité indisponible Règle d émission Edition Facture Paiement client Commande produit Et Encaisser synchronisation opération Événement résultat Edition reçu 50 Livraison produit Le Modèle Organisationnel des Traitements MOT 51
Le Modèle Organisationnel des Traitements MOT = MCT + lieu + moment + nature Qui exécute? Acteurs (MCC) Quand exécute-t-on l opération? Agencement temporel Manuelle Automatique Interactive 52 Le Modèle Organisationnel des Traitements Formalisme 53 Le Modèle Logique des Données MLD 54
Le Modèle Logique des Données Niveau Conceptuel = Modèle Entité - Association Niveau Logique Modèle Hiérarchique 1980 Modèle Réseau Modèle Relationnel 55 Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation des entités Toute entité est transformée en une relation. Les propriétés de l'entité deviennent les attributs de la relation. L'identifiant de l'entité devient la clé primaire de la relation. Entreprise (No_Entreprise, Nom, Adresse, Code_postal, Localité) 56 Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation des relations binaires du type (x,n)-(x,1) (x,1) E1 Id_E1 x,n x,1 A E2 Id_E2 E1 (Id_E1, ) E2 (Id_E2,,Id_E1*) Clé étrangère 57
Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation des relations binaires du type (x,1)-(x,1) Cas d une relation binaire (0,1)-(1,1) E1 Id_E1 0,1 1,1 E2 E1 (Id_E1, ) A Id_E2 E2(Id_E2,, Id_E1*) Cas d une relation binaire (0,1)-(0,1) E1 Id_E1 0,1 0,1 A att A 58 E2 Id_E2 E1 (Id_E1, ) E2(Id_E2,, Id_E1*, atta) Ou encore E1 (Id_E1,, Id_E2*,attA) E2(Id_E2,) Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation des relations binaires du type (x,n)-(x,n) E1 Id_E1 x,n x,n E2 E1 (Id_E1, ) A E2(Id_E2,) Id_E2 att A(Id_E1*,Id_E2*, atta) A Transformation des relations ternaires E1 Id_E1 x,n A att A x,n x,n E2 Id_E2 E1 (Id_E1, ) E2(Id_E2,) E3(Id_E3,...) A(Id_E1*,Id_E2*,Id_E3*, atta) E3 59 Id_E3 Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation de plusieurs relations entre deux entités Les règles générales s'appliquent. On traite chacune des associations indépendamment des autres, ce qui peut donner lieu à l ajout de plusieurs références. Personne NoPersonne Nom Prénom Possède 0,n 1,n 1,1 0,n Habite Maison Adresse CodePostale Ville Personne (NoPersonne, Nom, Prénom, Adresse*) Maison(Adresse,CodePostale, Ville) Possède (NoPersonne*, Adresse*) 60
Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation des relations réflexivesr Cas d une relation réflexive (x,n)-(x,n) Société NoSociete Nom Capital 0,n mère Détenir PourcentageCapital 0,n filière Société(NoSociete, Nom, Capital) Détenir(NoSociete, NoSociete_mère, PourcentageCapital) 61 Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation des relations réflexivesr Cas d une relation réflexive (0,1)-(0,1) Personne NoRef Nom Prénom 0,1 époux Etre marié 0,1 épouse Personne (NoRef,Nom,Prénom,NoRef_Epouse*) Ou Personne (NoRef,Nom,Prénom,NoRef_Epoux*) 62 Le Modèle Logique des Données Règles de passage du MCD au MLD Transformation de l identifiant l relatif E1 Id_E1 x,n (1,1) A E2 Id_E2 E1 (Id_E1, ) E2(Id_E2,Id_E1*,...) 63
Les concepts étendus P 1 P 2 E 1 ES 1 P 1 ES 2 P 2 Table sur-type et disparition des sous-types Table sous-types et disparition du sur-type Table sur-type et sous-types 64 E1 (P 1, P 2, P 1, P 2 ) ES 1 (P 1, P 2, P 1 ) ES 2 (P 1, P 2, P 2 ) E 1 (P 1, P 2 ) ES 1 (P 1 #, P 1 ) ES 2 (P 1 #, P 2 ) Le Modèle Physique des Données MPD 65 Le Modèle Physique des Données Règles de passage du MLD au MPD Le passage MLD MPD se fait par les étapes suivantes: Implémentation physique de chaque table du MLD dans le SGBD utilisé. Pour chaque table, indiquer au SGBD quel(s) champ(s) constitue(nt) la clé primaire. Pour chaque table, indiquer au SGBD la (les) clé(s) étrangère(s), et la (les) clé(s) primaire(s) correspondante(s). 66
Le Modèle Physique des Données Pour générer le MPD, la plupart des SGBD actuellement sur le marché nous offrent 2 possibilités. ❶ Utilisation d'une ou de plusieurs interfaces graphiques, qui nous aident dans la création Des tables physiques, dans la définition des clés primaires et dans la définition des relations. 67 Le Modèle Physique des Données ❷ Utilisation de commandes spéciales, faisant partie d'un langage de définition de données (Ex: SQL-DDL) 68 CREATE TABLE Entreprises ( identreprise INTEGER NOT NULL, fldnom CHAR (20) NOT NULL, fldadresse CHAR (25) NOT NULL, fldcodepostal CHAR (7) NOT NULL, fldlocalité CHAR (20) NOT NULL, PRIMARY KEY (identreprise) CONSTRAINT PK_ENTREPRISE ); ); Bibliographie Joseph Gabay, 4ème Edition. MERISE et UML pour la modélisation des Systèmes d Informations. Nacer Boudjlida. Bases de Données et Systèmes d Informations. D. Nanci ; B. Espinasse. Ingénierie des systèmes d information MERISE. G. Panet & R. Letouche. Merise /2 Modèles et techniques Merise avancés. JP Matheron. Comprendre Merise. H.Tardieu A.Rochfeld R.Colletti. La méthode Merise - Principes et outils. D.Dionisi Editions. L essentiel sur Merise. 69