Vous êtes sur la page 1sur 23

Introduction à UML

Modélisation Orientée Objet de Systèmes Informatiques

Par Dr Lamia BEN GHEZAIEL


ISAMM 2022-2023

1
Plan

1 Introduction à la Modélisation Orientée Objet


2 Modélisation UML
3 UML et méthodologie

2
Matériel et logiciel

Systèmes informatiques :
80 % de logiciel ;
20 % de matériel.
Depuis quelques années, la fabrication du matériel est
assurée par quelques fabricants seulement.
Le matériel est relativement fiable.
Le marché est standardisé.

Les problèmes liés à l'informatique sont essentiellement des


problèmes de logiciel.

3
« La crise du logiciel »

Étude sur 8 380 projets (Standish Group, 1995) :


Succès : 16 %;
Problématique : 53 % (budget ou délais non respectés,
défaut de fonctionnalités) ;
Échec : 31 % (abandonné).

Le taux de succès décroît avec la taille des projets et la taille


des entreprises.
Génie Logiciel (Software Engineering) :
Comment faire des logiciels de qualité ?
Qu'attend-on d'un logiciel ? Quels sont les critères de

4
qualité ?
Critères de qualité d'un logiciel
Utilité
 Adéquation entre le logiciel et les besoins des utilisateurs ;

Utilisabilité
Fiabilité
Interopérabilité : Interactions avec d'autres logiciels ;
Performance
Portabilité
Réutilisabilité
Facilité de maintenance
 Un logiciel ne s'use pas pourtant, la maintenance absorbe une très
grosse partie des efforts de développement.

5
Cycle de vie

La qualité du processus de fabrication est garante de la


qualité du produit.

Pour obtenir un logiciel de qualité, il faut en maîtriser


le processus d'élaboration.
 La vie d'un logiciel est composée de différentes étapes.
 La succession de ces étapes forme le cycle de vie du logiciel.
 Il faut contrôler la succession de ces différentes étapes.

6
Etapes du développement

Étude de faisabilité
Spécification
 Déterminer les fonctionnalités du logiciel.

Conception
 Déterminer la façon dont le logiciel fournit les différentes
fonctionnalités recherchées.
Codage
Tests
 Essayer le logiciel sur des données d'exemple pour s'assurer qu'il
fonctionne correctement.
Maintenance

7
Modélisation

8
Modélisation
La modélisation consiste à créer une représentation
simplifiée d'un problème: le modèle. Grâce au modèle
il est possible de représenter simplement un problème,
un concept et le simuler.
La modélisation comporte deux composantes :
L'analyse, c'est-à-dire l'étude du problème
la conception, soit la mise au point d'une solution au
problème Le modèle constitue ainsi une représentation
possible du système pour un point de vue donné.

9
Modèle
Un modèle est une représentation abstraite de la réalité
qui exclut certains détails du monde réel.
Il permet de réduire la complexité d'un phénomène en
éliminant les détails qui n'influencent pas son
comportement de manière significative.
Il reflète ce que le concepteur croit important pour la
compréhension et la prédiction du phénomène modélisé,
les limites du phénomène modélisé dépendent des
objectifs du modèle.

10
Pourquoi modéliser?
Un modèle est une simplification de la réalité qui
permet de mieux comprendre le système à développer
Il permet
 De visualiser le système comme il est ou comme il
devrait être
 De valider le modèle vis-à-vis des clients
 De spécifier les structures de données et le comportement
du système
 De fournir un guide pour la construction du système
 De documenter le système et les décisions prises

11
Qu'apporte la modélisation ?

Plus grande indépendance du modèle par rapport aux


fonctionnalités demandées
Des fonctionnalités peuvent être ajoutées ou
modifiées, le modèle objet ne change pas
Plus proche du monde réel

12
Langages de modélisation
Un langage de modélisation doit définir :
 La sémantique des concepts ;
 Une notation pour la représentation de concepts ;
 Des règles de construction et d'utilisation des concepts.

Des langages à différents niveaux de formalisation


Langages formels (Z,B,VDM) : le plus souvent mathématiques, au grand
pouvoir d'expression et permettant des preuves formelles sur les spécifications ;
Langages semi-formels (MERISE, UML...) : le plus souvent graphiques, au
pouvoir d'expression moindre mais plus faciles d'emploi.
L'industrie du logiciel dispose de nombreux langages de modélisation :
Adaptés aux systèmes procéduraux (MERISE...) ;
Adaptés aux systèmes temps réel (ROOM, SADT...) ;
Adaptés aux systèmes à objets (OMT, Booch, UML...).
Le rôle des outils (Ateliers Génie Logiciel) est primordial pour
l'utilisabilité en pratique des langages de modélisation.
13
Modélisation par décomposition fonctionnelle

Approche descendante :
Décomposer la fonction globale jusqu'à obtenir des
fonctions simples à appréhender et donc à programmer.

C'est la fonction qui donne la forme du système.

14
Modélisation orientée objets

La Conception Orientée Objet (COO) est la méthode


qui conduit à des architectures logicielles fondées sur
les objets du système, plutôt que sur une
décomposition fonctionnelle.
C'est la structure du système lui donne sa forme.

On peut partir des objets du domaine (briques de base)


et remonter vers le système global : approche
ascendante.
Attention, l'approche objet n'est pas seulement ascendante.
15
Unified Modeling Language (UML)
Au milieu des années 90, les auteurs de Booch, OOSE et
OMT ont décidé de créer un langage de modélisation unifié
avec pour objectifs :
Modéliser un système des concepts à l'exécutable, en utilisant les
techniques orientée objet ;
Réduire la complexité de la modélisation ;
Utilisable par l'homme comme la machine :
 Représentations graphiques mais disposant de qualités formelles
suffisantes pour être traduites automatiquement en code source ;
 Ces représentations ne disposent cependant pas de qualités formelles
suffisantes pour justifier d'aussi bonnes propriétés mathématiques que des
langages de spécification formelle (Z, VDM...).
Officiellement UML est né en 1994.
UML v2.0 date de 2005. Il s'agit d'une version majeure apportant
des innovations radicales et étendant largement le champ
16
d'application d'UML.
Historique
UML est né en octobre 1994 chez Rational Software
Corporation à l’initiative de G. Booch et de J. Rumbaugh.
UML 1.1 a été standardisé par l’OMG (Object Management
Group) le 17 novembre 1997 suite à la demande émanant de
la collaboration de plusieurs entreprises (Hewlett-Packard,
IBM, i-Logix, ICON Computing, IntelliCorp, MCI
Systemhouse, Microsoft, ObjecTime, Oracle, Platinum
Technology, Ptech, Rational Software Corporation, Reich
Technologies, Softeam, Sterling Software, Taskon et Unisys).
La version actuelle (depuis juin 1999) est UML 1.3 (la version
1.4 sera bientôt prête, afin de préparer la prochaine version
2.0).

17
Un langage unifié pour la modélisation objet
UML (Unified Modeling Language) est un langage unifié
pour la modélisation objet.
 UML est un langage (de modélisation objet) et propose
donc une notation et une sémantique associée à cette
notation (i.e. des modèles), mais pas de processus (i.e. de
démarche proposant un enchaînement d’étapes et d’activités
qui mènent à la résolution d’un problème posé) ; UML n’est
donc pas une méthode.
UML a une approche entièrement (i.e. couvrant tout le cycle
de développement : analyse, conception et réalisation) objet
(et non fonctionnelle) : le système est décomposé en objets
collaborant (plutôt qu’en tâches décomposées en fonctions
plus simples à réaliser).
18
Domaines d'utilisation

Systèmes d'information des entreprises


Banques et services financiers
Télécommunications
Transport
Défense et aérospatiale
Scientifique
Applications distribuées par le web
…

19
Les Vues en UML

Les vues définissent le système sont des formulations


du problème selon un certain point de vue
Elles peuvent se chevaucher pour compléter une
description

20
Aspects UML

Aspect fonctionnel
Que fait le système ?
Diagramme de cas d'utilisation
Aspect statique
Sur quoi l'objet agit-il ?
Diagramme de classes et d'objets
Aspect dynamique
Séquencement des actions dans le système
Diagramme de séquences, de collaboration, d'états
transition et d'activité

21
La modélisation UML
 Le méta-modèle UML fournit une panoplie d'outils permettant de
représenter l'ensemble des éléments du monde objet (classes, objets, ...)
ainsi que les liens qui les relie. Toutefois, étant donné qu'une seule
représentation est trop subjective, UML fournit un moyen astucieux
permettant de représenter diverses projections d'une même représentation
grâce aux vues.
 Une vue est constituée d'un ou plusieurs diagrammes.
On distingue trois types de vues :
 Les vues fonctionnelles
 diagrammes de cas d'utilisation

 Les vues statiques, c'est-à-dire représentant le système physiquement


 diagrammes d'objets ,
 diagrammes de classes
 diagrammes de composants
 diagrammes de déploiement

 Les vues dynamiques, montrant le fonctionnement du système


22  diagrammes de séquence
 diagrammes de collaboration
Bibliographie UML

 « UML 2.0, guide de référence »


 James Rumbaugh, Ivar Jacobson, Grady Booch
 Editions Campus Press (2005)

 « UML 2.0 »
 Benoît Charoux, Aomar Osmani, Yann Thierry-Mieg
 Editions Pearson, Education France (2008)

« UML 2.0 Superstructure » et « UML 2.0


Infrastructure »
 OMG (Object Management Group)
 www.uml.org (2004).

23

Vous aimerez peut-être aussi