GEF 243BProgrammation informatique
appliquée
Modélisation II
Revue
• Que nous montre les diagrammes de contexte?• Que nous donne la liste des événements?• Dans les DFD:
À un plus bas niveau d’abstraction dans les diagrammes de flots de données, peut-on créer des nouveaux flots (flèches)?
Devrait-on garder tout les flots de données d’un niveau d’abstraction plus haut vers un niveau plus bas?
Synopsis
• ModèlesDécomposition des Diagrammes de Flots de Données
(DFD)Dictionnaire de Données (DD)Diagramme de Relations des Entités (DRE)
Décomposition des DFD
• Comme nous l’avons vu dans le dernier cours, la décomposition applique aux transformations (bulles dans les DFD) de la même façon que nous avons vu pour les fonctions et les modules“Je n’ai qu’une petite tête et je dois vivre avec.”
E. Dijkstra
• Mais quand devons nous arrêter de dessiner des bulles?
Décomposition des DFD
• Au plus bas niveau de la décomposition d’un DFD, nous trouvons une spécification de transformation ou de processus.
• Cette spécification est écrite en terme de pré et poste conditions
• Une bulle est ou bien séparé par un diagramme de plus bas niveau ou par une spécification; pas les deux
Décomposition des DFD
Enlève item3.4.2
items d’inventaire
information pour enlever
l’item
catalogue
photos de produits
confirmation
Item d’inventaire
Décomposition des DFD
Spécification 3.4.2: Enlève itempré condition 1:
INFORMATION-POUR-ENLEVER-ITEM se produitpré condition 2:
l’item doit exister poste condition 1:
aucun match existe pour la PHOTO-DE-PRODUIT aucun match existe pour le CATALOGUE aucun match existe pour ITEM-D’-INVENTAIRE
poste condition 2:si l’item a été trouvé CONFIRMATION est positivesi l’item n’a pas été trouvé CONFIRMATION est une erreur
Dictionnaire de données
• Les flèches de flots de données représente l’information qui voyage entre les transformations et les magasins d’information
• Chaque flot a un nom, mais il n’y a pas de description sur la composition de l’information
• Est-ce que nous traitons des structures de données complexes ou de l’information codée avec des bits?
• Le Dictionnaire de Données (DD) fournit l’information de composition qui n’est pas disponible sur le DFD
Dictionnaire de données
• Le concept:
d
a b
c
e f
a = …b = …c = …
…
f = …
Diagramme de flots de données
Dictionnaire de données
Dictionnaire de données
• Les DD fournissent la composition des données qui n’est pas sur le DFD etDécrivent ce que sont les flots et magasinsSpécifient la composition des données complexesSpécifient les plages ou valeurs que les données
peuvent prendre; ceci est utilisé plus tard dans le logiciel pour faire les détections des erreurs
Spécifient les unités que les données représentent (souvent identifier par des commentaires dans le DD)
Dictionnaire de données
• Même si la composition des données dans le DD peut être représenté dans n’importe quel format que vous désirez, il est commun et grandement recommandé d’utiliser les symboles suivants pour rendre votre DD claire:= est composé de
+ et
{ } collection (ou itération)
[..|..] choisir un de (type énuméré)
( ) champ optionnel
@ identificateur pour un magasin “fait partie de”
* * limiteurs de commentaires pour les données
Dictionnaire de données
• Exemple:
information-pour-enlever-item =
item-id + item-numéro-de-catalogue
item-d’inventaire =
* un item est un élément dans le magasin items-d’inventaire *
@item-id + item-description + (UPC)
items-d’inventaire =
{item} * une collection d’item *
confirmation =
[trouvé | erreur]
Dictionnaire de données
• Jusqu’à maintenant, nos modèles pour faire des designs détaillés de nos programmes structurés sont: Diagramme de contexte – modélise l’environnement au tour du
système; Liste d’événements – nous donne des séquences de haut niveau
pour les processus; DFDs nous montrent où les données vont dans un système; DDs nous donnes l’information sur la composition des données; et Les spécifications nous montrent comment cette information est
utilisée en dedans des transformations avec les pré et poste conditions
Diagrammes de Relations des Entités
• Mais comment est-ce que cette information est reliée?
• Quelle est la relation entre un patient, un docteur et les médicaments?
• Quelle est la relation entre un test générique, un test sanguin, un test de toxicité et un test de concentration de médicament dans le corps humain
• Le Diagramme de relations des identités fournissent une vue statique des relations qui existent entre nos données
Diagrammes de Relations des Entités
• Un DRE est composé de:
Types d’objet …
Relations
patient Médicament
patient MédicamentEst traitéavec
Diagrammes de Relations des Entités
• Un DRE est composé de:
Types d’objets associés
patient Médicaments
Traitement avec médicaments
Diagrammes de Relations des Entités
• Un DRE est composé de:
Indicateur de supertype
Test sanguin Test de toxicitéTest de
concentrationde médicament
Test
Diagrammes de Relations des Entités
• Exemple: Un docteur réserve un test sanguin pour un patient
Patient
DocteurEst
réservépour
Test sanguin
Diagrammes de Relations des Entités
• Exemple: Un docteur traite un patient avec un médicament
Médicament
DocteurEst
traitéavec
Patient
Diagrammes de Relations des Entités
• Les DRE sont lut à partir des relations (losanges):
Médicament
Docteur
Esttraitéavec
PatientEst
réservépour
Test Sanguin
Test
Quiz Time
• Est-ce que un DFD peut être décomposé dans une spécification et en même temps en autres sous diagrammes de transformations?
• Un DRE représente les relations __________ de nos données