La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

© Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel La Modélisation des Données Hiver 2002 Petko Valtchev.

Présentations similaires


Présentation au sujet: "© Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel La Modélisation des Données Hiver 2002 Petko Valtchev."— Transcription de la présentation:

1 © Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel La Modélisation des Données Hiver 2002 Petko Valtchev

2 © Petko ValtchevUniversité de Montréal Janvier 2002 2 Modélisation Sommaire l Lactivité de modélisation l Le début de la modélisation l La méthode danalyse structurée l Le modèle entité-association

3 © Petko ValtchevUniversité de Montréal Janvier 2002 3 Modélisation Le Modèle dAnalyse Modèle Données Modèle Comportemental Modèle Fonctionnel définit les objets décrit leurs attributs établit les associations identifie les fonctions qui transforment les objets précise la circulation des données à travers le système représente producteurs et consommateurs de données indique les différents états du système spécifie les évènements qui provoquent des changements détat Raffinage progressif pour diminuer le niveau dabstraction!

4 © Petko ValtchevUniversité de Montréal Janvier 2002 4 Modélisation l Dhabitude, inclus dans les documents issus de lingénierie du système (appelé « cahier des charges » parfois) l Si non disponible, on peut lacquérir, par exemple : l en appliquant la technique FAST, l en examinant les cas dutilisation du système logiciel. S tatement of scope [Pressman 2001] « A relatively brief description of the system to be built: indicates data that are input and output and basic functionality indicates conditional processing (at a high level) implies certain constraints and limitations. » La modélisation peut débuter à partir dune première description informelle du logiciel. Le Début…

5 © Petko ValtchevUniversité de Montréal Janvier 2002 5 Modélisation l Le « statement of scope » doit être parcouru pour en extraire des information sur les données, les fonctionnalités et le comportement du système OBJETS: tous les noms dans le document l producteurs/consommateurs de données l éléments de stockage pour les données l données composites OPÉRATIONS: tous les verbes dans le document l processus pertinents pour lapplication l transformations de données Y rajouter tous les autres services dont les objets pourront avoir besoin. Identifier les Éléments

6 © Petko ValtchevUniversité de Montréal Janvier 2002 6 Modélisation Une multitude de méthodes de modélisation ont été proposées pour le paradigme de programmation structurée dont: Structured Analysis (SA) – Analyse structurée Data Structured Systems Development (DSSD) Jackson System Development (JSD) Structured Analysis Design Technique (SADT) Toutes respectent les cinq principes danalyse évoqués précédemment. Elles divergent quant aux heuristiques, les vues et des notations employées pour lidentification, la description et la validation des modèles sous-jacents. Les Approches

7 © Petko ValtchevUniversité de Montréal Janvier 2002 7 Modélisation Sommaire l Lactivité de modélisation l Le début de la modélisation l La méthode danalyse structurée l Le modèle entité-association

8 © Petko ValtchevUniversité de Montréal Janvier 2002 8 Modélisation Éléments du Modèle dAS Modèle entité-association Diagramme de flot de données Diagramme état-transition Description des données Spécification des processus (PSPEC) Spécification du contrôle (CSPEC) Dictionnaire des données

9 © Petko ValtchevUniversité de Montréal Janvier 2002 9 Modélisation Sommaire l Lactivité de modélisation l Le début de la modélisation l La méthode danalyse structurée l Le modèle entité-association

10 © Petko ValtchevUniversité de Montréal Janvier 2002 10 Modélisation Modèle Entité-Association Le modèle Entité-Association, ou E-A (1976) représente le monde réel comme un ensemble dobjets (entités) et de relations (associations) entre ces objets. La réalité à modéliser est le domaine bancaire. Cela veut dire que notre modèle doit faire apparaître les notions comme les clients, les comptes, les transactions, les soldes, les actions, les obligations, les REER, etc. Ex.

11 © Petko ValtchevUniversité de Montréal Janvier 2002 11 Modélisation Entité : « Objet ayant une existence réelle ou abstraite dans le domaine, distinguable des autres objets et possédant des propriétés et des caractéristiques. » Entités externes (guichet automatique, client, compte) Occurrences ou évènements (interruptions, alarme) Structures (enregistrement employé) Choses (rapports, chèques,cartes débit) Objets de Données? Les entités retenues jouent un rôle essentiel dans le système, c.a.d. que le système ne peut pas fonctionner sans accéder aux informations que ces entités comportent. Ensemble dentités : « Collection dentités de structure identique. » Quels ensembles? Quelles entités?

12 © Petko ValtchevUniversité de Montréal Janvier 2002 12 Modélisation Entité : client attributs: nom nom NAS NAS adresse adresse employeur employeur revenu mensuel revenu mensuel « Un attribut représente un aspect, une qualités, une caractéristique ou un descripteur de lobjet. » Chaque objet est décrit par un ensemble dattributs qui font partie des données du système. Entités et Attributs Les attributs sont valués : nom = Personne, revenu = 2 500. A chaque attribut correspond un ensemble de valeurs possibles (on parle de son domaine): domaine (revenu) = 0…1 000 000.

13 © Petko ValtchevUniversité de Montréal Janvier 2002 13 Modélisation Entité : client attributs: nom nom NAS NAS adresse adresse employeur employeur revenu mensuel revenu mensuel Valeurs dattribut: « À la différence des entités, elles nont pas une existence indépendante (pas didentité) dans le monde modélisé. » La détermination des entités et des attributs dun modèle dépend essentiellement de la perspective sur le monde réel et de la protée du modèle. Souvent, il est difficile de départager les deux options. Attributs et Identification PROBLÈME ? Entités Attributs Chaque entité sera identifiée de manière unique grâce à un ou plusieurs attributs : Ensemble - Client, Livre (le concept abstrait de), Entité - M. Personne (NAS 999 999 999), Guerre et Paix (avec son ISBN # ).

14 © Petko ValtchevUniversité de Montréal Janvier 2002 14 Modélisation Les mêmes objets peuvent être reliés de plusieurs manières différentes. Une association peut être caractérisée par des attributs descriptifs. Une association A peut être identifiée à une relation mathématique sur n ensembles dentités E 1, E 2, … E n : A E 1 E 2 … E n ; Son extension est un ensemble de n-uplets: A= {(e 1, e 2,…, e n ) | e 1 E 1, e 2 E 2,…, e n E n } ; Association : « Indique que deux ou plusieurs ensembles dentités sont connectés dune manière quelconque. » Instance dassociation : « Un lien entre des entités issues des ensembles connectés par lassociation. Linstance représente un fait qui doit être mémorisé dans le système car impossible à extraire à partir des autres données. » Associations? Client Compte bancaire possède {(Personne,#22456),(Dupont,#22671)}

15 © Petko ValtchevUniversité de Montréal Janvier 2002 15 Modélisation Contraindre les Associations Étant donné un ensemble de relations binaires entre deux ensembles dentités A et B, on distingue les grands types dassociations suivantes: Un à un (1:1) Une entité de A est associé à exactement une entité de B et vice-versa. Un à plusieurs (1:N) Une entité de A est associée à une ou plusieurs entités de B, mais une entité de B est associée à exactement une entité de A. Plusieurs à plusieurs (N:M) Une entité de A est associée à une ou plusieurs entités de B et vice-versa. Multiplicité : « Annotation définissant le nombre doccurrences dune même entité dans les instances dune association. » Client Compte bancaire possède 0..n1..n Borne INF Borne SUP

16 © Petko ValtchevUniversité de Montréal Janvier 2002 16 Modélisation Contraintes Sémantiques Dépendances existentielle (« maître - esclave »): Si lexistence de lentité X dépend de lexistence de lentité Y, alors X est dit dépendant de Y. On parle également de Y comme de lentité « maître » de X comme de lentité « esclave ». enregistre Si une entité « compte bancaire » est détruite, toutes les entités « transaction » qui se rapportent au compte sous-jacent sont détruites immédiatement. Esclave Maître Règle: Lorsque le maître est crée, les esclaves le sont par la suite. Lorsque le maître est détruit, toutes les entités esclaves qui lui sont associées doivent aussi être détruites. Compte bancaire Transaction 0..n1

17 © Petko ValtchevUniversité de Montréal Janvier 2002 17 Modélisation Clés et Identification [Nom, NAS] constitue une clé admissible de lensemble dentités Client. [Nom] ne serait pas suffisant pour former une clé. [NAS] constitue une clef primaire de Client. Clé : « Un ensemble dun ou plusieurs attributs qui permettent didentifier une entité de façon unique parmi un ensemble dentités. Une clef composée dun minimum dattributs est appelée clé primaire. » L identification des entités est réalisée grâce à leurs attributs. Ex. Transaction a trois attributs: no. de transaction, date et montant, qui ne permettent pas toujours de distinguer deux transactions sur comptes différents. Ces attributs nétant pas suffisants pour composer une clé primaire, Transaction est un ensemble dentités faible. Ensemble dentités faible : « Un ensemble nayant pas assez dattributs pour constituer une clé primaire. » Ex.

18 © Petko ValtchevUniversité de Montréal Janvier 2002 18 Modélisation Définition dune clé primaire pour un ensemble dentités faible: 1. on prend la clef primaire dun ensemble dentités fort dont il dépend. 2. on y ajoute une partie discriminante, cest-à-dire un ensemble dattributs qui permettent didentifier les entités esclaves à lintérieur du sous-ensemble correspondant à une entité-maître unique. Ex. l Transaction est un ensemble dentités faible qui dépend de lensemble dentités Compte qui est un ensemble dentités fort. l La clef primaire de Compte est le [no. du compte]. l Lattribut no de transaction de Transaction servira de partie discriminante. l Donc une clef primaire pour lensemble dentités Transaction sera : [no de compte, no de transaction] Compte Transaction enregistre 0..n 1 Esclave Maître No compte, nom,… No trans.,date, etc Clés (suite)

19 © Petko ValtchevUniversité de Montréal Janvier 2002 19 Modélisation Une association est caractérisée, de manière implicite, par les attributs des ensembles dentités qui participent à lassociation. Lassociation peut aussi bien avoir ses propres attributs descriptifs. Une clé pour lassociation est constituée par ladjonction des clés des ensembles dentités. Au cas où linformation ainsi composée nest pas suffisante pour distinguer les instances de lassociation, une partie des attributs descriptifs peut être rajoutée afin de constituer une clé valide. Client Compte bancaire -Nom -Adresse -NAS -Tel - No. Compte - Solde Possède NAS No compte Date dernier accès 1..n Clés des Associations

20 © Petko ValtchevUniversité de Montréal Janvier 2002 20 Modélisation On peut exprimer graphiquement le modèle entité-association à laide dun diagramme dont les composants sont: des rectangles, représentant les ensembles dentités, des losanges, représentant les associations, des ellipses, représentant les attributs (optionnel), des lignes, reliant les attributs aux ensembles dentités et les ensembles dentités aux associations. des annotations pour indiquer les cardinalités des associations et les bornes inférieures. Diagrammes E-A, Notations

21 © Petko ValtchevUniversité de Montréal Janvier 2002 21 Modélisation Diagrammes (exemple) Solde Client Transaction Compte bancaire possède Nom Adresse NAS Tél. No compte No transaction Montant Date 1..n 0..n 1 enregistre

22 © Petko ValtchevUniversité de Montréal Janvier 2002 22 Modélisation - Les losanges sont parfois omis. - On utilise parfois des symboles pour exprimer les cardinalités et les bornes inférieures. - Certains permettent dajouter au diagramme des détails et des contraintes supplémentaires: - attributs composites, - sous-classes/super-classes, - généralisation/spécialisation, - spécification des rôles par des annotations sur les liens, - etc. Compte Transaction O Quelques variantes Diagrammes E-A

23 © Petko ValtchevUniversité de Montréal Janvier 2002 23 Modélisation maison femme possède Couple Agrégation: l Principe dabstraction qui permet aux associations dêtre manipulées comme si elles étaient des entités (de niveau supérieur). Agrégation 11 homme conjoint

24 © Petko ValtchevUniversité de Montréal Janvier 2002 24 Modélisation Les attributs des entités des niveaux supérieurs sont hérités par les entités des niveaux inférieurs. Généralisation: l Principe qui permet de mettre en évidence les similarités entre les ensembles dentités. l Permet de classifier hiérarchiquement les ensembles dentités en créant des relations de spécialisation entre eux. is_a Compte bancaire Compte dépargne Compte chèque Généralisation


Télécharger ppt "© Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel La Modélisation des Données Hiver 2002 Petko Valtchev."

Présentations similaires


Annonces Google