uml diagrammes de classes n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
UML : Diagrammes de Classes PowerPoint Presentation
Download Presentation
UML : Diagrammes de Classes

Loading in 2 Seconds...

play fullscreen
1 / 111

UML : Diagrammes de Classes - PowerPoint PPT Presentation


  • 84 Views
  • Uploaded on

UML : Diagrammes de Classes . Classes, attributs, opérations, méthodes, associations, généralisation, dépendance, interface, …. Notions de base. La classe Les attributs Les symboles d’annotation Les opérations Les mots-clés, stéréotypes et propriétés. La Classe : Définition.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'UML : Diagrammes de Classes' - sorcha


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
uml diagrammes de classes

UML : Diagrammes de Classes

Classes, attributs, opérations, méthodes, associations, généralisation, dépendance, interface, …

notions de base
Notions de base
  • La classe
  • Les attributs
  • Les symboles d’annotation
  • Les opérations
  • Les mots-clés, stéréotypes et propriétés.
la classe d finition
La Classe : Définition
  • Une classe est un classificateur
    • Un classificateur UML est

un élément de modèle qui décrit des caractéristiques structurelles et comportementales.

  • Une « classe » peut être soit :
    • une classe conceptuelle (‘abstraite’, au sens Analyse),
    • une classe logique (indépendante d’un langage de programmation),
    • une classe physique (Java/ C#/ C++).
la classe notation

Classe

Mode Esquisse

Classe

Mode Esquisse

Visual Studio 2005

La Classe : Notation
  • Plusieurs notations possibles (normalement un rectangle).

Visual Paradigm for UML

la classe abstraite notation
La Classe abstraite : Notation
  • Il existe une notation particulière pour les classes abstraites. Le nom de la classe apparaît en italique.
les attributs d finition
Les Attributs : Définition
  • Les attributs d’une classe (également nommés propriétés structurelles en UML) peuvent se représenter de différentes façons :
    • Texte, par exemple m_driver : CWifiDriver
    • Ligne d’association
    • Une combinaison des deux.
les attributs repr sentation

Texte

Association

Association

+

Texte

Les Attributs : Représentation
les attributs visibilit
Les Attributs : Visibilité
  • En notation UML, les marques de visibilité sont :
    • « + » pour un attribut public
    • « - » pour un attribut privé
les attributs type
Les Attributs : Type

Pour les types « classes », on utilisera de préférence une ligne d’association afin de mieux visualiser les relations entre classes.

les attributs notation pour le format texte
Les Attributs : Notation pour le format Texte
  • La syntaxe complète de la notation d’un attribut sous forme texte est la suivante :

Visibiliténom : type[multiplicité]=défaut{chaîne de propriétés}

    • + m_Driver : CWifiDriver[0..1]=null
    • - m_Paquets : CPacket[0..*]{ordered}
    • - m_Paquets : ListePackets{list, ordered}
    • - DefTimeOut : integer=20 {readonly}
  • Les attributs sont supposés privés si aucune visibilité n’est précisée.
    • m_Paquets : CPacket[0..*]{ordered}

est équivalent à

    • - m_Paquets : CPacket[0..*]{ordered}
les attributs notation pour le format texte1
Les Attributs : Notation pour le format Texte
  • UML permet d’employer la syntaxe de n’importe quel langage de programmation pour déclarer les attributs (pourvu que l’utilisateur et/ou l’outil en soient informés).
    • - m_Delay : UInt32
    • - m_Packets : ArrayList=null
    • - m_Packets : List<CPacket> =null
    • privateList<CPacket>m_Packets;
les attributs notation pour le format ligne d association
Les Attributs : Notation pour le format Ligne d’association
  • Pour les lignes d’associations, on a :
    • Une flèche de navigabilité pointant de la source (CMonitoring) vers l’objet cible (CWifiDriver) indiquant que CMonitoring a un attribut qui est une référence sur une instance de CWifiDriver
les attributs notation pour le format ligne d association1
Les Attributs : Notation pour le format Ligne d’association
  • Pour les lignes d’associations, on a :
    • Une indication de multiplicité du côté cible, mais non du côté source.
les attributs notation pour le format ligne d association2

Zéro ou plus;

plusieurs

Un ou plus

De 1 à 40

Classe référencée

Classe référencée

Classe référencée

Classe référencée

Classe référencée

5

1..40

*

1..*

3,5,8

Exactement 5

Exactement 3,5 ou 8

Les Attributs : Notation pour le format Ligne d’association
  • Les multiplicités possibles sont :
les attributs notation pour le format ligne d association3
Les Attributs : Notation pour le format Ligne d’association
  • Pour les lignes d’associations, on a :
    • Un nom de rôle (m_Driver) seulement du côté cible pour mentionner le nom de l’attribut.
    • Pas de nom d’association.
les attributs notation pour le format ligne d association4
Les Attributs : Notation pour le format Ligne d’association
  • En résumé, une ligne d’association est définie par :
    • une flèche de navigabilité,
    • un nom de rôle (optionnel), officiellement appelée nom d’extrémité d’association, pour indiquer le nom de l’attribut,
    • une valeur de multiplicité,
    • ainsi qu’une chaîne de propriétés telle que {ordered} ou {list,ordered}.
les attributs notation pour le format ligne d association5
Les Attributs : Notation pour le format Ligne d’association
  • Une chaîne de propriétés a la forme suivante :
    • { <mot-clé> <mot-clé>* }
    • Autrement dit, une suite de mots-clés situés à l’intérieur d’accolades.
    • Les mots-clés sont :
      • soit définis par UML : ordered, unique, …
      • soit définis par l’utilisateur : list (faisant référence à l’interface List d’un langage orienté objet).
les attributs format texte vs format ligne d association
Les Attributs : Format Texte vs Format Ligne d’association
  • Les types de données courants sont primitifs :
    • Int, float, double, DateTime, Date, Color, string, PhoneNumber, …
    • Pour les attributs correspondants à ces types, on utilisera de préférence la notation sous forme de texte.
  • Pour les types de données définis par une classe, on utilisera de préférence la notation sous forme de ligne d’association.
    • Permet de mieux visualiser les relations entre classes (accentue les connexions).
symboles d annotation notes commentaires contraintes
Symboles d’annotation : notes, commentaires, contraintes,
  • Les symboles d’annotation sont possibles dans n’importe quel diagramme UML mais ils sont particulièrement courants dans les diagrammes de classes.
  • Un symbole d’annotation a la forme d’un rectangle au coin corné relié par une ligne pointillée à l’élément annoté.
symboles d annotation notes commentaires contraintes1
Symboles d’annotation : notes, commentaires, contraintes,
  • Un symbole d’annotation peut représenter plusieurs choses, par exemple :
    • Une note ou un commentaire UML qui, par définition n’a pas d’impact sémantique.
    • Une contrainte UML, auquel cas elle doit être placée entre accolades { … }
op rations notation
Opérations : Notation
  • Le format complet de la syntaxe officielle d’une opération est le suivant :

Visibiliténom{liste de paramètres}{chaîne de propriétés}

  • En UML 2.0, le type de retour a été supprimé de la notation. Néanmoins, il est plus judicieux de continuer à utiliser le format avec le type de retour.

Visibiliténom{liste de paramètres}: type de retour{chaîne de propriétés}

op rations notation1
Opérations : Notation

Visibiliténom{liste de paramètres}: type de retour{chaîne de propriétés}

  • +StartCapture(delay : integer): void
  • +StartCapture(delay : integer)
  • +StartCapture(delay)
  • + StopCapture(): void
  • + StopCapture()
  • + GetCurrentPacket(): CPacket
  • + SetInterface(name : string): boolean
  • - RetrieveInternalPacket()
op rations notation3
Opérations : Notation
  • Les opérations sont considérées comme publiques lorsque la visibilité n’est pas explicitement spécifiée.
  • Les chaînes de propriétés contiennent des informations supplémentaires arbitraires, par exemple les exceptions qui doivent être lancées, l’indication qu’une opération est abstraite, etc.

-InternalStartCapture() { Exception : InvalidInterfaceException }

op rations notation4
Opérations : Notation
  • Outre la syntaxe officielle des opérations, UML permet d’écrire les signatures des opérations dans n’importe quel langage, Java par exemple, pourvu que le lecteur ou l’outil en soient informés.
    • + StartCapture(delay : integer): boolean{ exception InvalidInterfaceException }
    • public boolStartCapture(intdelay) throwsInvalidInterfaceException
op rations vs m thodes
Opérations vs Méthodes
  • Une opération n’est pas une méthode. Une opération UML est une déclaration, avec un nom, des paramètres, un type de retour, une liste d’exceptions et éventuellement un ensemble de contraintes sous forme de pré- et de postconditions.
  • Mais ce sont les méthodes qui sont les implémentations.
m thodes d finition
Méthodes : Définition
  • Une méthode UML est l’implémentation d’une opération. Si des contraintes sont définies, la méthode doit les satisfaire. Une méthode peut être représentée de différentes façons :
    • Dans les diagrammes d’interactions, par les détails et la séquences des messages;
    • Dans les diagrammes de classes, avec un symbole de note UML assortie du stéréotype « méthod ».
m thodes exemple
Méthodes : Exemple

Utilisation d’une note pour le corps de la méthode

m thodes exemple1
Méthodes : Exemple

Utilisation de la documentation de l’opération

m thodes
Méthodes
  • Lorsque nous utilisons une note UML pour représenter une méthode, nous mélangeons les vues statique et dynamique dans le même diagramme.
  • Le corps de la méthode, qui définit un comportement dynamique, ajoute un élément dynamique au diagramme de classes statique.
les mots cl s
Les Mots-clés
  • Un mot-clé UML permet de catégoriser un élément de modèle avec du texte.
  • Exemple : interface, abstract, actor, ordered, …
  • La plupart des mots-clés sont placés entre guillements (UML 2.0) « … » comme « actor », « interface », …
  • Certains figurent entre accolades { … }, comme {abstract} qui est une contrainte.
    • Généralement utilisés pour les chaînes de propriétés.
    • Possibilité d’avoir des termes définis par l’utilisateur
les st r otypes
Les Stéréotypes
  • Un stéréotype représente un raffinement d’un concept de modélisation existant.
    • = Mécanisme d’extension
    • Stéréotypes
      • prédéfinis par UML (défini au sein d’un profil UML)
      • ou définis par l’utilisateur
    • Placés entre guillemets « … »
    • Exemples :
      • « interface », « actor », « boundary » pour les classes.
      • « destroy » dans les diagrammes de séquences
les st r otypes1

Stéréotype

Acteur

Stéréotype Boundary

Stéréotype Interface

Les Stéréotypes
propri t s et cha nes de propri t s
Propriétés et Chaînes de propriétés
  • En UML, une propriété est « une valeur nommée qui dénote une caractéristique d’un élément ».
    • Une propriété a un impact sémantique
    • Peuvent être soit :
      • Prédéfinies par UML : visibilité attr./opér.
      • Définies par l’utilisateur
    • Peuvent être présentées de nombreuses façons
      • L’approche textuelle consiste à employer la chaîne de propriétés UML { nom1 = valeur1, nom2 = valeur2 }
      • Certaines propriétés n’ont pas de valeur (booléenne).
      • Exemple : { abstract, visibility = public }
      • Ou : { abstract = true, visibility = public }
relations entre classes
Relations entre classes
  • La généralisation
  • L’association
  • La composition et l’agrégation
  • La dépendance
la g n ralisation notation
La généralisation : Notation
  • En UML, on représente la généralisation (l’héritage) par une ligne continue et une flèche formant un triangle blanc, allant de la sous-classe vers la super-classe.
l association notation
L’association: Notation
  • L’association est souvent utilisée très tôt dans la modélisation (modélisation du domaine) afin de montrer qu’il existe une connexion entre deux classes et qu’il est important de la mémoriser (même très brièvement).Par contre, l’association pourra dans l’application devenir :
    • Une clé étrangère dans une table,
    • Une référence vers un objet,
  • Nous n’aborderons pas ici l’association en temps qu’élément abstrait de connexion. Nous le ferons lorsque nous verrons la modélisation du domaine.
  • Nous nous intéresserons uniquement à la notation.
l association notation1

rôles

L’association: Notation
  • L’association est représentée par une ligne continue.
  • Les extrémités de l’association sont appelés rôles
l association notation2
L’association: Notation
  • Les rôles peuvent avoir les caractéristiques optionnelles suivantes :
    • Nom;
    • Multiplicité;
    • Navigabilité;
    • Chaîne de propriétés (contraintes).
l association notation3

CPacket is ordered

CMonitoring

receive 0..*

L’association: Notation
  • Attention au sens de lecture

CPacket

l association notation4

CMonitoring

Is received by 1

CPacket

L’association: Notation
  • Attention au sens de lecture
l association notation5
L’association: Notation
  • L’association peut être également nommée.
  • Si aucune flèche n’est présente, la convention consiste à lire de gauche à droite ou de haut en bas : CMonitoring capture des paquets.
associations multiples notation
Associations multiples : Notation
  • Il peut exister plusieurs relations (associations) entre deux classes.
associations qualifi es d finition
Associations qualifiées : Définition
  • Une association qualifiée possède un qualificateur qui sert à sélectionner un objet (ou plusieurs) dans un ensemble plus vaste d’objets apparentés.
  • Du point de vue logique, cela se traduit par une recherche sur une clé, par exemple, la recherche d’objets dans une ArrayList.
associations qualifi es notation

Catalogue produit sans association qualifiée

Catalogue produit avec association qualifiée (sur CodeArticle)

Qualificateur

Nouvelle multiplicité, reflétant la sélection d’une seule instance

Associations qualifiées : Notation
associations qualifi es notation1
Associations qualifiées : Notation
  • Normalement, le qualificateur est une propriété de la classe cible. Il est possible d’utiliser une classe implémentant la logique de sélection.
classes d association d finition
Classes d’association : Définition
  • Une classe d’association permet de traiter une association comme une classe, et de la modéliser avec des attributs, des opérations et d’autres caractéristiques.
  • En UML, cela est représenté par une ligne pointillée joignant l’association et la classe d’association.
classes d association notation
Classes d’association : Notation

Une personne peut avoir un emploi dans plusieurs entreprises

composition et agr gation d finition
Composition et Agrégation : Définition
  • L’agrégation est un type d’association flou qui suggère vaguement une relation tout-partie (à l’instar de nombreuses associations ordinaires).
  • Elle ne possède pas de sémantique distincte et significative par rapport à une simple association.
composition et agr gation d finition1
Composition et Agrégation : Définition
  • La composition, également nommée agrégation composite, est une forme plus contraignante d’agrégation tout-partie.
  • Une relation de composition implique les contraintes suivantes :
    • Une instance de la partie (par exemple doigt) appartient à seulement une instancecomposite (par exemple main) à la fois.
    • La partie doit toujours appartenir à un tout composite (pas de doigts flottant librement dans l’air) .
    • L’élément composite est responsable de la création et de la destruction de ses composants, soit en réalisant l’opération lui-même, soit en collaborant avec d’autres objets. De plus, si l’objet composite est détruit, ses composants doivent l’être aussi (toujours pas de doigts flottant).
composition et agr gation exemple

CMonitoring crée une instance de CCapture afin d’y stocker les paquets capturés. On a une relation d’agrégation par valeur (composition).

CCapture est la classe qui stocke et détruit les paquets. Détruire CCapture, c’est détruire tous les paquets stockés.

CMonitoring dépend de CPacket pour la création d’un nouveau paquet. Une fois créé, le paquet est « délégué » à CCapture.

Composition et Agrégation : Exemple
d pendance d finition
Dépendance : Définition
  • On peut utiliser des lignes de dépendances dans n’importe quel type de diagrammes, mais elles sont particulièrement courantes dans les diagrammes de classes et les diagrammes de package.
  • UML comprend une relation de dépendance générale qui indique qu’un élément client (classe, package, cas d’utilisation, …) a connaissance d’un autre élément fournisseur, et que toute modification du fournisseur peut affecter le client.
  • Définition très large !
  • La dépendance est représentée par une ligne pointillée et fléchée allant du client au fournisseur.
d pendance d finition1
Dépendance : Définition
  • Il existe un grand nombre de types de dépendance logiciel pour désigner la situation dans laquelle un élément est couplé à une autre ou en dépend.
    • Posséder un attribut du type du fournisseur;
    • Envoyer un message au fournisseur. La visibilité vers le fournisseur peut être :
      • Un attribut, une variable paramètre, une variable locale, une variable globale;
      • ou une visibilité de classe : invocation de méthodes statiques.
    • Recevoir un paramètre du type du fournisseur
    • Le fournisseur est une super-classe ou une interface.
d pendance notation

Association

Dépendance : Notation
  • Pour ce qui est d’une variable membre (attribut), on utilisera plutôt l’association, même si l’association est une forme de dépendance.
d pendance notation1
Dépendance : Notation
  • Pour l’héritage, on utilisera plutôt la généralisation, même si la généralisation est une forme de dépendance.
d pendance notation2

Dépendance

Dépendance : Notation
  • On utilisera plutôt la dépendance de classes dans les cas suivants :
    • Une variable locale d’une méthode :
d pendance notation3
Dépendance : Notation
  • Un paramètre/argument d’une méthode :
d pendance notation4
Dépendance : Notation
  • L’appel d’une méthode statique :
d pendance notation5
Dépendance : Notation
  • L’utilisation d’une variable membre/constante statique :
d pendance notation6
Dépendance : Notation
  • Il est possible d’ajouter une étiquette portant des mots-clés ou des stéréotypes. Généralement utilisé pour faciliter la lecture.
d pendance notation7
Dépendance : Notation
  • D’une façon générale, la dépendance sera utilisée pour montrer le couplage entre deux éléments lorsqu’il n’existe pas un lien sémantiquement plus riche que la dépendance (ex : association, agrégation, généralisation, …).
  • On essaye également d’éviter la redondance; par exemple, variable membre et variable locale  seulement l’association (sauf dans des cas très spécifiques).
notions avanc es
Notions avancées
  • L’interface
  • Classes singleton
  • Classes et interfaces template
interface d finition
Interface : Définition
  • Une interface est un ensemble d’opérations (de propriétés et d’ événement) définissant un contrat entre une classe qui utilise l’interface et une classe qui implémente l’interface.
  • Nous avons donc :
    • la définition de l’interface,
    • l’implémentation de l’interface par une classe,
    • l’utilisation de l’interface par une autre classe.
interface notation

Symbole représentant l’interface

Interface : Notation
  • Une interface est représentée en UML par un petit cercle.
interface notation1

Réalisation d’interface

(implémentation)

Interface : Notation
  • En UML, l’implémentation d’une interface se nomme officiellement réalisation d’interface. Elle se matérialise soit par un trait plein lorsque l’interface est affichée comme un cercle.
interface notation2

Réalisation d’interface

(implémentation)

Interface : Notation
  • Elle peut se matérialiser également par une ligne discontinue et une flèche formant un triangle blanc.
interface notation3

CNetworkEngine utilise l’interface sans

se soucier de qui l’implémente réellement

Interface : Notation
  • En UML, le fait qu’une classe « utilise » une interface, autrement dit requiert une interface (interface requise), est schématisé avec une relation de dépendance.
interface notation4
Interface : Notation
  • La vision « utilisateur », « fournisseur » donne donc ceci :

Fournisseur de l’interface

(implémentation)

Utilisateur de l’interface

Interface

interface notation5

UML 1.0

UML 2.0

Notation « Prise de courant »  (socket)

Interface : Notation
  • En UML 2.0, une nouvelle notation a été introduite pour les interfaces.
classes singletons d finition
Classes singletons : Définition
  • Singleton est un pattern que nous verrons plus tard.
  • Une classe singleton est une classe pour laquelle il ne peut exister, à un moment donné, qu’une seule instance de la classe, jamais plus.
classes singletons notation

1

Classes singletons : Notation
  • Avec la notation standard, on marque une classe singleton avec un 1 dans le coin supérieur droit de la classe.
classes singletons notation1
Classes singletons : Notation
  • Si l’outil ne le permet pas, il est possible de rajouter un stéréotype.
classes singletons remarque
Classes singletons : Remarque
  • Par définition, une classe singleton ne peut avoir qu’une seule instance à un moment donné.
  • Ne perdons pas de vue que la notion d’instance est liée à un processus et que deux processus différents pourraient chacun avoir une instance d’une classe singleton.
classes et interfaces templates d finition
Classes et interfaces templates : Définition
  • Les langages de programmation orientée objet supportent des types templates, également appelée types paramétrés ou types génériques.
  • Ils sont le plus communément employés pour les types « collections » : ArrayList, LinkedList, Collection, …
classes et interfaces templates notation

Interface template

(montrée comme Décoration)

Classe template

Classes et interfaces templates : Notation
exemple cha ne de montage avec capteurs
Exemple : Chaîne de montage avec capteurs
  • La chaîne de montage utilise différents capteurs : après analyse, on se rend compte que deux types de capteurs existent :
    • les capteur binaires, du style interrupteur,
    • et les capteurs linéaires qui renvoient une valeur numérique (niveau de lumière, poids, …)
  • On décide de créer des interfaces pour traduire les fonctionnalités que doivent assumer ces différents capteurs.
exemple cha ne de montage avec capteurs2
Exemple : Chaîne de montage avec capteurs
  • Ensuite, on crée les classes qui vont implémenter ces différentes interfaces. Certaines classes supplémentaires apparaissent afin d’encapsuler la complexité de certains types de capteurs.
exemple cha ne de montage avec capteurs4
Exemple : Chaîne de montage avec capteurs
  • Ensuite vient le cœur du système : la classe qui va gérer les capteurs et vérifier leurs états. Cette classe générera des événements lorsqu’une différence sera détectée sur un des capteurs :
    • par exemple, un changement On/Off pour un capteur de style binaire,
    • ou un changement de valeur pour un capteur linéaire.
exemple cha ne de montage avec capteurs5
Exemple : Chaîne de montage avec capteurs
  • Pour ce faire, la classe ‘cœur du système’ va avoir besoin de mémoriser l’état courant de chaque capteur. Le changement ne peut se faire qu’en comparant la valeur courante et la nouvelle valeur que renvoie le capteur.
  • Comment mémoriser ces différents états (un état par capteur) ?
exemple cha ne de montage avec capteurs6
Exemple : Chaîne de montage avec capteurs
  • Le choix se porte sur une seule classe mémorisant l’état du capteur (hiérarchie également possible).
  • La classe mémorisant l’état d’un capteur devra être associée au capteur et offrir les méthodes de vérification de changement.
  • De plus, cette classe aura la connaissance de la diversité des types de capteurs (binaires/linéaires).
exemple cha ne de montage avec capteurs8
Exemple : Chaîne de montage avec capteurs
  • CEtatCapteur a la connaissance des différents types de capteurs.
exemple cha ne de montage avec capteurs9
Exemple : Chaîne de montage avec capteurs
  • Maintenant, on peut passer au ‘cœur du système’, autrement dit la classe qui va gérer les différents capteurs.
  • Cette classe aura besoin d’une liste de CEtatCapteur et aura la connaissance de la notion de capteur au plus haut niveau, c’est-à-dire l’interface CCapteur.
exemple cha ne de montage avec capteurs10
Exemple : Chaîne de montage avec capteurs

Devient complexe !!!

Utilisation de plusieurs schémas

exemple script multi routeurs introduction

Script

Hosts

Conf t

Interface e0

no source-routing

End

write

10.12.1.254

10.13.1.254

10.34.1.254

Exemple : Script multi-routeurs : Introduction

exemple script multi routeurs 2 me classe
Exemple : Script multi-routeurs : 2ème classe
  • Une nouvelle classe va permettre de gérer un routeur (un host) particulier et d’exécuter le script sur ce host.
  • Cette classe s’appellera CTask.
exemple script multi routeurs relation entre classes
Exemple : Script multi-routeurs : Relation entre classes
  • Quelle est le type de relation entre les deux classes ?
  • Généralisation, association, composition, ... ?
  • Composition : non, ce n’est pas réellement une composition !
  •  Association
exemple script multi routeurs besoin du r seau
Exemple : Script multi-routeurs : Besoin du réseau
  • CTask va devoir utiliser une classe afin d’accéder au réseau.
  • Plusieurs classes sont disponibles, telles que TcpClient, Socket, …
  • Le choix se porte sur la classe de plus haut niveau, à savoir TcpClient.
diagrammes de classes conclusion
Diagrammes de classes : Conclusion
  • Dans notre exemple avec le script et les tâches, on reste sur notre fin :
    • Comment le script va-t-il lancer les différentes tâches ?
    • Y aura-t-il un pool ou plusieurs pools de threads ?
    • Comment les opérations vont-elles se déroulées ?
  • Ces questions n’ont pas de réponses dans un diagramme de classes car celui-ci montre uniquement la partie statique de la solution.
diagrammes de classes conclusion1
Diagrammes de classes : Conclusion
  • Le diagramme de classes montre la constitution des classes et les relations qui existent entre elles.
  • Nous avons donc besoin d’un autre type de diagramme pour montrer la dynamique, l’enchaînement des opérations. Ce sont les diagrammes d’interaction.