Mthodologie objet - PowerPoint PPT Presentation

1 / 106
About This Presentation
Title:

Mthodologie objet

Description:

Produire une repr sentation simplifi e du monde r el pour : ... souvent une mod lisation approfondir. Classe. Attributs d riv s. Personne. dateNaissance : ... – PowerPoint PPT presentation

Number of Views:58
Avg rating:3.0/5.0
Slides: 107
Provided by: huch2
Category:

less

Transcript and Presenter's Notes

Title: Mthodologie objet


1
Méthodologie objet
  • UML et RUP un survol
  • T. Libourel
  • libourel_at_lirmm.fr
  • M Huchard
  • huchard_at_lirmm.fr

2
Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
Cours 2 Modèle structurel (2) Modèle
dynamique (1)
Cours 3 Modèle dynamique (2) Modèle
dimplémentation Projection vers les Bases de
Données
Cours 4 Projection vers la programmation Méth
odologie (RUP)
3
Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
4
Introduction Modélisation
  • Modélisation
  • Produire une représentation simplifiée du monde
    réel pour
  • accumuler et organiser des connaissances,
  • décrire un problème,
  • trouver et exprimer une solution,
  • raisonner, calculer.

5
Introduction Modélisation
  • En informatique,
  • Résoudre le hiatus entre

le réel
le monde informatique
  • Évolutif
  • Ambiguïté
  • Langages codifiés
  • Sémantique unique

6
Introduction Difficultés de la
modélisation
  • Problèmes des spécifications
  • parfois imprécises, incomplètes, ou incohérentes
  • Taille et complexité des systèmes importantes et
    croissantes
  • les besoins et les fonctionnalités augmentent
  • la technologie évolue rapidement
  • les architectures se diversifient
  • assurer linterface avec le métier (domaine
    dapplication)

7
Introduction Difficultés de la
modélisation
  • Évolution des applications
  • évolution des besoins des utilisateurs
  • réorientation de l'application
  • évolution de l'environnement technique (matériel
    et logiciel)
  • Problèmes liés à la gestion des équipes
  • taille croissante des équipes
  • spécialisation technique
  • spécialisation métier

8
Introduction
Les méthodes des guides structurants
  • Décomposition du travail
  • Organisation des phases
  • Concepts fondateurs
  • Représentations semi-formelles

Assurent une démarche reproductible pour obtenir
des résultats fiables
9
Introduction
Décomposition du travail
  • Phases
  • analyse, conception, codage, validation, etc.
  • Niveaux dabstraction
  • conceptuel (besoins)
  • logique (solution informatique abstraite)
  • physique (solution informatique concrète)


10
Introduction
Organisation du travail
  • Processus de développement
  • Phases séquentielles
  • Itération sur les phases


11
Introduction
Concepts fondateurs
  • Fondent lapproche du problème et lexpression
    de la solution
  • Classe, signal, état, fonction, etc.


12
Introduction
Représentations semi-formelles
  • Représentations partiellement codifiées basées
    sur les concepts fondateurs
  • diagrammes, formulaires, etc.
  • Support de différentes activités
  • réflexion, spécification, communication,
  • documentation, mémorisation (trace)


13
Introduction
Pour résumer
  • Une méthode danalyse et de conception
  • propose une démarche qui distingue les étapes du
    développement dans le cycle de vie du logiciel
    (modularité, réduction de la complexité,
    réutilisabilité éventuelle, abstraction)
  • sappuie sur un formalisme de représentation qui
    facilite la communication, lorganisation et la
    vérification
  • a Le langage de modélisation
  • produit des documents (modèles) qui facilitent
    les retours sur conception et lévolution des
    applications

14
Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
15
UML - Unified Modeling Language
  • Langage de modélisation véhiculant en particulier
  • les concepts des approches par objets
  • classe, instance, classification, etc.
  • mais intégrant dautres aspects
  • associations, fonctionnalités, événements,
  • états, séquences, etc.

16
UML Bénéficier des qualités des approches
par objets
  • Simplicité
  • Facilité pour coder et réutiliser
  • Modèle plus proche de la réalité
  • description plus précise des combinaisons
  • (données, opérations)
  • décomposition basée sur classification
    naturelle
  • facile à comprendre et à maintenir
  • Stabilité
  • de petites évolutions peuvent être prises en
    compte sans changements massifs

17
La portée dUML sexplique par limportance de
lapproche par objets
  • Omniprésence technique de lObjet
  • dans les langages de programmation, les bases de
    données, les interfaces graphiques, ... et les
    méthodes danalyse et de conception.
  • Universalité de lObjet
  • la notion dobjet, plus proche du monde réel,
  • est compréhensible par tous et facilite la
    communication entre tous les intervenants dun
    projet.

18
Genèse dUML
  • Au début des années 90, une cinquantaine de
    méthodes objet, liées uniquement par un consensus
    autour didées communes (objets, classes,
    sous-systèmes, ...)
  • Recherche dun langage commun unique utilisable
    par toute méthode objet
  • dans toutes les phases du cycle de vie,
  • compatible avec les techniques de réalisation
    actuelles.

19
UML (Unified Modeling Language)
UML
OMG
OOPSLA
Autres
OMT (Rumbaugh)
OOD (Booch)
OOSE (Jacobson)
20
UML 2.0
Définition en cours
UML 1.3
Version béta - fin 99
Version intermédiaire non publiée
UML 1.2
UML 1.1
Standardisation à lOMG - Novembre 97
UML 1.0
Soumission à lOMG - Janvier 97
Commentaires du public
UML 0.9 0.91
Juin 96 puis OOPSLA96
OOPSLA95
Unified Method 0.8
Booch93
OMT-2
Autres méthodes
Booch91
OMT-1
OOSE
Partenaires
21
Concepts généraux
Points de vue sur le système
Vue   structurelle
Vue implémentation
Vue Cas dutilisation
Vue architecture (déploiement)
Vue dynamique
lt------- Logique Physique ------gt
22
Concepts généraux
Quatre modèles pour concrétiser ces points de vue
Modèle structurel
Types d'objets et leurs relations
Modèle Implémentation
Modèle dutilisation
Composants Fichiers BD
Fonctionnalités
Projection sur le matériel
Modèle Dynamique
Stimuli des objets et leurs réponses
23
Concepts généraux
Chaque modèle est une représentation abstraite
d une réalité, il fournit une image simplifiée
du monde réel selon un point de vue. Il permet
- de comprendre et visualiser (en réduisant
la complexité) - de communiquer (à partir dun
 langage  commun à travers un nombre
restreint de concepts) - de valider (contrôle
de la cohérence, simuler, tester )
24
Concepts généraux
Diagrammes (représentations graphiques de
modèles)
Diagrammes de collaboration de séquences
d'états, dactivités
Diagrammes
de classes dinstances

Diagrammes de déploiement de composants
Diagrammes de cas dutilisation
25
Concepts généraux
Démarche uniforme sur le cycle de vie Même
notation
Analyse
Conception
Implémentation
26
Aspects du langage
Les diagrammes sont majoritairement des graphes
Noeuds
Arcs
noms, étiquettes, mots clefs ltlt interface gtgt
Chaînes de caractères
Contraintes
Texte libre, lge prog. OCL, etc.
Notes
27
Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
28
Modèle dutilisation
  • Les cas dutilisation, ou USE CASE 
  • Fonctionnalités externes
  • Modèles descriptifs du point de vue des
    utilisateurs
  • Interactions avec les acteurs extérieurs
  • la manière dutiliser le système

29
Modèle dutilisation
  • On part de l analyse des besoins .
  • Deux concepts
  • Acteur
  • toute entité extérieure au système et
    interagissant avec celui-ci.
  • acteurs humains, acteurs  machine  (système
    extérieur communiquant avec le système étudié)
  • Cas dutilisation
  • toute manière dutiliser le système
  • suite dévénements notable du point de vue de
    l utilisateur

30
Modèle dutilisation
  • Deux concepts

Acteur (rôle 2)
 communicate 
Acteur
 communicate 
ltlt actor gtgt role
Cas dutilisation
31
Modèle dutilisation
  • Les cas d utilisation peuvent être liés par des
    relations
  • - dutilisation  include  (le cas origine
    contient obligatoirement lautre)
  • - de raffinement  extend  (le cas origine peut
    être ajouté optionnellement )

- de généralisation/spécialisation  generalizes 
32
Modèle dutilisation
Commander
extension
 include 
 include 
 extend 
Décrire produits
Procéder au paiement
Demande catalogue
Livraison
Gestionnaire Du stock
33
Modèle dutilisation
Commander
 include 
 include 
Décrire produits
Procéder au paiement
 specializes 
34
Modèle dutilisation
  • Délimiter le système
  • - ce qui est extérieur et qui communique avec le
    système
  • - ce qui est interne au système
  • Définir les fonctionnalités du système du point
    de vue des utilisateurs
  • Donner une description cohérente de toutes les
    vues que lon peut avoir du système

35
Modèle dutilisation
  • Descriptions complémentaires
  • Textes, diagramme de séquences ou dactivités
  • Une proposition courante
  • Sommaire didentification
  • Titre, résumé, acteurs, dates création maj,
    version, auteurs
  • Description des enchaînements
  • Pré-conditions, scénario nominal, alternatives,
    exceptions, post-conditions
  • Besoins IHM
  • Contraintes non fonctionnelles
  • Temps de réponse, concurrence, ressources
    machine, etc.

36
Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
37
Modèle structurel
  • En UML, le modèle structurel ou statique est
    décrit à l'aide de
  • deux sortes de diagrammes
  • Diagrammes de classes
  • (description de tout ou d'une partie du système
    d'une manière abstraite, en termes de classes, de
    structure et d'associations).
  • Diagrammes d'objets
  • (description d'exemples de configuration de tout
    ou partie du système, en termes d'objets, de
    valeurs et de liens).

38
Modèle structurel
Les objets
Objets du monde réel
Objets informatiques
Comportement visible
État Interne caché
39
Modèle structurel
Objet Etat ---gt évolue au cours du
temps Comportement ---gt actions et
réactions Identité ----gt essence
Comportement influe sur l'état Etat reflète les
comportements passés
40
Modèle structurel
BD
Deux objets ou instances
Luc
Système
Alain
Discipline
Sophie
Professeur
41
Modèle structurel
  • Première abstraction
  • Une classe peut être vue comme
  • - la description en intension d'un groupe
    d'objets ayant
  • même structure (même ensemble d'attributs),
  • même comportement (mêmes opérations),
  • une sémantique commune.
  • - la  génitrice  des objets ou instances
  • le  conteneur  (extension) de toutes ses
    instances

42
Modèle structurel
Classe Attributs (propriétés)
Instance Valeurs d'attributs (État)
Voiture
titine Voiture
type 205 Peugeot rouge
 Est-instance-de 
type string marque string couleur string
43
Modèle structurel
Classe et Attributs (propriétés)
Visibilité nom multiplicitétypevaleur
initialepropriétés
0..1 n 2..
constant addOnly
Nom de classe, expression
-
Couleur
Voiture
type String changeable marque
String couleur1.. Couleur blanc
blancCouleur
44
Modèle structurel
Classe Attributs de classe
Instance Valeurs d'attributs (État) Sauf des
attributs de classe
Voiture
titine Voiture
type string marque string couleur
string nbrRoues int 4 cst
type 205 Peugeot rouge
 Est-instance-de 
Attribut de classe caractéristique
partagée Révèle souvent une modélisation à
approfondir
45
Modèle structurel
Classe Attributs dérivés
Instance Valeurs d'attributs (État)
Personne
juliePersonne
08/05/88 15
 Est-instance-de 
dateNaissance String /age int
age date du jour date de naissance
Peut-être une opération déguisée ? (stockage
optionnel)
46
Modèle structurel
Opérations et méthodes
nom de la classe
attributs
Voiture
type string marque string couleur string
opérations
Implémentations
repeindre(c Couleur) déplacer(d longueur)
Méthodes
Des attributs complémentaires peuvent être
nécessaires
47
Modèle structurel
Classe, opérations, méthodes
Visibilité nom (paramètres)type
retourpropriétés
query abstract
-
mode param type valeur défaut
mode in (par défaut), out, in/out
Couleur
blancCouleur
48
Modèle structurel
Opérations et méthodes de classe
Date
jourint moisint anneeint nomDesMois12String
janvier , fevrier ..
getJour()int getFormatEtendu()String .. ge
tNomMois(in iint)
Opération/méthode de classe Elle ne sapplique
pas à une instance
49
Modèle structurel
Opérations et méthodes de classe
Produit
Référence String PrixHT float TauxTVA float
setPrixHT(ffloat) affichePrix() .. fixeTauxTVA(
ffloat)
Opération/méthode de classe Elle ne sapplique
pas à une instance
50
Modèle structurel
  • Un objet est instance (propre) d'une classe
  • il se conforme à la description que celle-ci
    fournit,
  • il admet une valeur pour chaque attribut déclaré
    à son attention dans la classe,
  • il est possible de lui appliquer toute opération
    définie à son attention dans la classe.
  • Tout objet admet une identité qui le distingue
    pleinement des autres objets
  • il peut être nommé et être référencé par un nom
    (mais son identité ne se limite pas à ça).

51
Modèle structurel
Association / Lien (analogie Classe /
Instance)
Pays
Ville
a-pour-capitale
nom
nom
Association
a-pour-capitale
Pays nomFrance
Ville nom Paris
Lien
52
Modèle structurel
Association / Lien (analogie Classe /
Instance)
  • Une association est labstraction dun groupe de
    liens
  • dont les caractéristiques sont communes
  • même type dorigine
  • même type de destination
  • même attributs

53
Modèle structurel
Association en général binaire (degré 2) mais
..
nom d'association
Adhérent
Exemplaire
lire
association ternaire
association binaire
DispositifDeLecture
54
Modèle structurel
Multiplicités et rôles dans une association
assoc
n
A
B
rb
- n instances de B peuvent être en relation avec
une instance fixée de A
- une instance de B joue le rôle rb pour une
instance de A dans le contexte de assoc
55
Modèle structurel
Multiplicité et rôles d'une association
employeur
employé
Personne
Société
emploie
1..

nom date de nais. nSS adresse
nom adresse
travaille-pour
chef
0..1
encadre
1..
travailleur
56
Modèle structurel
Multiplicité
exactement 1
1
Classe
au plus 1
0..1
Classe
0..
aucun, 1 ou plusieurs (défaut)
Classe
1..
au moins 1
Classe
de 2 à 4
2..4
Classe
Classe
2,4
2 ou 4
57
Modèle structurel
Conseils pour la modélisation d'association
- verbes candidats possibles - ne pas "dériver
vers la conception" (pointeurs ou
attributs référentiels)
58
Modèle structurel
1..
Couleur
Voiture
type String changeable marque String
Un attribut à valeur multiple est souvent
référentiel
59
Classe association
Modèle structurel
Possède-des-actions
Entreprise
Personne

1..
nom date de nais. adresse
capital
nom adresse
actionnaire
Ligne de portefeuille
quantité
60
Classe association
Modèle structurel
Autorisé sur
Utilisateur
Station de travail
1..
1..
nom
nom
Autorisation
priorité droits
1..
répertoire de rattachement
Répertoire
61
Classe dassociation
Modèle structurel
  • Une classe d'association permet de modéliser une
    association par une classe, donc de disposer
    dattributs et dopérations spécifiques.
  • Les liens d'une telle association sont alors des
    objets instances de cette classe.
  • À ce titre, ils admettent une valeur pour tout
    attribut déclaré dans la classe d'association
    et on peut leur appliquer toute opération définie
    dans celle-ci.
  • En tant que classe, une classe d'association peut
    à son tour être associée à d'autres classes
    (voire à elle-même par une association réflexive).

62
Modèle structurel
Association qualifiée
est_client
Banque
Personne
1..
1..
Dossier_C
num_client
est_client
Banque
Personne
num_client
0..1
1..
63
Plan
Cours 2 Modèle structurel (2) Modèle
dynamique (1)
64
Modèle structurel
D autres  abstractions 
  • associations particulières
  • (composition / agrégation)
  • spécialisation / généralisation

65
Modèle structurel
Association particulière Tout /partie
Composition
Palmier
0..2
Stipe
Couronne
Racine
0..1
0..
Régime
Feuille
Inflorescence
0..1
66
Modèle structurel
Agrégation
Sémantique Collection/Élément
Pays
1
Forêt
1..n
1
Région
1
1..n
Arbre
1..n
Site
67
Modèle structurel
Composition / Agrégation
Contraintes - Exclusivité / Partage -
Dépendance / Indépendance Propagation / Diffusion
68
Modèle structurel
Généralisation / Spécialisation
  • Mécanismes dinférences intellectuelles de
    caractéristiques
  • Soit on affine (spécialisation)
  • Soit on abstrait (généralisation)
  • Sémantique
  • Point de vue ensembliste
  • Point de vue logique

69
Modèle structurel
Généralisation / Spécialisation
Personne
nom adresse
disjoint
Chercheur
grade adresse
Exposer()
70
Modèle structurel
Généralisation / Spécialisation
Équipement
Type d'équipement
...
Réservoir
Pompe
Échangeur
Type de pompe
Type de réservoir
...
...
Pompe Cent.
Pompe Imm.
Réservoir Press.
71
Modèle structurel
Généralisation / Spécialisation multiple
Véhicule
Véhicule aquatique
Véhicule terrestre
Auto
Véhicule amphibie
Bateau
72
Modèle structurel
Composition/Agrégation ou généralisation ?
  • Agrégation
  • lien entre instances
  • un arbre d'agrégation est composé d'objets qui
    sont parties d'un objet composite
  • Généralisation
  • lien entre classes

73
Modèle structurel
Généralisation / Spécialisation
  • Une sous-classe hérite des descriptions de sa
    super-classe
  • les déclarations d'attributs,
  • les définitions d'opérations,
  • les associations définies sur la super-classe,
  • les contraintes (on en parle plus tard).
  • Une sous-classe peut redéfinir de façon plus
    spécialisée une partie ou la totalité de la
    description  héritée .

74
Modèle structurel
Les contraintes
  • Les contraintes sont des prédicats, pouvant
    porter sur plusieurs éléments du modèle statique,
    qui doivent être vérifiés à tout instant.
  • Les contraintes permettent de rendre compte de
    détails à un niveau de granularité très fin dans
    un diagramme de classe. Elles peuvent exprimer
    des conditions ou des restrictions.
  • En UML, les contraintes sont exprimées sous
    forme textuelle, entre accolades et de préférence
    en OCL (Object Constraint Language).
  • Les contraintes sont héritées.

75
Modèle structurel
Les contraintes Exemples de contraintes sur
associations
membreDe
SOL
Comité
Personne


subset

1
contrainte entre 2 associations
1..
ordered
contrainte sur extrémité d'association
Strates
76
Modèle structurel
Les contraintes Exemple de contraintes à
différents niveaux
actif passif
contrainte sur classe
subordonné
employeur
Personne
Société

1..
0..1
0..1
Personne.employeur Personne.chef.employeur
actif Real value ? 0 passif Real
chef
ltdirige
contrainte sur attribut
contrainte sur 2 associations
77
Modèle structurel
Quelques compléments de notation
stéréotype
instance of
relation de dépendance
  • Un stéréotype est un label qui permet d'apporter
    une précision supplémentaire à un élément de
    notation (classe, relation, )

78
Modèle structurel
Classes abstraites
  • Une classe abstraite est une classe non
    instanciable, c'est à dire qu'elle n'admet pas
    d'instances directes.
  • Une classe abstraite est une description d'objets
    destinée à être  héritée  par des classes plus
    spécialisées.
  • Pour être utile, une classe abstraite doit
    admettre des classes descendantes concrètes.
  • La factorisation optimale des propriétés communes
    à plusieurs classes par généralisation nécessite
    le plus souvent l'utilisation de classes
    abstraites.

79
Modèle structurel
Opérations abstraites
  • Une opération abstraite est une opération
    n'admettant pas d'implémentation au niveau de
    la classe dans laquelle est déclarée, on ne peut
    pas dire comment la réaliser.
  • Les opérations abstraites sont particulièrement
    utiles pour mettre en uvre le polymorphisme.
  • Toute classe concrète sous-classe d'une classe
    abstraite doit concrétiser toutes les
    opérations abstraites de cette dernière.

80
Modèle structurel
Classes abstraites
FormeGéométrique
classe abstraite
opération abstraite
centre Point
dessiner()déplacer(delta Vecteur)
classe abstraite (dessiner() est héritée et non
concrétisée)
classe concrète
Polygone
Ellipse
régulier Boolean
grandDiam Vecteur petitDiam Vecteur

Polygone utile que si spécialisée
opération concrétisée
dessiner()
81
Modèle structurel
Interfaces
  • Une interface est une collection d'opérations
    utilisée pour spécifier un service offert par une
    classe.
  • Une interface être vue comme une classe sans
    attributs et dont toutes les opérations sont
    abstraites.
  • Une interface est destinée à être réalisée par
    une classe (celle-ci en hérite toutes les
    descriptions et concrétise les opérations
    abstraites).
  • Une interface peut en spécialiser une autre, et
    intervenir dans des associations avec d'autres
    interfaces et d'autres classes.

82
Modèle structurel
Interfaces
interface
interface
opérations abstraites
BlocDeChoix
1..
setDefault(o Option) getChoice() Option
Option
choix
réalisation
choix
1..
opérations concrétisées
MenuPopUp
MenuBouton
1..
setDefault(o String) getChoice() String
setDefault(o Bouton) getChoice() Bouton
Bouton
choix
83
Modèle structurel
Interfaces
Deux notations pour l'utilisation d'une interface
84
Modèle structurel
Heuristiques délaboration du modèle structurel
Bien comprendre le problème
Faire simple Bien choisir les noms
Bien expliciter les associations
Ne pas trop généraliser Relire
DocumenterDe nombreuses révisions sont
nécessaires !
85
Plan
Cours 2 Modèle structurel (2) Modèle
dynamique (1)
86
Modèle dynamique
Décrit les interactions entre objets et
les changements au cours du temps
- Aspects temporels, comportementaux Contrôle
- Stimuli des objets et leurs réponses
87
Modèle dynamique
  • diagrammes de collaboration
  • diagrammes de séquences
  • diagrammes états-transitions
  • diagrammes d'activités (non traités)

88
Modèle dynamique
La communication
Systèmes informatiques Société d'objets
travaillant en synergie pour réaliser les
fonctions de l'application
Communication
Client
Acteur
Serveur
message
89
Modèle dynamique
Les messages
Types
Synchronisation
simple synchrone dérobant minuté asynchrone
constructeurs destructeurs sélecteurs modificateu
rs itérateurs
90
Modèle dynamique
Diagramme de collaboration
2 M2
B
1 M1
5 M5
4 M4
A
C
6 M6
message
3 M3
91
Modèle dynamique
Diagramme de séquence
C
B
A
M1
M2
M3
M4
M5
M6
92
Modèle dynamique
La ligne de vie
 create 
C1
op
Création par le message create
Activation de lobjet qui exécute une opération
op
destroy
Destruction par un autre objet
93
Modèle dynamique
Régime
Inflorescence
Palmier
Feuille
temps
94
Modèle dynamique
Événement et État
  • État d'un objet
  • valeurs de ses attributs et de ses liens
  • au cours du temps un objet peut changer d'état
  • Événement
  • stimuli d'un objet vers un autre objet

95
Modèle dynamique
Diagrammes d'États Représentation
graphique état et événement
Graphe Nud État Arc Transition nommées par
événement Une séquence d'événements chemin
dans le graphe
96
Modèle dynamique
Événement
pas de durée concurrence d'événements
classes d'événements - sans
attributs - avec attributs
départ vol (compagnie, num_vol, ville)
a pour instances
AirFrance vol 124 de Paris
Alitalia vol 352 de Rome
97
Modèle dynamique
État
abstraction des valeurs d'attributs et de liens
d'un objet  un état a une durée (intervalle de
temps entre deux événements) spécifie la
réponse à un événement état et événement sont
duaux un événement sépare deux états
un état sépare deux événements
98
Modèle dynamique
création
e2
Créé
Avec inflorescence
Avec feuille
e1
C
Avec régime
99
Modèle dynamique
Diagrammes d'États
Transitions gardées
demande
création
fermeture
fermeture accomplie
en création
Ouvert
Fermé
retrait (s)
dépôt(s)
Solde gt0
Solde gt0
Créditeur
En retrait
En dépôt
Solde 0
Solde 0
Débiteur
100
Modèle dynamique
Opération Activité / Action
Événement 1 Cond1 / Action1 (attrib)
État 1 faire Activité 1
État 2 ...
101
Modèle dynamique
Opération elle peut être attachée à une
transition ou à un état. elle est exécutée
en réponse à l'événement ou à l'état.

Action opération instantanée, non
interruptible, souvent utilisée pour faire des
mises à jour de valeurs, attachée à une
transition. Envoyer un événement est une
action Activité opération qui prend du temps,
interruptible par un événement, perpétuelle ou
finie, nécessairement attachée à un état.

102
Modèle dynamique
Généralisation
  • - permet une meilleure structuration des
    diagrammes d'états
  • Un objet dans un état du diagramme général doit
  • être dans un des états du diagramme imbriqué
  • (relation ou entre les états)

E1
E4
E3
E2
E6
E5
103
Modèle dynamique
Agrégation
une classe "agrégat" aura un état défini par
l'agrégation des états de ses composants. Agréga
tion concurrente (relation et)
Ecomp1
Ecomp2
104
Modèle dynamique
Heuristiques délaboration du modèle dynamique
Utiliser les scénarios pour
commencer à construire les
diagrammes d'état Ne construire un
diagramme d'état que pour les classes
au comportement temporel significatif
Contrôler la cohérence Utiliser
des diagrammes structurés
105
Modèle dimplémentation
Les packages
  • Un package ou sous-système est un regroupement
    logique de classes, associations, contraintes ..
  • Un sous-système est généralement défini par les
    services quil rend
  • Les liens entre sous-systèmes sont des liens de
    dépendance
  • Les  packages  servent à structurer une
    application
  • Ils sont utilisés dans certains LPO (Java) ce
    qui assure une bonne  traçabilité  de
    l analyse à l implémentation

106
Modèle dimplémentation
Les packages
Liens de dépendance
Classes avec fort couplage  sémantique 
Write a Comment
User Comments (0)
About PowerShow.com