Cours Méthode de modélisation Merise

MERISE
1. présentation du système d’information
2. démarche de la méthode Merise
3. modèles de données
(a) diagramme des flux
(b) modèle conceptuel des données : MCD
(c) modèle logique des données : MLD
(d) présentation formelle du modèle relationnel
4. modèles des traitements
Une autre partie du cours est consacrée à UML.
Systèmes d’Information
L’information dans l’entreprise (version Merise) : Le système d’information est l’interface entre le système décisionnel et le système opérationnel :
Systèmes d’Information
Le système d’information est la mémoire de l’entreprise ; il sert d’interface entre le système décisionnel et le système opérationnel :
Retenir de ce schéma, la place d’interface du système d’information
Systèmes d’Information
On peut faire une lecture chronologique du schéma précédent :
1. La société Gaule Radiocom surveille le comportement de la concurrence ;
2. les durées des communications ont été relevées en permanenceet ont alimenté le système d’information ;
3. les têtes pensantes de Gaule Radiocom peuvent interroger lesystème d’information, faire des statistiques ;
4. le système de pilotage peut alors décider la plus judicieusebaisse de tarifs ;
5. qui sera répercutée sur le système opérant de la facturation...
Janvier 2001, la société Gaule Radiocom baisse ses tarifs ! 0.22e la minute au lieu de 0.28e; 0.60e le crédit-tempsa (1mn) au lieu de 0.74e (3mn) Une baisse de plus de 20% par minute de communication ! Pourquoi Gaule Radiocom se montre-t-elle aussi généreuse ??? ale crédit-temps correspond à la première tranche de facturation. Avant janvier 2001, toute communication impliquait la facturation d’une tranche initiale de 3mn à 0.74e. Passée ces 3mn, la facturation continuait par tranches d’1mn à 0.28e. |
Janvier 2001, Gaule Radiocom baisse ses tarifs !
0.22e la minute au lieu de 0.28e ;
0.60e le crédit-temps (1mn) au lieu de 0.74e (3mn)
Systèmes d’Information
L’informatique des années 80 était axée sur la production, la mémorisation et le traitement des données de l’activité de l’entreprise : Informatique Opérationnelle. Les années 90 marquent le développement de l’Informatique Décisionnelle. Les années 2000 sacrent l’avénement du réseau.
Informatique Opérationnelle : production et traitement de données : paie, comptabilité, commandes, factures, ...
Informatique Décisionnelle : Les données sur l’activité sont filtrées, historisées et traitées pour faciliter la prise de décision. Développement d’Infocentres renommés en Datawarehouse.
MERISE
1. présentation du système d’information
2. démarche de la méthode Merise
3. modèles de données
(a) diagramme des flux
(b) modèle conceptuel des données : MCD
(c) modèle logique des données : MLD
(d) présentation formelle du modèle relationnel
4. modèles des traitements
Analyse Informatique
La conception d’un Système d’Information est une tâche complexe et de haut niveau qui nécessite un bon pouvoir d’abstraction et la prise en compte d’un grand nombre de contraintes et d’un grand nombre de personnes. D’ou` la nécessité d’utiliser des méthodes ou méthodologies.
La méthode MERISE est une méthode (franc¸aise), développée dans les années 80, formalisée, complète, détaillée qui garantit (en principe !) une informatisation réussie. formalisée : utilisation d’outils logiques : graphes, règles, ...
complète : de la décision d’informatisation à la mise en œuvre effective,
détaillée : de la technique d’interview jusqu’au commentaire de programmes...
Analyse Informatique Les principales caractéristiques de la méthode MERISE sont : Une approche globale menée parallèlement sur les données et les traitements ; Une description du système d’information en trois niveaux : • le niveau conceptuel (le quoi) ; • le niveau organisationnel et logique (qui fait quoi et ou`) • le niveau physique (comment). |
Analyse Informatique Le processus de développement est découpé en étapes :
l’étude préalable : elle aboutit à une prise de décision d’informatisation, en cas de décision positive, elle est suivie par
l’étude détaillée : elle aboutit à un cahier de réalisation avec affectation des tâches
Réalisation : écriture des programmes et implantation des bases
Mise en œuvre et maintenance.
La structure de travail comporte des informaticiens, des représentants de la direction, des chefs de service, des utilisateurs finaux.
Analyse Informatique : étude préalable
• étude de l’existant ; règles de gestion
• Modèle Conceptuel des Données (MCD) et Modèle Organisationnel des Traitements (MOT) actuels
• diagramme des flux de documents
• proposition d’un MCD et d’un Modèle Conceptuel des Traitements (MCT)
• bilan qualitatif
=? cahier des charges
Analyse Informatique : étude préalable
La part hachurée représente ce que couvre chaque étape. L’étude préalable couvre presque tout le
niveau conceptuel, mais aussi un peu de niveau logique et physique.
Analyse Informatique : étude détaillée
• choix d’une organisation
• validation MCD, MCT
• proposition d’un MLD et d’un MOT
• optimisation, solutions dégradées
• =? affectation des tâches de réalisation
Analyse Informatique : étude détaillée
Analyse Informatique : réalisation
• étude technique et production logicielle
• mise en place et tests
• documentation, formation
Analyse Informatique : réalisation
MERISE
1. présentation du système d’information
2. démarche de la méthode Merise
3. modèles de données
(a) diagramme des flux
(b) modèle conceptuel des données : MCD
(c) modèle logique des données : MLD
(d) présentation formelle du modèle relationnel
4. modèles des traitements
Etude préalable
Analyse de l’existant : interviews, étude des documents, MCD et MOT actuels, mise en évidence des règles de gestiona,...
Diagramme des flux de documents.
Critique de l’existant.
Ebauche de solutions. Proposition du Modèle Conceptuel des Données et du Modèle Conceptuel des Traitements Rédaction du cahier des charges.
ales règles de gestion expliquent le fonctionnement de l’entreprise, les contraintes du problème, la méthode actuelle pour le traiter...
Enoncé pour un exemple de diagramme des flux Une société de transport en commun... un accident... Règles de gestion pour le traitement de l’accident : • Le conducteur remplit une déclaration d’accident. Il conduit le bus à l’atelier qui établit un devis de réparation. • Le service administratif définit la responsabilité selon la déclaration d’accident. • Trois cas sont envisagés – prise en charge par les assurances : déclaration et devis sont transmis à l’assurance qui règle la note. – responsabilité du conducteur : la société indemnise l’accidenté sur présentation des justificatifs. – responsabilité du tiers : c’est lui qui paie l’addition... |
Exemple de diagramme des flux
Circulation chronologique des documents entre les intervenants.
scénario “règlement par l’assurance” : 1,2,3,4 scénario “règlement par la société” : 1,2,5,6 scénario “règlement par le tiers” : 1,2,7,8
MERISE
1. présentation du système d’information
2. démarche de la méthode Merise
3. modèles de données
(a) diagramme des flux
(b) modèle conceptuel des données : MCD
(c) modèle logique des données : MLD
(d) présentation formelle du modèle relationnel
4. modèles des traitements
Modèle conceptuel des données
Objectif : le MCD a pour but de modéliser les données (aspect statique) mémorisées dans le système d’information ;
Caractéristiques : Représentation graphique des données à un niveau conceptuel, c’est-à-dire, sans se préoccuper ni des contraintes d’organisation, ni du gestionnaire de bases de données utilisé, ni des traitements ;
MCD Merise : correspond au modèle Entité - Association.
Modèle conceptuel des données Construction d’un MCD Quand : dans l’étude préalable : MCD de l’existant et ébauche du MCD de la nouvelle solution ; dans l’étude détaillée : MCD complet de la nouvelle solution. Préalable : avoir explicité les règles de gestion, avoir établi un diagramme des flux, avoir construit un dictionnaire des données |
Modèle conceptuel des données les objets ou entités
• Une entité est la représentation d’un objet matériel ou immatériel pourvu d’une existence propre et conforme aux choix de gestion de l’entreprise.
• Une occurrence d’une entité est une instance (un représentant) de l’entité dans le monde réel.
• Une propriété (ou attribut) est une donnée élémentaire qu’on perc¸oit sur l’entité.
• L’identifiant d’une entité est une propriété (ou un ensemble de plusieurs propriétés) de l’entité telle que, à chaque valeur de l’identifiant, correspond une et une seule occurence de l’entité. Il peut être créé ex nihilo.
MCD : un exemple
Les règles de gestion (simplifiées) :
• Les étudiants ont une identité (nom, prénom, adresse...).
• Les enseignants ont une identité.
• Les étudiants suivent des cours mais ne suivent pas tous les cours.
• Les cours sont hebdomadaires et ont une heure de début, une durée, une heure de fin ; les horaires ne doivent pas se superposer.
• Les cours sont assurés par un seul enseignant.
MCD : suite de l’exemple
Le dictionnaire des données :
• Nom étudiant, texte, Elémentaire, 30 caractères,
• Nom jeune fille, texte, E, 30 caractères, vide autorisé,
• Numéro étudiant, texte ?, E, 17 caractères,
• ...
• Intitulé cours, texte, E, 70 caractères,
• Jour, numérique, E, entier, 1 pour lundi, 2 pour mardi...
• Heure Début, numérique, E, réel, 7 ? hd ? 20
• Durée, numérique, E, réel, 0 ? d ? 5 • Heure Fin, numérique, Calculé, réel, hf = hd + d
• ...
Modèle conceptuel des données
Règles à vérifier sur les entités (à appliquer avec bon sens)
1. Toute propriété est élémentaire ;
2. Une propriété ne doit pas être “instable”, pas “calculable” ;
3. Toute propriété d’une instance aura au plus une valeur ;
4. Une propriété doit permettre d’éviter la redondance des valeurssur l’ensemble des instances ;
5. Toute entité possède un identifiant ;
6. Toute propriété dépend (directement) de l’identifiant ;
7. Toute propriété dépend de tout l’identifiant ;
Modèle conceptuel des données les associations • Une association est une relation que les règles de gestion établissent entre deux entités (ou plus). • Une occurrence d’une association est une instance de l’association dans le monde réel. • Une association peut posséder des propriétés. Règles à vérifier sur les associations : règles des entités. L’identifiant d’une association est la concaténation des identifiants des entités qu’elle relie. |
Modèle conceptuel des données les cardinalités La cardinalité d’une entité par rapport à une association s’exprime sous forme d’un couple : (cardinalité minimale : cardinalité maximale) cardinalité minimale : c’est le nombre minimal de fois ou` une occurrence d’un objet participe aux occurrences de l’association ; elle vaut très souvent 0 ou 1. cardinalité maximale : c’est le nombre maximal de fois ou` une occurrence d’un objet participe aux occurrences de l’association ; elle vaut 1, un entier fixé ou n (“n” pour indiquer l’impossibilité de fixer une borne maximale). |
Modèle conceptuel des données les cardinalités
EntitéA EntitéB
cmA : Vous l’obtenez en répondant à la question “quand je considère un élément de l’entité A, combien d’éléments de l’entité B lui sont obligatoirement associés ?”.
cMA :“quand je considère un élément de l’entité A, combien d’éléments de l’entité B lui sont associés au maximum ?”.
cmB et cMB : Symétriquement, “quand je considère un élément de l’entité B, combien d’éléments de l’entité A lui sont associés, au minimum (cmB) et au maximum (cMB) ?”.
étudiants
0:nNoEtudiant nom
nom jeune fille prénom adresse
Modèle conceptuel des données Vérification d’un MCD Vérifier : • les règles sur les entités ; • les règles sur les associations ; • les règles globales : 1. Une propriété ne figure qu’une fois dans le MCD ; 2. Les propriétés calculées ne figurent pas dans le MCD (maisil faut s’assurer qu’avec le MCD on puisse les calculer) ; 3. On ne fait pas figurer les associations qui se déduisent partransitivité. |
MCD : un exercice (gestion de commandes)
Les règles de gestion :
• Le magasin vend des produits à des clients.
• Les produits possèdent une référence (un code), un libellé et un prix unitaire.
• Les clients ont une identité (nom, prénom, adresse...).
• Les clients passent des commandes de produits. On mémorise la date de la commande.
• Pour chaque commande, le client précise une adresse de livraison.
• La commande concerne un certain nombre de produits, en une quantité spécifiée pour chaque produit.
MCD : suite de l’exercice Le dictionnaire des données : • Code Produit, texte, E, 5 caractères, • Libellé, texte, E, 40 caractères, • Prix, numérique, E, réel, 0 ? prix, • Nom client, texte, E, 30 caractères, • Adresse, texte, E, 40 caractères, • ... • Date Commande, numérique, E, date, • Adresse livraison, texte, E, 50 caractères, • Quantité commandée, numérique, E, entier, 0 ? quantite´ • Nombre produits commandés, numérique, C, entier, nombre = compte(Produits commandes´ ) |
Modèle conceptuel des données - un exemple
Règles de gestion pour une bibliothèque
• On appellera œuvre une création littéraire.
• Une œuvre a un auteur au minimum. Elle peut faire l’objet de plusieurs éditions (première édition, réédition, livre de poche...).
• Une édition possède un ISBN unique. Elle peut contenir plusieurs œuvres (recueil, anthologie...). Elle est faite par un seul éditeur.
• Un livre peut exister en plusieurs exemplaires dans la bibliothèque. On ne mémorise pas d’informations sur des œuvres qu’on ne possède pas en bibliothèque ; mais, si un livre disparaˆ?t, on ne supprime pas ce qu’on avait déjà enregistré.
Modèle conceptuel des données - un exercice Gestion de réservations pour des spectacles de théâtre.
• Dans la région, il existe de nombreuses salles de spectacle qui ont un nom et se situe dans une ville.
• Pour gérer les réservations, on limitera les informations concernant un spectacle à son titre et au nom de compagnie.
• Un spectacle peut effectuer une tournée dans plusieurs salles. Mais à une date donnée, il ne peut avoir lieu que dans une seule salle. Pour nommer les entités, on appellera soirée un spectacle donné à une date donnée.
• Les spectateurs possèdent une identité et une adresse. On voudra savoir si les spectateurs vont principalement dans des salles de leur ville.
• Ils peuvent réserver plusieurs places pour une soirée donnée.
Modèle conceptuel des données - un exercice
Règles de gestion pour une chaˆ?ne de supermarchés (exam 03). On propose des cartes de fidélité et on mémorise toutes les ventes.
• Dans l’entité Produits, le prix de revient est identique pour tous les magasins de la chaˆ?ne ; le prix de vente dépend du magasin.
• Dans l’entité Etiquettes, on mémorise le prix de vente d’un produit dans un magasin, pour une période donnée ; le prix actuel se repère par une date de fin particulière : 31/12/2100.
• L’entité PassagesCaisse représente le passage d’un client à une caisse d’un supermarché.
• Certains achats ne seront pas associés à un client physique. On a prévu un client fictif (Monsieur Nobody) dont la fiche existe dans la table des clients et qui remplacera les clients dont on ne connaˆ?t pas l’identité. Toutes les ventes des magasins sont donc mémorisées.
Modèle conceptuel des données - exercice
Moins naturelle, la solution suivante serait peut-être meilleure.
Au lieu d’associer, un ticket de caisse (PassagesCaisse) à une liste de produits, le ticket est directement associé aux étiquettes des produits achetés.
Une étiquette étant associée à un produit et à un magasin, on retrouve aisément la liste des produits achetés et le lieu.
Modèle conceptuel des données - un exercice
Règles de gestion supplémentaires.
• Les clients proviennent de toutes les villes avoisinantes ; le code postal pourra être pris comme identifiant. Le supermarché est situé dans une localité et on supposera qu’il est impossible qu’aucun client ne vienne de cette localité.
• Des hotesses d’accueil sont employées aux caisses. Il y a forcément une hotesse à la caisse lors du passage du client. Une hotesse peut changer de caisse selon les besoins, selon l’affluence... Lorsqu’elle prend la responsabilité d’une caisse, elle entre son numéro d’identification et tous les passages à cette caisse lui sont attribués jusqu’à ce qu’elle quitte la caisse ; on ne crée pas d’entité pour les caisses. Une hotesse travaille toujours dans le même supermarché.
Modèle conceptuel des données Construction d’un MCD FAQ : Frequently Asked Questions • dois-je introduire un nouvel identifiant ? • les propriétés étant élémentaires, quel niveau de décomposition atteindre ? • faut-il multiplier les entités ? • est-ce une entité ou une association ? • cardinalité (0:n) ou (1:n) ? |
FAQ : réponses
• Un identifiant est obligatoire.
• Le niveau de décomposition dépend des besoins en interrogation de la base.
• Même raisonnement ! Plus il y aura d’entités, plus le développement sera lourd... Ne créez pas d’entités inutiles. Mais vous devez vérifier les règles des entités.
• Si une association contient de nombreuses propriétés ou si elle relie trois entités (ou plus), envisagez une entité. Si deux entités sont reliées par des cardinalités 1:1, regroupez-les en une seule.
• Répondre à la question “a` un élément de cette entité, combien puis-je associer, au minimum, d’éléments de l’autre entité ?”. Sachez toutefois qu’elles seront traitées de la même fac¸on lors du passage au MLD.
MCD : quelques exemples particuliers • Une association peut être ternaire. Exemple : Vendeurs, Lieux, Acheteurs reliées par vente. Posez-vous alors la question “et si je rempla¸cais l’association par une entité, ne serait-ce pas plus clair ?”... une entité ActesDeVente. • Une association peut être réflexive. Exemple : l’entité Individus reliée avec elle-même par l’association filiation. • Deux entités peuvent être reliées par plusieurs associations. Exemple : TrajetsSNCF reliée à Gares par les associations GareDépart, GareArrivée, Etapes • Les cardinalités, bien qu’étant très souvent 0:1, 1:1, 0:n ou 1:n, peuvent avoir d’autres valeurs. Exemple du tiercé : Parieurs Tickets ChevauxPartants |
Extensions du modèle conceptuel des données
L’association présence représente la liste des présents au moment de l’examen et l’association évaluation représente le relevé des notes fourni par l’enseignant, après correction.
Pourrait-on indiquer qu’un étudiant présent doit avoir une note ?
Extensions du modèle conceptuel des données
Pourrait-on indiquer que le directeur doit être un enseignant nommé dans l’UFR ?
Extensions du modèle conceptuel des données
Pourrait-on indiquer qu’un encadrant doit être un enseignant ?
Extensions du modèle conceptuel des données
Pourrait-on indiquer que le pilote d’un vol est obligatoirement différent du copilote ?
Extensions du modèle conceptuel des données
Pourrait-on indiquer qu’un employé de l’université est soit un enseignant, soit un administratif (et forcément l’un ou l’autre) ?
Extensions du modèle conceptuel des données
On peut exprimer
• l’égalité (=), | E1 = E2 |
• l’inclusion (I), orienté | E1 ? E2 |
• l’exclusion (X), | E1 ?E2 = ? |
• la totalité (T), | E1 ?E2 = E |
• l’exclusion et totalité. E1 ?E2 = ? etE1 ?E2 = E
sur les associations ou sur les arcs de l’association
Il est aussi possible de composer des associations pour indiquer une contrainte sur la composition.
Contraintes d’intégrité fonctionnelle
Il y a contrainte d’intégrité fonctionnelle quand la connaissance d’une occurence dans une (ou plusieurs) entité(s) détermine la connaissance de l’occurence associée dans l’autre entité.
Cela ressemble à des cardinalités 1:1 sur une relation qui serait associée a` ou détermine... mais on n’a peut-être pas envie de concrétiser cette relation dans la base de données.
C’est une contrainte ; il faudra vérifier qu’elle est réalisée.
Contraintes d’intégrité fonctionnelle : exemple
Dans une base de données sur les restaurants, un plat est unique ; il n’est associé qu’à un seul restaurant. Le cassoulet de La tour d’argent est différent du cassoulet de L’hu^?trière.
Dans les relations, on fait figurer qu’un plat peut être à la carte, au menu du jour ou dans les deux ; le menu du jour pouvant proposer plusieurs plats. On fait figurer qu’un restaurant propose une carte, ou un menu du jour ou les deux.
Mais pour indiquer, qu’un plat est associé à un seul restaurant, on peut le faire par une C.I.F.
Contraintes d’intégrité fonctionnelle
Dans le cas des relations ternaires, mettre en évidence une C.I.F.
permet de faire apparaˆ?tre des propriétés qui n’étaient pas indiquées.
Exemple : un élève suit un niveau scolaire chaque année.
MERISE
1. présentation du système d’information
2. démarche de la méthode Merise
3. modèles de données
(a) diagramme des flux
(b) modèle conceptuel des données : MCD
(c) modèle logique des données : MLD
(d) présentation formelle du modèle relationnel
4. modèles des traitements
Modèle logique des données le MCD a pour but de modéliser les données (aspect statique) mémorisées dans le système d’information ; le MLD (Modèle Logique des Données) tient compte des choix concernant le système de gestion des données utilisé dans l’entreprise. Le plus utilisé est le modèle relationnel associé aux bases de données relationnelles (Oracle, Informix, SQLserver, ..., Access, Foxpro, Paradox, ... HSQL, mySQL, postgreSQL...) |
Modèle logique des données Modèle relationnel
• Le domaine est l’ensemble des valeurs que peut prendre une donnée.
• Une table porte un nom et est composée d’attributs prenant leurs valeurs dans les domaines correspondants. Une table est un sous-ensemble du produit des domaines ; une table est donc un ensemble d’enregistrements (ou tuples, ou lignes).
• Une clé est constituée de 1 ou plusieurs attributs telle que une valeur de la clé détermine exactement l’enregistrement.
• Toute table possède une clé primaire et, éventuellement, des clés candidates.
Modèle logique des données le passage du MCD au MLD Pour les entités. Toute entité devient une table, les propriétés de l’entité sont les attributs de la table, l’identifiant de l’entité est la clé primaire de la table. Pour les associations. Cela dépend des cardinalités. Deux cas sont possibles : • association : la relation est matérialisée par l’ajout d’une clé étrangère. • association : la relation donne lieu à la création d’une table. • les cardinalités 0:1 (resp. 0:n) se traitent comme les cardinalités 1:1 (resp. 1:n). |
Modèle logique des données
Modèle logique des données : cas particuliers
1:1 1:1
devient
tableAB IdfAB
propriétéA propriétéB propriétéR
MLD : quelques cas particuliers Si plusieurs associations relient deux entités, on traite chacune des associations indépendamment des autres, ce qui peut donner lieu à l’ajout de plusieurs références. Exemple : TrajetsSNCF (NoTrajet, HeureDépart, HeureArrivée, RefGareDepart, RefGareArrivee). Les cardinalités k:k donnent aussi lieu à l’ajout de plusieurs références. Exemple du tiercé : Tickets (NoTicket, DatePari, RefCheval1, RefCheval2, RefCheval3). |
Modèle logique des données Optimisation du MLD
Le système de gestion des données doit répondre au souci d’une gestion sure des données. Ceci est assuré par la construction des MCD et MLD. Mais cette gestion se doit aussi d’être efficace. Par conséquent, il faut optimiser le MLD, c’est-à-dire, par exemple :
• les jointures étant couˆteuses, supprimer les tables inutiles ;
• parfois, il peut être utile d’ajouter des données calculées pour accélérer certains traitements ;
• il peut être intéressant de gagner de l’espace mémoire, en ne respectant pas les règles de transformation MCD ? MLD.
Modèle logique des données : optimisation
Les cardinalités 0:1 se traitent comme les cardinalités 1:1.
Modèle logique des données : optimisation
Les cardinalités 0:1 signifient qu’on gère seulement l’emprunt actuel. On ne mémoriserait pas la date de retour puisqu’au retour d’un exemplaire, on supprime la fiche d’emprunt.
Les cardinalités 0:n signifient qu’on gère l’historique des emprunts.
Modèle logique des données : optimisation
Il est assez fréquent qu’une association ayant une date (une heure, une année...) comme propriété, cache une relation ternaire optimisée.
Modèle logique des données Contraintes d’intégrité
de structure : valeur de la clé primaire unique et toujours définie,
de domaine : les valeurs prises par un attribut doivent vérifier des contraintes,
de référence : les valeurs d’une clé étrangère doivent correspondre à des valeurs existantes dans la table d’origine.
La vérification des contraintes assurent que la base reste intègre. Cette vérification s’effectue, soit directement par le système de gestion de bases de données utilisé (quand c’est possible), soit par l’écriture de programmes.
MERISE
1. présentation du système d’information
2. démarche de la méthode Merise
3. modèles de données
(a) diagramme des flux
(b) modèle conceptuel des données : MCD
(c) modèle logique des données : MLD
(d) présentation formelle du modèle relationnel
4. modèles des traitements
Modèle logique des données Modèle relationnel
Le modèle relationnel est bien défini mathématiquement.
Opérations sur les tables :
1. le produit,
2. la projection ou sélection verticale,
3. la sélection ou sélection horizontale,
4. la différence,
5. l’union.
Modèle relationnel (exemple) Soient la table A ayant pour champs A1, A2, A3 et la table B ayant pour champs B1, B2, B3. A1 A2 A3 B1 B2 B3 01 aaa ?1 01 bbb ?1 02 ccc ?2 01 ccc ?2 03 bbb ?3 04 aaa ?3 04 aaa ?4 02 aaa ?4 ... ... ... ... ... ... |
Modèle relationnel (exemple)
Le produit de la table A par la table B est
A1 A2 A3 B1 B2 B3
01 | aaa | ?1 | 01 | bbb | ?1 | ||
01 | aaa | ?1 | 01 | ccc | ?2 | ||
01 | aaa | ?1 | 04 | aaa | ?3 | ||
... | ... | ... | ... | ... | ... | ||
02 | ccc | ?2 | 01 | bbb | ?1 | ||
02 | ccc | ?2 | 01 | ccc | ?2 | ||
02 | ccc | ?2 | 04 | aaa | ?3 | ||
... | ... | ... | ... | ... | ... | ||
03 | bbb | ?3 | 01 | bbb | ?1 | ||
... | ... | ... | ... | ... | ... | ||
Modèle logique des données : modèle relationnel • Les opérations de base permettent de définir une opération fondamentale : la jointure ; la jointure est un produit suivi d’une sélection. • le résultat d’une jointure est une table sur laquelle on peut effectuer de nouvelles opérations : produit, sélection, projection, jointure, ... • il existe également des opérations de groupe et de calcul sur les groupes, • les jointures sont des opération couˆteuses, elles peuvent être accélérées à l’aide d’index, on définit des index sur les champs pour lesquels il y aura des jointures fréquentes. | |||||||
Modèle relationnel (exemple)
La jointure de la table A et de la table B sur A1=B1 est
A1 A2 A3 B1 B2 B3
01 | aaa | ?1 | 01 | bbb | ?1 | ||
01 | aaa | ?1 | 01 | ccc | ?2 | ||
02 | ccc | ?2 | 02 | aaa | ?4 | ||
04 | aaa | ?4 | 04 | aaa | ?3 | ||
... | ... | ... | ... | ... | ... | ||
Modèle relationnel (exemple) La jointure de la table A et de la table B sur A2=B2 est A1 A2 A3 B1 B2 B3 01 aaa ?1 04 aaa ?3 01 aaa ?1 02 aaa ?4 02 ccc ?2 01 ccc ?2 03 bbb ?3 01 bbb ?1 ... ... ... ... ... ... La jointure de la table A et de la table B sur A3=B3 est vide. | |||||||
Modèle relationnel
Une requête est principalement une jointure suivie d’une projection, éventuellement suivie de sélections, de regroupements et de calculs de groupes.
Quand, dans une requête Access, vous ouvrez une table non reliée aux autres, la jointure correspond à un produit sans sélection...
Quand vous ouvrez une table non nécessaire, la jointure est faite, même si, par projection, les colonnes de la table non nécessaire n’apparaissent pas... Et le résultat de la requête peut être erroné !
MERISE
1. présentation du système d’information
2. démarche de la méthode Merise
3. modèles de données
(a) diagramme des flux
(b) modèle conceptuel des données : MCD
(c) modèle logique des données : MLD
(d) présentation formelle du modèle relationnel
4. modèles des traitements
Modèle Conceptuel des Traitements
Niveau Conceptuel : on ne tient pas compte de l’organisation ;
Les Traitements : partie dynamique du Système d’Information ; les traitements sont la traduction en actions des règles de gestion de l’entreprise ;
le MCT : est une représentation schématique de l’activité d’une entreprise indépendamment des choix d’organisation et des moyens d’exécution.
Modèle Conceptuel des Traitements
• Un processus est un sous-ensemble de l’activité de l’entreprise dont les points d’entrée et de sortie sont stables et indépendants de l’organisation ;
• Une opération est un ensemble d’actions exécutables sans interruption ;
• Un événement est une sollicitation (externe ou interne) du Système d’Information auquel celui-ci doit réagir ;
• Une synchronisation d’événements est une condition logique nécessaire au déclenchement d’une opération ;
• Un résultat est le produit d’une opération, événement interne qui peut être événement déclencheur d’autres opérations.
Modèle conceptuel des traitements Construction d’un MCT
Quand : dans l’étude préalable : MCT de l’existant et ébauche du MCT de la nouvelle solution ; dans l’étude détaillée : MCT complet de la nouvelle solution.
Préalable : avoir explicité les règles de gestion ; avoir établi un diagramme des flux, c’est-à-dire une représentation graphique de la circulation des informations entre les différents acteurs de l’entreprise ;
Règles : Une opération est une suite ininterrompue d’actions ; aucun événement externe ne peut l’interrompre ; aucun résultat interne à une opération ne peut conditionner la suite de ses actions.
Remarque : Une application réelle est souvent constituée d’une juxtaposition de petits MCT.
Modèle Conceptuel des Traitements : exemple
Dans une administration, les promotions sont traitées selon les règles de gestion suivante :
1. toute demande doit subir un examen préalable pour savoir si elle est recevable ;
2. l’examen d’une demande recevable ne peut se faire qu’aprèsrapport du supérieur hiérarchique ;
3. après examen du dossier, la demande sera accordée ou refusée.
Modèle Conceptuel des Traitements : exemple
Première représentation de l’activité : le diagramme des flux, circulation chronologique des informations entre les intervenants.
scénario “dossier rejeté” : 1,2 scénario “demande rejetée” : 1,3,4,6 scénario “demande acceptée” : 1,3,4,5
Modèle Conceptuel des Traitements : autre exemple
Règles de gestion pour l’emprunt de livres dans une bibliothèque :
1. L’emprunteur devrait présenter sa carte d’adhérent, mais, àdéfaut, on acceptera toute pièce d’identité attestant de l’adresse de la personne ;
2. l’emprunteur choisit ses livres dans les rayons et passent lesenregistrer à l’accueil ;
3. les références du livre sont collées sur chaque exemplaire.
• processus : emprunt de livres
• opérations :
– demander nom, prénom
– les saisir rechercher le numéro d’adhérent, l’afficher demander confirmation
– demander la référence du livre emprunté
– saisir la référence mémoriser l’emprunt et recommencer
• événements : nom donné, numéro adhérent affiché, numéro adhérent confirmé, côte livre demandé, côte livre
• synchronisation : no adh. affiché ET no adh. confirmé
• résultat : numéro adhérent affiché est le résultat de l’opération rechercher le numéro d’adhérent.
Modèle Organisationnel des Traitements : MERISE pur On prend en compte l’organisation. On précise :
• affectation des traitements aux différents postes de travail ;
• enchaˆ?nement des traitements ;
• niveau et type d’automatisation des traitements :
– manuel
– automatisé :
? temps réel (interactif, conversationnel)
? temps différé (traitement “batch”)
Modèle Organisationnel des Traitements “orienté traitement interactif”
Le niveau de description des traitements dépend de la phase (étude préalable ou étude détaillée). Pour les traitements automatisés, on ajoute dans l’étude détaillée les informations suivantes dans le
MOT :
• le traitement est découpé en unités de traitements (UT) ;
• les entrées nécessaires à chaque UT ;
• les tables concernées par chaque UT ;
• pour chacune des tables, le type d’accès (lecture, écriture, lecture-écriture) ;
• les résultats produits par UT ;
• les droits des utilisateurs.
Modèle Organisationnel des Traitements Représentation pour les traitements automatisés
Le MOT reprend le même type de schéma que le MCT en plus
détaillé. Les unités de traitement peuvent s’enchainer. Une information fournie en résultat d’une unité de traitement sert alors d’entrée à une autre unité.
tables utilisées en écriture, lecture ou lecture/écriture
Etude Technique et Réalisation´
Modèle physique des données : le niveau physique concerne
l’administrateur de la base ; on définit les tables, les contraintes d’intégrité, les index, les requêtes, les vues (si différents niveaux d’utilisateurs), ... ; une partie importante est prise en charge par le logiciel
Modèle physique des traitements : On précise l’organisation générale de l’application, la nature des écrans et leurs enchaˆ?nements, les spécifications des programmes, ...
Etude Technique et Réalisation´
• Il faut structurer l’application, c’est-à-dire regrouper les unités de traitement dans des ensembles cohérents. Dans la réalisation, on utilisera un type d’interface ou un autre selon les capacités de l’équipe de développement et les habitudes des futurs utilisateurs : menus déroulants ; menus pages ; barres d’outils ; ...
• Les choix doivent être cohérents au sein de l’application et permettre une navigation aisée dans les applications.
• Le développement se fait par modules, des tests devant être effectués à chaque étape de développement.
Récapitulatif Etude préalable :´ MCD et MCT existant ; diagramme des flux ; ébauche MCD et MCT nouvelle solution ; évaluation et décision ; Etude détaillée :´ MCD, MLD, MCT, MOT complets de la nouvelle solution ; Etude technique :´ choix techniques et mise en place d’un cahier des charges de réalisation ; Réalisation : programmation et tests ; Mise en œuvre et maintenance : implantation ; saisie des données ; formation et cahier d’utilisation ; cahier de maintenance. |
Informatique de Gestion - Conclusion
• Présentation d’une méthodologie de conception de Systèmes d’Information. N’oubliez pas que les outils présentés dans ce cours sont utilisables hors de tout contexte informatique (MCT, MOT, diagramme des flux, MCD).
• Dans les études de taille “raisonnable”, ne sous-estimez pas le temps nécessaire pour l’analyse.
• Prévoyez les couˆts de déploiement de la solution : matériel, mise en réseau, développement, saisie des données, formation des utilisateurs.