Vous êtes sur la page 1sur 26

ATELIER UML

2ème année
Ingénieurs en Informatique
ENIT

Nejib Ben Hadj-


Hadj-Alouane
Informations générales
2

 Cours
 Atelier UML
 Professeur
 Nejib Ben Hadj-Alouane
 E-mail: nejib_bha@yahoo.com
 Labos OASIS-B (derrière buvette) : 501 

 Évaluation
 100% CC
 30% -- Comptes rendus: TD hebdomadaires
 70% -- Projet : rapport (soutenance)
 IMPORTANT : Présence à chaque séance!!!

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Objectifs de l’Atelier
3

 Maitrise de la notation et des diagrammes de base


d’UML

Cahier des charges


Diagrammes d’analyse et
de conception
Description
textuelles

 Analyse et étude de cas concret

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Plan de l’Atelier/Bureau Etudes
4

 Séance 1
 Introduction
 Diagramme de cas d’utilisation
 Séance 2
 Diagramme de classes
 Structuration en paquetages
 Séance 3
 Diagrammes d’interaction
 Diagramme de séquence
 Diagramme de collaboration
 Séance 4
 Diagramme d’états
 Diagramme d’activité

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Déroulement des séances
5

 Correction TD séance précédente.


 Présentation des nouveaux concepts/diagrammes.
 Application sur TD (fournir compte rendu individuel
début de prochaine séance).
 Discussion et avancement de l’étude de cas.

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Références
6

 Livres

 Le guide de l’utilisateur UML, Grady Booch, James


Rumbaugh, et Ivar Jacobson, Edition Eyrolles 2000.

 UML distilled second edition, Martin Fowler and Kendall


Scott, Addison-Wesley, 1999.

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Historique
7

• OMT (Object Modeling Technique), James Rumbaugh +


BOOCH, Grady Booch Object modeling language
• OOSE, Ivar Jacobson formalisation des besoins
• Collaboration des 3 chercheurs au sein de la société
Rational Software
• Fusion des méthodes pour la création d’UML (Unified
Modeling Language)

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Historique
8

Rumbaugh BOOCH Jacobson


(OMT) (OOD) (OOSE)
Basé sur l’approche objet
1994

Notation
unifiée

1995 Mars 2003


Nov. 1997

1997 UML1.0 UML1.1 UML1.5 UML2.0

Rational Software OMG


Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017
UML (Unified Modeling Language)
9

 Norme du langage de modélisation objet


Langage standard de modélisation objet
 Publié en novembre 1997 par l’OMG (Object
Management Group : http://www.omg.org/)
 OMG = instance de normalisation
internationale du domaine de l’objet
Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017
A quoi sert UML ?
10

 UML ni une méthode, ni un processus !

 UML, langage pseudo-formel


Fondé sur un méta-modèle, définissant:
• les éléments de modélisation (les concepts manipulés par le langage)
• la sémantique de ces éléments (leur définition et le sens de leur
utilisation)
Notation proposée permettant de représenter graphiquement les
éléments de modélisation du méta-modèle

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


A quoi sert UML ?
11

 UML cadre d'analyse objet, offrant :


• différentes vues (perspectives) complémentaires
d'un système guidant l'utilisation des concept
objets
• plusieurs niveaux d'abstraction permettant le
contrôle de la complexité dans l'expression des
solutions objet
Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017
A quoi sert UML ?
12

 UML est un support de communication


• Sa notation graphique pour exprimer visuellement une solution objet
• Aspect formel de sa notation pour limiter les ambiguïtés et les
incompréhensions
• Son aspect visuel pour faciliter la comparaison et l'évaluation de
solutions
• Son indépendance (par rapport aux langages d'implémentation,
domaine
d'application, processus...) pour un langage universel

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Avantages et inconvénients d'UML
13

Les points forts d'UML


 UML, un langage formel et normalisé (pseudo … )
• Gain de précision
• Gage de stabilité
• Encourager l'utilisation d'outils
• Favorise l’utilisation des outils CASE
 UML, un support de communication performant
• Cadrer l'analyse.
• Faciliter la compréhension de représentations abstraites complexes
• Caractère polyvalent et souplesse langage universel

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Avantages et inconvénients d'UML
14

Les points faibles d'UML


 Nécessité d’un apprentissage et passage par
une période d'adaptation pour la mise en
pratique d’UML
 Le processus (non couvert par UML) = une
autre clé de la réussite d'un projet
Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017
Modéliser avec UML
15

Qu'est-ce qu'un modèle ?


 Abstraction de la réalité
Processus consistant à l’identification des caractéristiques
intéressantes d'une entité, en vue d'une utilisation précise
 Une vue subjective mais pertinente de la réalité
Définition d’une frontière entre la réalité et la perspective de
l'observateur.
Non pas "la réalité", mais une vue très subjective de la réalité

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Modéliser avec UML
16

Comment modéliser avec UML ?


 Langage permettant de représenter des modèles, mais ne définissant
pas le processus d'élaboration des modèles !
 Dans le cadre de la modélisation d'une application informatique,
une démarche étant:
• itérative et incrémentale
• guidée par les besoins des utilisateurs du système
• centrée sur l'architecture logicielle
Qualités nécessaire pour la réussite d'un projet

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Les diagrammes de UML (1/2)
17

 Les diagrammes structurels : pour la


représentation des aspects statiques d’un système
 – Diagramme de classes
 – Diagramme d’objets
 – Diagramme de composants
 – Diagramme de déploiement (modifié dans UML 2)
 – Diagramme de paquetages (nouveau dans UML 2)
 – Diagramme de structure composite (nouveau dans
UML 2)

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Les diagrammes de UML (2/2)
18

 Les diagrammes de comportement : pour la


représentation de la partie dynamique d’un système réagissant aux
événements et permettant de produire les résultats attendus par les
utilisateurs

 – Diagramme des cas d’utilisation


 – Diagramme d’états-transitions (machine d’état)
 – Diagramme d’activités (modifié dans UML 2)
 – Diagramme de séquences (modifié dans UML 2)
 –Diagramme de communication (anciennement appelé
collaboration)
 – Diagramme global d’interaction (nouveau dans UML 2
 – Diagramme de temps (nouveau dans UML 2)

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


Modéliser avec UML (Ph. Kruchten)
19

Vue logique Vue des processus

Besoins des
utilisateurs

Vue physique Vue de


développement

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


La vue des besoins des utilisateurs
20

 Appelée « vue des cas d'utilisation »


 Guidage de toutes les autres vues
 Définition des besoins des clients du système
 Définition de l'architecture du système centrée sur la satisfaction (la
réalisation) de ces besoins
 A l'aide de scénarios et de cas d'utilisation, cette vue conduit à la définition
d'un modèle d'architecture pertinent et cohérent
 Identification des interfaces critiques
 Focalisation sur les problèmes importants
 Sert à la productions des tests (pour le contrôle de qualité du système)

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


La vue logique (1/2)
21

 Vue de haut niveau


 Focalisation sur l'abstraction et l'encapsulation
 Modélisation des éléments et mécanismes principaux du système
 Identification des éléments du domaine, ainsi que les relations et
interactions entre ces éléments :
 • Eléments du domaine liés au(x) métier(s) de l'entreprise,
 • Indispensables à la mission du système,
 • Réutilisables (représentant un savoir-faire).

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


La vue logique (2/2)
22

 Organisation (selon des critères purement logiques),


des éléments du domaine en "catégories" :
 • pour répartir les tâches dans les équipes,
 • regroupement de ce qui peut être générique,
 • isoler ce qui est propre à une version donnée,
etc...

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


La vue des processus
23

 Vue très importante dans les environnements multitâches


 Pour montrer :
• Décomposition du système en terme de processus (tâches)
• Interactions entre les processus (leur communication)
• Synchronisation et communication des activités parallèles
(threads)

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


La vue physique (vue de déploiement)
24

 Vue très importante dans les environnements distribués


 Description des ressources matérielles et de la répartition du
logiciel dans ces ressources :
• La disposition et la nature physique des matériels, ainsi que leurs
performances
• L'implantation des modules principaux sur les nœuds du réseau
• Les exigences en terme de performances (temps de réponse,
tolérance aux fautes et pannes...)

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


La vue de développement (vue des
25
composants) (1/2)
 L'allocation des éléments de modélisation dans des
modules (fichiers sources, bibliothèques dynamiques, bases
de données, exécutables, etc...).
 Identification des modules qui réalisent (physiquement) les
classes de la vue logique
 L'organisation des composants, c'est-à-dire la distribution
du code en gestion de configuration, les dépendances entre
les composants...

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017


La vue de développement (vue des
26
composants) (2/2)
 Les contraintes de développement (bibliothèques
externes...)

 La vue des composants montre aussi l'organisation


des modules en "sous-systèmes", les interfaces des
sous-systèmes et leurs dépendances (avec d'autres
sous-systèmes ou modules)

Atelier UML / Nejib Ben Hadj-Alouane 08/11/2017