uml, cas d'utilisation et diagramme de classe
Post on 21-Jun-2015
1.174 Views
Preview:
TRANSCRIPT
UML
Modélisation
UML
USES CASE
ActeursUn acteur est l’idéalisation d’un rôle joué par une personne externe, un processus ou une chose qui interagit avec un système.
Cas d’utilisationUn cas d’utilisation est une unité cohérente représentant une fonctionnalité visible de l’extérieur. Il réalise un service de bout en bout, avec un déclenchement, un déroulement et une fin, pour l’acteur qui l’initie. Un cas d’utilisation modélise donc un service rendu par le système, sans imposer le mode de réalisation de ce service.
Relations entre acteurs La seule relation possible entre deux acteurs
est la généralisation : un acteur A est une généralisation d’un acteur B si l’acteur A peut être substitué par l’acteur B (tous les cas d’utilisation accessibles à A le sont aussi à B, mais l’inverse n’est pas vrai)
Le diagramme
MultiplicitéActeurs principaux et secondaires
Un acteur est qualifié de principal pour un cas d’utilisation lorsque ce cas rend service à cet acteur Les autres acteurs sont alors qualifiés de secondaires. Un acteur principal obtient un résultat observable du système tandis qu’un acteur secondaire est sollicité pour des informations complémentaires
Relations entre cas d’utilisation
Relations entre cas d’utilisation
Il existe principalement deux types de relations :
- les dépendances stéréotypées, qui sont explicitées par un stéréotype (les plus utilisés sont l’inclusion et l’extension),-et la généralisation/spécialisation.
Une dépendance se représente par une flèche avec un trait pointillé. Si le cas A inclut ou étend le cas B, la flèche est dirigée de A vers B.
Le symbole utilisé pour la généralisation est un flèche avec un trait pleins dont la pointe est un triangle fermé désignant le cas le plus général
Relations entre cas d’utilisation L'inclusion « include » : Cela implique obligatoirement
l'inclusion d'un cas d'utilisation dans un autre comme ici « Retire argent » fait obligatoirement appel à « S'authentifier ».
L'extension « extended » : Cela permet éventuellement l'extension d'un cas d'utilisation par un autre comme ici « Vérifier solde » peut étendre « Effectuer virement ».
Le point d'extension : Il est possible de préciser exactement à quel moment une extension est appelée comme ci-dessous par un « Extension points » ici « verification_solde {après avoir demandé le montant}.
La condition d'extension : Il est possible d'ajouter en note sous quelle condition l'extension doit se produire comme ci-dessous si le montant est supérieur à 20€.
L'héritage : Il permet de définir la spécialisation d'un cas d'utilisation comme ici consulter un compte depuis le DAB ou consulter le compte depuis Internet.
UML
Class Diagram
Classes Classe (class) : description abstraite d’un
ensemble d’objets de même structure et de même comportement extraits du monde à modéliser.
Attribut (attribute) : donnée élémentaire servant à caractériser les classes et les relations.
Méthodes / Opération (methods) : opérations programmées sur les objets d’une classe.
Association Association (relationship) : l’association permet
de relier une classe à plusieurs autres classes. Multiplicité (multiplicity) : chaque extrémité
d’une association porte une indication de multiplicité. Elle exprime le nombre minimum et maximum d’objets d’une classe qui peuvent être reliés à des objets d’une autre classe.
Role Avec UML, l’extrémité d’une association peut être enrichie
d’un rôle, qui décrit la façon dont la classe perçoit l’autre classe (ou les autres classes pour les associations n-aires) via l’association.
Un rôle est généralement désigné par une forme nominale ou verbale. Le rôle est placé à une extrémité du lien d’association, il se distingue ainsi du nom de l’association situé au centre du lien.
Le rôle est indispensable pour les associations réflexives
Classe association Une association plusieurs-à-plusieurs avec attributs est
représentée sous UML par une classe association. Cette classe-association contient les attributs de
l’association et est connectée au lien d’association par une ligne en pointillé.
Notons qu’il est aussi possible d’utiliser une classe-association pour modéliser une association un-à-plusieurs ou plusieurs-à-plusieurs sans attributs
Association n_aires Association entre plusieurs classes
Association réflexive Une association réflexive est une association
binaire ou n-aire qui fait intervenir au moins deux fois la même entité/classe.
Agrégation La composition (composite aggregation) requiert qu’un objet
appartienne au plus à une composition d’objets à un instant donné. Cette appartenance peut changer au cours du temps.La composition implique en outre une forme de propagation entre le composite et le composant (en particulier la destruction du composite entraînera obligatoirement la destruction de ses composants). Cette agrégation est représentée par un losange noirci du côté du rôle de la classe composite appelée « agrégat ».
L’agrégation partagée autorise qu’un objet appartienne simultanément à différentes compositions d’objets. Cette agrégation est représentée par un losange clair du côté du rôle de la classe concernée par l’association appelée « agrégat ».Les agrégations partagées sont un peu plus difficiles à définir, elles renforcent le couplage d’une association binaire et interviennent lorsque la composition ne s’applique pas et que des objets sont fortement dépendants par rapport à d’autres objets dans le cadre de l’association.
Composition
Agrégation
NB: Notion assez subjective, l’agrégation relève plus de la conception détaillée que de la modélisation. Elle se traduira au niveau physique par programmation de déclencheurs ou de contraintes SQL (de vérification CHECK ou de répercussion de clé étrangère CASCADE).
Héritage / généralisation Il faut définir une association d’héritage entre les
classes C1 et C2 si on répond affirmativement à la question suivante : La classe C1 est-elle une sorte de C2 ?
UML représente un lien d’héritage à l’aide d’une flèche partant de la sous-classe vers la super-classe.
top related