Vous êtes sur la page 1sur 17

Cours

Analyse et Conception
Orientées Objet UML

Hassan Silkan
Silkan_h@yahoo.fr
Faculté des sciences d’El-Jadida
I. UML
Approche fonctionnelle

 Décomposition fonctionnelle depuis le cahier des charges jusqu’au sous-


programmes
Fonction principale

Sous-Fonction 1 Sous-Fonction 2

Sous-Fonction 1.1 Sous-Fonction 1.2 Sous-Fonction 2.1 Sous-Fonction 2.2

…… …… …… ……

 Approche traditionnelle et intuitive utilisant des procédures et des fonctions.


 Les grands problèmes sont ainsi décomposés en sous-problèmes plus faciles.
 Décomposer la fonction globale jusqu’à obtenir des fonctions
 simples à programmer : Approche descendante.
Approche Objet

 1966 une idée à Oslo


 1980 : Smalltalk
 1988 : Schlaer/Mellor (OOSA)

• Les objets sont des entités autonomes qui collaborent afin de fournir les
fonctionnalités du système.
• Les objets représentent des entités du monde réel de l’application.
Objectifs de l’approche Objet

 On identifie les éléments du système et on en fait des objets.


 On cherche à faire collaborer ces objets pour qu’ils accomplissent la tâche
voulue.
 Modularité
 Changements de l’attitude mentale du programmeur (Penser objets!).

 Architecture Flexible
 Evolution du système
 Réutilisation des objets
 Etc
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 facile 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,...).
Unification des méthodes
orientées objet

Méthode = Processus + Langage

 La guerre des méthodes ne fait plus avancer la technologie des objets


 Recherche d’un langage commun unique
 Utilisable par toutes les méthodes
 Adapté à toutes les phases du développement
 Compatible avec toutes les techniques de réalisation
Unification des méthodes
orientées objet
UML : Unified Modeling Language
(Langage de Modélisation Unifié / Langage unifié pour la
modélisation objet )

Unified : UML "unifie" des méthodes de conception logicielle orientées objet -


telles que Booch, OMT et OOSE, qui co-existaient sans beaucoup de
compatibilité entre elles. UML les rassemble non pas en en proposant une
synthèse, mais en créant un « langage de modélisation ».

Modeling :
En pratique, l'analyse est toujours orientée par des contraintes de faisabilité qui
relèvent de la conception --> choix du terme de modélisation (modeling).

Language :
UML n'est pas une méthode, mais un langage --> une notation unique pour faciliter
la conception de programmes.
Unification des méthodes
orientées objet

UML V2.0 date de 2005. Il s'agit d'une version majeure apportant des
innovations radicales et étendant largement le champ d'application d'UML.
Unification des méthodes
orientées objet

Principes et caractéristiques d’UML :


 Influencée par les bonnes idées des autres méthodes
 Mûrie par le travail en commun
 Langage visuel de modélisation (Utilisation de graphes/ schémas)
 Conception orienté objet
 Couvre toutes les phases d'un projet (analyse des besoins, … déploiement).
 Lisible par des humains et des machines.
 Supportée par plusieurs outils (Objecteering, Rational ROSE …)
 Langage ouvert (mécanismes d'extensibilité : stéréotypes, contraintes, …)
 Pas de méthodologie standard
 indépendant de tout langage de programmation et de toute méthode de
conception
Unification des méthodes
orientées objet

UML un langage pour :


 visualiser
 chaque symbole graphique a une sémantique
 spécifier
 de manière précise et complète, sans ambiguïté,
 construire
 les classes, les relations peuvent être générées automatiquement
 documenter
 les différents diagrammes, notes, contraintes, exigences seront
présentés dans un document.
Unification des méthodes
orientées objet

Axes de modélisation d’un système


Modélisation selon trois axes :
 Structurel (vision statique)
 Comportemental (vision dynamique)
 fonctionnel (vision fonctionnelle)
Statique (ce que le système EST)
 diagramme de classes
 diagramme d’objets
 diagramme de composants
 diagramme de déploiement
Dynamique (comment le
système EVOLUE) Fonctionnel
(ce que le système FAIT)

 diagramme de séquence
 diagramme de collaboration  diagramme de cas d’utilisation
 diagramme d’états-transitions  diagramme de collaboration
 diagramme d’activités
Unification des méthodes
orientées objet
Vision utilisateur du système
 Cas d’utilisation
Aspects statiques du système
 Description des données et de leurs relations
 Structuration en paquetages
Aspects dynamiques du système (comportemental)
 Diagramme de séquence (scénarios)
 Diagramme de collaborations (entre objets)
 Diagramme d’états-transitions
 Diagramme d’activités
Unification des méthodes
orientées objet

Les diagrammes UML :


Unification des méthodes
orientées objet

 Diagramme des cas d'utilisation (Use Case Diagram) : permet d'identifier les possibilités
d'interaction entre le système et les acteurs.

 Diagramme de classe (Class diagram) : représente les classes intervenantes dans le système.

 Diagramme états-transitions (State Machine Diagram) : permet de décrire sous forme de


machine à états finis l'évolution des états d'une partie du système.

 Diagramme d'activité (Activity Diagram) : permet de décrire le comportement d'une partie


du système sous forme de flux ou d'enchaînement d'actions

 Diagrammes de séquence (Sequence diagram) : représentation séquentielle du déroulement


des traitements et des interactions entre les éléments du système et/ou de ses acteurs.

 Diagramme de composants (Component diagram) : permet de montrer les composants du


système d'un point de vue physique : fichiers sources, librairies, exécutables, etc...

 Diagramme de déploiement (Deployment diagram) : montre la disposition physique des


matériels qui composent le système et la répartition des composants sur ces matériels
Unification des méthodes
orientées objet

 Le rôle des outils (Ateliers Génie Logiciel) est primordial pour l'utilisabilité en
pratique des langages de modélisation.
 Il existe de nombreux logiciels de modélisation UML. La plupart introduisent
des notations particulières non conformes et très peu supportent les différents
types de diagrammes définis par le standard.
UML

En résumé

 UML est un langage de modélisation, pas une méthode


 UML est un langage de modélisation objet
 UML convient pour toutes les méthodes objet
 UML est dans le domaine public

UML est le langage standard de


modélisation orientée objet

Vous aimerez peut-être aussi