21
GEF 243B Programmation informatique appliquée Modélisation II

Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

Embed Size (px)

Citation preview

Page 1: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

GEF 243BProgrammation informatique

appliquée

Modélisation II

Page 2: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation 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?

Page 3: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

Synopsis

• ModèlesDécomposition des Diagrammes de Flots de Données

(DFD)Dictionnaire de Données (DD)Diagramme de Relations des Entités (DRE)

Page 4: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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?

Page 5: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 6: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 7: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 8: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 9: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 10: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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)

Page 11: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 12: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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]

Page 13: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 14: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 15: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

Diagrammes de Relations des Entités

• Un DRE est composé de:

Types d’objet …

Relations

patient Médicament

patient MédicamentEst traitéavec

Page 16: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

Diagrammes de Relations des Entités

• Un DRE est composé de:

Types d’objets associés

patient Médicaments

Traitement avec médicaments

Page 17: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 18: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

Diagrammes de Relations des Entités

• Exemple: Un docteur réserve un test sanguin pour un patient

Patient

DocteurEst

réservépour

Test sanguin

Page 19: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

Diagrammes de Relations des Entités

• Exemple: Un docteur traite un patient avec un médicament

Médicament

DocteurEst

traitéavec

Patient

Page 20: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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

Page 21: Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II

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