Title: Mthodologie objet
1Méthodologie objet
- UML et RUP un survol
- T. Libourel
- libourel_at_lirmm.fr
- M Huchard
- huchard_at_lirmm.fr
2Plan
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)
3Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
4Introduction 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.
5Introduction Modélisation
- En informatique,
- Résoudre le hiatus entre
le réel
le monde informatique
- Langages codifiés
- Sémantique unique
6Introduction 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)
7Introduction 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
8Introduction
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
9Introduction
Décomposition du travail
- Phases
- analyse, conception, codage, validation, etc.
- Niveaux dabstraction
- conceptuel (besoins)
- logique (solution informatique abstraite)
- physique (solution informatique concrète)
10Introduction
Organisation du travail
- Processus de développement
- Phases séquentielles
- Itération sur les phases
11Introduction
Concepts fondateurs
- Fondent lapproche du problème et lexpression
de la solution - Classe, signal, état, fonction, etc.
12Introduction
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)
13Introduction
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
14Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
15UML - 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.
16UML 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
17La 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.
18Genè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.
19UML (Unified Modeling Language)
UML
OMG
OOPSLA
Autres
OMT (Rumbaugh)
OOD (Booch)
OOSE (Jacobson)
20UML 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
21Concepts 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
22Concepts 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
23Concepts 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 )
24Concepts 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
25Concepts généraux
Démarche uniforme sur le cycle de vie Même
notation
Analyse
Conception
Implémentation
26Aspects 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
27Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
28Modè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
29Modè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
30Modèle dutilisation
Acteur (rôle 2)
communicate
Acteur
communicate
ltlt actor gtgt role
Cas dutilisation
31Modè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
32Modèle dutilisation
Commander
extension
include
include
extend
Décrire produits
Procéder au paiement
Demande catalogue
Livraison
Gestionnaire Du stock
33Modèle dutilisation
Commander
include
include
Décrire produits
Procéder au paiement
specializes
34Modè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
35Modè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.
36Plan
Cours 1 Introduction Présentation
dUML Modèle fonctionnel (utilisation) Modèle
structurel (1)
37Modè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).
38Modèle structurel
Les objets
Objets du monde réel
Objets informatiques
Comportement visible
État Interne caché
39Modè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
40Modèle structurel
BD
Deux objets ou instances
Luc
Système
Alain
Discipline
Sophie
Professeur
41Modè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
42Modè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
43Modè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
44Modè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
45Modè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)
46Modè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
47Modè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
48Modè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
49Modè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
50Modè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).
51Modèle structurel
Association / Lien (analogie Classe /
Instance)
Pays
Ville
a-pour-capitale
nom
nom
Association
a-pour-capitale
Pays nomFrance
Ville nom Paris
Lien
52Modè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
53Modèle structurel
Association en général binaire (degré 2) mais
..
nom d'association
Adhérent
Exemplaire
lire
association ternaire
association binaire
DispositifDeLecture
54Modè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
55Modè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
56Modè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
57Modè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)
58Modèle structurel
1..
Couleur
Voiture
type String changeable marque String
Un attribut à valeur multiple est souvent
référentiel
59Classe association
Modèle structurel
Possède-des-actions
Entreprise
Personne
1..
nom date de nais. adresse
capital
nom adresse
actionnaire
Ligne de portefeuille
quantité
60Classe association
Modèle structurel
Autorisé sur
Utilisateur
Station de travail
1..
1..
nom
nom
Autorisation
priorité droits
1..
répertoire de rattachement
Répertoire
61Classe 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).
62Modèle structurel
Association qualifiée
est_client
Banque
Personne
1..
1..
Dossier_C
num_client
est_client
Banque
Personne
num_client
0..1
1..
63Plan
Cours 2 Modèle structurel (2) Modèle
dynamique (1)
64Modèle structurel
D autres abstractions
- associations particulières
- (composition / agrégation)
- spécialisation / généralisation
65Modèle structurel
Association particulière Tout /partie
Composition
Palmier
0..2
Stipe
Couronne
Racine
0..1
0..
Régime
Feuille
Inflorescence
0..1
66Modè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
67Modèle structurel
Composition / Agrégation
Contraintes - Exclusivité / Partage -
Dépendance / Indépendance Propagation / Diffusion
68Modè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
69Modèle structurel
Généralisation / Spécialisation
Personne
nom adresse
disjoint
Chercheur
grade adresse
Exposer()
70Modè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.
71Modèle structurel
Généralisation / Spécialisation multiple
Véhicule
Véhicule aquatique
Véhicule terrestre
Auto
Véhicule amphibie
Bateau
72Modè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
73Modè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 .
74Modè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.
75Modè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
76Modè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
77Modè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, )
78Modè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.
79Modè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.
80Modè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()
81Modè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.
82Modè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
83Modèle structurel
Interfaces
Deux notations pour l'utilisation d'une interface
84Modè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 !
85Plan
Cours 2 Modèle structurel (2) Modèle
dynamique (1)
86Modè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
87Modèle dynamique
- diagrammes de collaboration
- diagrammes de séquences
- diagrammes états-transitions
- diagrammes d'activités (non traités)
88Modè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
89Modèle dynamique
Les messages
Types
Synchronisation
simple synchrone dérobant minuté asynchrone
constructeurs destructeurs sélecteurs modificateu
rs itérateurs
90Modèle dynamique
Diagramme de collaboration
2 M2
B
1 M1
5 M5
4 M4
A
C
6 M6
message
3 M3
91Modèle dynamique
Diagramme de séquence
C
B
A
M1
M2
M3
M4
M5
M6
92Modè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
93Modèle dynamique
Régime
Inflorescence
Palmier
Feuille
temps
94Modè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
95Modè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
96Modè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
97Modè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
98Modèle dynamique
création
e2
Créé
Avec inflorescence
Avec feuille
e1
C
Avec régime
99Modè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
100Modèle dynamique
Opération Activité / Action
Événement 1 Cond1 / Action1 (attrib)
État 1 faire Activité 1
État 2 ...
101Modè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.
102Modè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
103Modè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
104Modè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
105Modè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
106Modèle dimplémentation
Les packages
Liens de dépendance
Classes avec fort couplage sémantique