Langage de mod - PowerPoint PPT Presentation

1 / 47
About This Presentation
Title:

Langage de mod

Description:

Cours n 2 UML * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * G n ralisation UML * Vehicule marque modele VitesseMax Voiture ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 48
Provided by: JulienS2
Category:
Tags: langage | mod | voiture

less

Transcript and Presenter's Notes

Title: Langage de mod


1
Langage de modélisation objet unifié
  • Cours n2

2
Plan
  • Introduction
  • Modéliser avec UML
  • Diagrammes de cas dutilisation
  • Diagrammes de classes
  • Notion de paquetage
  • Diagrammes dobjets
  • Diagrammes de séquence
  • Diagrammes de collaboration
  • Diagrammes détats/transition
  • Autres diagrammes

3
Diagrammes de classe
4
Vue statique
  • Vues statiques du système 
  • diagrammes de cas d'utilisation (Fonctionnel)   
  • diagrammes de classes
  • diagrammes d'objets
  • diagrammes de composants
  • diagrammes de déploiement
  • Vues dynamiques du système 
  • diagrammes de séquence
  • diagrammes de collaboration
  • diagrammes d'états-transitions
  • diagrammes d'activités

5
Class diagrams
  • Expriment la structure statique du système en
    terme de classes et de relations entre ces
    classes
  • Une classe est un type abstrait caractérisé par
    des propriétés (attributs et méthodes) communes à
    un ensemble d'objets et permettant de créer des
    objets ayant ces propriétés 
  • Ne pas représenter les attributs ou les méthodes
    d'une classe sur un diagramme, n'indique pas que
    cette classe n'en contient pas.Il s'agit juste
    d'un filtre visuel, destiné à donner un certain
    niveau d'abstraction à son modèle
  • De même, ne pas spécifier les niveaux daccès des
    membres d'une classe ne veut pas dire qu'on ne
    représente que les membres publics

6
Convention graphique dune classe
Nom_de_classe
Attributs
Nom_de_classe
Méthodes
7
Syntaxe
  • Attribut
  • nom type val_initiale
  • Méthode
  • nom (arg type val_defaut, ) type_retour
  • Niveaux daccès
  • Public
  • Protected
  • Private -

8
Exemples / niveaux dabstraction
voiture
Classe non documentée
9
Exemples / niveaux dabstraction
voiture
immatriculation couleur marque puissance poids dat
e propriétaire
attributs
demarrer arreter conduire vendre
méthodes
voiture
Classe non documentée
Classe documentée
10
Exemples / niveaux dabstraction
voiture
voiture
immatriculation couleur marque puissance poids dat
e propriétaire
immatriculation string couleur string
marque string puissance int poids int -
date Date - propriétaire string
attributs
types
demarrer arreter conduire vendre
demarrer() - contact() bool conduire(a
string  marseille , b string) vendre(prix
float)
méthodes
voiture
prototype
Niveaux daccès
Classe non documentée
Classe documentée
Classe détaillée
11
Sémantique
  • Un diagramme de classes est une collection
    d'éléments de modélisation statiques (classes,
    paquetages...), qui montre la structure d'un
    modèle
  •  
  • Un diagramme de classes fait abstraction des
    aspects dynamiques et temporels 
  • Pour un modèle complexe, plusieurs diagrammes de
    classes complémentaires doivent être
    construitsOn peut par exemple se focaliser
    sur 
  • les classes qui participent à un cas
    d'utilisation (cf. collaboration)
  • les classes associées dans la réalisation d'un
    scénario précis
  • les classes qui composent un paquetage
  • la structure hiérarchique d'un ensemble de classes

12
Association
  • Une association exprime une connexion sémantique
    entre deux classes 
  • L'association est instanciable dans un diagramme
    d'objets ou de collaboration, sous forme de liens
    entre objets issus de classes associées

13
Association classique
Personne
Entreprise
travaille
14
Association en forme verbale active
  • Précise le sens de lecture

Personne
Hôtel
lt héberge
15
Rôles
Personne
Entreprise
employé
employeur
Personne
Hôtel
client
personnel
16
Cardinalités
  • Nombre déléments participant à la relation
  • x exactement "x" (entier naturel gt 0)
  • exemples "1", "7"
  • x..y de "x" à "y" (entiers naturels ou
    variables avec y gt x)
  • exemples "0..1", "3..n", "1..31"
  • plusieurs (équivalent à "0..n" et "0..")
  • x.. "x" ou plus
  • exemples "0..", "5.."

17
Cardinalités
Homme
Femme
0..1
0..1
mariéA
Maison
Personne
1

parent
2
0..
enfant
18
Relation de dépendance
  • relation d'utilisation unidirectionnelle
  • une modification de l'élément dont on dépend,
    peut nécessiter une mise à jour de l'élément
    dépendant

Fenetre
EvenementSouris
19
Association à navigabilité restreinte
  • Par défaut, une association est navigable dans
    les deux sens
  • La réduction de la portée de l'association peut
    être exprimée dans un modèle pour indiquer que
    les instances d'une classe ne "connaissent" pas
    les instances d'une autre

Electeur
Candidat
0..1

vote
20
Association n-aire
  • association reliant plus de deux classes

Travaux
Copropriété
Entreprise
21
Classe dassociation
  • classe réalisant la navigation entre les
    instances d'autres classes

Salle
Salle
Professeur
Etudiant
Professeur
ltltassociation ternairegtgt Cours
Etudiant
jour heure duree
Cours
jour heure duree
22
Association qualifiée
  • Une association qualifiée met en relation deux
    classes sur la base dun attribut spécifique
    appelé  clé 

Banque
Personne
1..n

numCompte
23
Contraintes sur les associations
  • Les contraintes sont des expressions qui
    précisent le rôle ou la portée d'un élément de
    modélisation (elles permettent d'étendre ou
    préciser sa sémantique)
  • Sur une association, elles peuvent restreindre le
    nombre d'instances visées ("expressions de
    navigation") 
  • Les contraintes peuvent s'exprimer en langage
    naturel. Graphiquement, il s'agit d'un texte
    encadré d'accolades

24
Principales contraintes
  • Contrainte ordonnée une relation dordre
    décrit les objets
  • Contrainte sous-ensemble une collection est
    incluse dans une autre collection
  • Contrainte ou-exclusif pour un objet donné,
    une seule association est valide

25
Exemples
Peintre
Tableau
1
1..n
peint
ordonnée
Armée
Personne
militaire
sous-ensemble
général
BTS
Personne
enseignant
ou-exclusif
étudiant
26
Agrégation
  • L'agrégation est une association non symétrique,
    qui exprime un couplage fort et une relation de
    subordination
  • Représente une relation de type "ensemble /
    élément"
  • A un même moment, une instance d'élément agrégé
    peut être liée à plusieurs instances d'autres
    classes l'élément agrégé peut être partagé
  • Une instance  ensemble  peut exister sans
    élément (et inversement) Cycles de vies
    indépendants

27
Agrégation
  • Une agrégation peut notamment (mais pas
    nécessairement) exprimer
  • qu'une classe (un "élément") fait partie d'une
    autre ("lensemble"),
  • qu'un changement d'état d'une classe, entraîne un
    changement d'état d'une autre,
  • qu'une action sur une classe, entraîne une action
    sur une autre

28
Exemple
Pièce
Mur
29
Composition
  • Cas particulier dagrégation contenance
    physique
  • Représente une relation de type "composé /
    composant"
  • Les cycles de vies des composants et du composé
    sont liés si le composé est détruit (ou copié),
    ses composants le sont aussi 
  • A un même moment, une instance de composant ne
    peut être liée qu'à un seul composé

30
Exemple
Voiture
Carrosserie
Moteur
Piston
31
Héritage convention graphique
Super_classe
Sous_classe
32
Spécialisation
Oeuvre
Titre Auteur Reference
Livre
Film
Opera
NbPages
Duree
Orchestre
Roman
BD
33
Spécialisation
Oeuvre
Titre Auteur Reference
Livre
Film
Opera
NbPages
Duree
Orchestre
Roman
BD
34
Généralisation
Vehicule
marque modele VitesseMax
Voiture
Bateau
Avion
Plaque cylindree
tirantEau voiles
altitudeMax portee
35
Notion de paquetage
36
Packages
  • Les paquetages sont des éléments d'organisation
    des modèles
  • Ils regroupent des éléments de modélisation,
    selon des critères purement logiques 
  • Ils permettent d'encapsuler des éléments de
    modélisation
  • Ils permettent de structurer un système en
    catégories (vue logique) et sous-systèmes (vue
    des composants)
  • Ils servent de "briques" de base dans la
    construction d'une architecture
  • Ils représentent le bon niveau de granularité
    pour la réutilisation
  • Les paquetages sont aussi des espaces de noms

37
Relation entre paquetage
  • Dépendance
  • Au moins un élément du paquetage source utilise
    les services dau moins un des éléments du
    paquetage destination
  • Héritage
  • Au moins un élément du paquetage source
    spécialise (est dérivée d) au moins un des
    éléments du paquetage destination

38
Convention graphique
P1
P2
P4
P3
P5
P6
39
Exemple
Voitures
Voiture
Motorisation
Piston
Carbu
Porte
Boite
Moteur
Roue
Phare
40
Diagrammes dobjets
41
Object diagram
  • Représentent un ensemble dobjets et leurs liens
  • Sont des vues statiques des instances des
    éléments qui apparaissent dans les diagrammes de
    classes
  • Présentent la vue de conception dun système,
    exactement comme les diagrammes de classes, mais
    à partir de cas réel ou de prototypes
  • Est une instance dun diagramme de classes
  • Les diagrammes de classes peuvent aussi contenir
    des objets

42
Voiture
Instance anonyme de la classe voiture
golfVoiture
Instance nommée de la classe voiture
golf
Instance nommée dune classe anonyme
golfVoiture
Couleur "bleu M " Puissance 7ch
Spécification des attributs
golfVehiculeVoitureBerline
Spécification du chemin complet
Voiture
Collection dinstance (tableau)
43
Objets composites
Velo
Roue
2
Derailleur
1
Pedale
1
Pedalier
1
44
Diagrammes dobjets
Personne
Maison
Ville
Voiture
45
Diagrammes dobjets
Personne
Ordinateur
VideoProjecteur
professeur
eleve
Personne
46
Diagrammes dobjets
Personne
Ordinateur
VideoProjecteur
Proprietaire ORT 
professeur
eleve
Objet à état précis
Personne
47
Diagrammes dobjets
Bus
Moteur
Destination
Write a Comment
User Comments (0)
About PowerShow.com