Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet...

213
Unified Modeling Language

Transcript of Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet...

Page 1: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Unified Modeling Language

Page 2: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

2

Plan du cours

1. Caractéristiques de l’objet1. Modes de développement

2. Les activités du projet3. Généralités sur UML4. Diagrammes Cas d’utilisation

1. Etude d’opportunité2. Analyse des besoins

5. Modélisation logique structurelle1. Objets2. Classes3. Architecture

Page 3: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

3

Plan du cours6. Modélisation de la dynamique

1. Diagramme de séquence2. Diagramme de communication3. Diagramme d’activité4. Diagramme Etat-Transition

7. Modélisation de l’implémentation et du déploiement

1. Diagramme de composant2. Diagramme de déploiement

Page 4: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

4

Caractéristiques de l ’objet

PPourquoi le développement objet?CComment atteindre ces buts?QQuelles répercussions sur les méthodes de développement?

Page 5: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

5

Caractéristiques de l ’objet Pourquoi le développement objet?R

RéutilisationDDiminution des coûts de développement et de maintenanceFFlexibilité et robustesse du logicielQQualité

Pourquoi le développement objet?

Comment atteindre ces buts?

Quelles répercussions sur les méthodes de développement?

Page 6: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

6

Encapsulation

Pourquoi le développement objet?

Comment atteindre ces buts?

Quelles répercussions sur les méthodes de développement?

Caractéristiques de l ’objet Comment atteindre ces buts?

Propriétés de l’objet

AbstractionHéritagePolymorphisme

Page 7: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

7

Caractéristiques de l ’objet

La brique de base d’un logiciel objet est la classe

Cette classe est un module qui contient des données (attributs) et les traitements qui manipulent ces données (opérations = méthodes)

Commandeclasse

Page 8: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

8

Caractéristiques de l ’objet

Il existe des contraintes de visibilité entre les classes, donc entre les objets

Un objet ne peut avoir accès aux propriétés d’un autre objet que selon certaines conditions définies dans le programme

retour

Page 9: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

9

Caractéristiques de l ’objet

Un objet est une instance de classeTous les objets d’une même classe se

décrivent avec les mêmes attributs et ils ont le même comportment

CommandeRéférence

Date cde

Ref devis

Créer

Modifier Ref devis

Page 10: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

10

Quelles répercussions sur Les méthodes de développement? L

Le développement incrémentalLLe développement agileLLa réutilisation

Pourquoi le développement objet?

Comment atteindre ces buts?

Quelles répercussions sur les méthodes de développement?

Page 11: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

11

Modèle de développement

Analyse du problème

Conception de la solution

ImplémentationDéploiement

Analyse des besoins

Modèle en cascade Modèle incrémental

Analyse du problème

Analyse des besoins

ImplémentationDéploiement

Conception de la solution

retour

Page 12: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

12

Modèle de développement

Avantages du modèle incrémental L’implication et la satisfaction de

l’utilisateur La gestion des risques L’intégration progressive

Page 13: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 14: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

14

Les activités du projet

Elles sont identiques quelque soit le modèle:

Cascade, incrémental….

Page 15: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

15

Activités du projet

Toutes ces activités du projet ont une part de modélisation.Modélisation•Du problème•De la solution

UML est un langage de modélisation

Analysedu besoin

Analyse du problème

Opportunité

Implémentation

Conception de la solution

Page 16: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

16

Activités du projet

Chaque activité donne lieu a un rapport qui contient les modèles et des commentaires.Chaque rapport est écrit ou validé par le clientLe rapport d’étude d’opportunité + rapport d’analyse des besoins+ la V1 du plan projet constituent le cahier des charges

Le cahier des charges est un élément essentiel du contrat

Analysedu besoin

Analyse du problème

Opportunité

Implémentation

Conception de la solution G

est

ion

de p

roje

t

Page 17: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

17

Activités du projetDocuments

fondamentaux

Gest

ion

de p

roje

t

Rapport d’Analyse du besoin

Plan projet

Rapport d’ Étude d’opportunité

Cahierdes

charges

Organisation du projet, délais,

coûts, contrôles, normes,

procédures

Page 18: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

18

Les activités du projetEtude d’opportunité

On souhaite construire un système informatique pour répondre à un besoin Qui a ce besoin? Quel est-il? Est-il justifié? Bilan gains-coûts estimés

On modélise le périmètre du projet et son contexte

Analysedu besoin

Analyse du problème

Opportunité

Implémentation

Conception de la solution

Page 19: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

19

Les activités du projet Etude d’opportunité

Gestion de production

Gestion des stocks

Etudes

Commercial

Client

L’ellipse représente le périmètre du projet

Les acteurs représentent les systèmes ou les personnes qui échangent des informations avec le projet

Diagramme de contexte

Page 20: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

20

Les activités du projet Analyse des besoins

Exprimer les fonctionnalités demandées au système d’information

+autres besoins (performance, sécurité, flexibilité…)

Analysedu besoin

Analyse du problème

Opportunité

Implémentation

Conception de la solution

Page 21: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

21

Les activités du projet Analyse des besoins

Ma gestion descommandes

Ma gestion desstocks

Ma gestion descommandes

Ma gestion desstocks

On modélise l’architecture de l’expression des besoins

et les acteurs

Le domaine de l’étude est découpé selon les fonctions requises par les acteurs

Pour chaque cas d’utilisation, on rédige un texte qui énonce les exigences de la maîtrise d’ouvrage

Cas d’utilisation

Page 22: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

22

Les activités du projet Analyse du problème

Exprimer la structure (Entités; données)

et la dynamique ( Processus detraitements) du système désiré

Analysedu besoin

Analyse du problème

Opportunité

Implémentation

Conception de la solution Indépendamment de la

technologie

Page 23: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

23

Les activités du projet Analyse du problème

Entités

Commande

Préparer commande

Client Ventes Entrepôt

Commande annulée

Commande expédiée

Enregistrer la commande

Contrôler Commande

Expédier CommandeProcessus

Modéliser le métier

Chef des ventes

Acteurs

Page 24: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

24

Les activités du projet Conception de la solution

Déterminer l’architecture technique.

Prendre en compte la technologie (conception structurelle et dynamique)

Analysedu besoin

Analyse du problème

Opportunité

Implémentation

Conception de la solution Ne jamais concevoir

avant d’analyser

Page 25: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

25

Paquetage

Modéliser l’architecture technique (structurer le logiciel)Isoler les solutions techniques qui évoluent indépendamment

Les activités du projet Conception de la solution

AccèsRéseau

AccèsBase D

IHM Métier

Modélisation logique structurelle

Page 26: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

26

Les activités du projet Modélisation logique

structurelle

Architecture technique

Le découpage du logiciel est représenté par des paquetages

Les paquetages contiennent des classes, des composants ou d’autres paquetages.

La visibilité entre les paquetages est limitée (classe façade)

Une bonne architecture permet la fiabilité et la flexibilité du logiciel

Page 27: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

27

Les activités du projetModélisation logique dynamique

Que fait le système informatique? CComportement des objetsDDemandes de serviceCConditions

Commande Article[s’il y a du stock]Réserver un article

J’ai réservé

réservationContrôle stock

Objet

Page 28: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

28

Les activités du projetChronologie

Etude d’opportunité ou InitialisationDéfinition et opportunité du projet

Diagramme de contexte Recueil et spécification des besoins.

Fonctionnalités du système d’information Cas d’utilisation

Analyse du problème Étude de la logique du système d’information(Indépendant des technologies)

Modélisation métier (vue logique) Conception de la solution

Décisions technologique Affinement de la vue logiques

Implémentation (Programmation, diagramme de composants) Déploiement (Diagramme de déploiement)

Activité de gestion de projet pendant toute la durée du projet

Page 29: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 30: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

30

Généralités sur UML

Origine Standard Objectifs Outils Contenu.

Page 31: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

31

Généralités sur UMLOrigine

Issue des méthodes objet de: Grady Booch OMT de James Rumbaugh OOSE d’Ivar Jacobson       

Origine

Standard

Objectifs

Contenu

Page 32: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

32

Généralités sur UMLStandard

UML est une notation standard

Elle a été acceptée par l’OMG (Object Management Group), en novembre 97

Un dispositif est en place à l’OMG qui permet d’améliorer UML de façon continue

L’OMG est un consortium international, il réunit environ 800 entreprises. Son but est de définir des standards pour le développement orienté objet

Origine

Standard

Objectifs

Contenu

Page 33: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

33

Généralités sur UMLObjectifs

Modélisation des systèmes informatiques Analyse des besoins Analyse du problème Conception de la solution Implémentation , Déploiement 

UML est une notation graphique. Une notation permet de décrire le système informatique avec des concepts adaptés et non ambigus.

 

Origine

Standard

Objectifs

Contenu

Page 34: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

34

Généralités sur UMLObjectifs

UML est une notation non une méthode

Une méthode contient non seulement une notation mais aussi une démarche de projet

Plusieurs démarches peuvent être associées à la notation UML.

Nota: Ne pas confondre les concepts de démarche et les concepts UML

Page 35: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

35

Généralités sur UMLObjectifs

UML est bien adapté à la démarche itérative

Analyse du problème

Analyse des besoins

ImplémentationDéploiement

Conception de la solution

Page 36: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

36

UML permet la modélisation du système d’information et du système informatique

Et il aide: à la réalisation à la réflexion À la documentation

Il deviendra peut-être un langagede réalisation (MDA)

Généralités sur UML Objectifs

Un modèle est une représentation schématique de la réalité

destiné à montrer son fonctionnement

Page 37: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

37

Généralités sur UML Objectifs

Outils UML Rational Rose Together Objectory (Softeam) Visio …

Les outils Permettent la modélisation (dessin et contrôle) Gèrent un référentiel Produisent le squelette des programmes Produisent les DDL des SGBDR Produisent les interfaces des ORB (Object Request Broker) Se relient à d’autres outils de développement

Page 38: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

38

Généralités sur UML Contenu: Éléments

UML propose des élémentsde modélisation qui ont une définition sémantique et un graphisme

Exemples

Origine

Standard

Objectifs

Contenu

Métier

Acteur

PaquetageClasse

Gestionarticles

Client

raisonSociale

calculerRemise

Composant

Page 39: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

39

Généralités sur UML Contenu: Diagrammes

UML propose 9 types de diagrammes (règles de combinaison des élément standards):

 Cas d’utilisationClassesObjets

Séquence Collaboration

Activité États-Transitions

Composants Déploiement

Page 40: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

40

Généralités sur UML Contenu: Diagrammes

Exemple: Diagramme de classe

ClientDétaillant ClientGrossiste

CommandeClient

facturer()

11..* 11..*

Page 41: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

41

Généralités sur UML Contenu:Extension de la notation: stéréotypes

UML est une méthode ouverte Les stéréotypes permettent l’extension Un stéréotype est une variante d’un élément standard,

il hérite de sa sémantique, il spécifie souvent un rôle. Exemple:Une façade,un acteur sont des stéréotypes de classe

Représentation graphique

Chef des ventes« Acteur »Représentation

textuelle

Client«Entité »

Client

Page 42: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 43: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

43

Représentation du contexte du système Définir les Limites du système à développer Relations entre le système et son

environnement.  

Gestion financière

Gestioncommerciale

Gestion de production

Bureau d’étude

Direction

Étuded’opportunité

Diagrammes:Cas d’utilisation

Page 44: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

44

Diagrammes:Cas d’utilisation

Gestion commerciale représente le périmètre de l’étude

Les acteurs sont des personnes ou des systèmes en relation avec le domaine de l’étude.

Les acteurs sont extérieurs au domaine de l’étude. Gestion

commerciale

Gestion de production

Bureau d’étude

Direction

Gestion financière

Étuded’opportunité

Page 45: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

45

Diagrammes:Cas d’utilisation

Pour: Structurer fonctionnellement le domaine pour

décrire les exigences

Répartir le travail et les responsabilités pour la spécification et la validation des besoins.

Analyse des marges

Fidélisation

Commissions

Directeur commercial

Responsable CRM

Chef des ventes

Analysedes

besoins

Page 46: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

46

Les cas d’utilisation

Les cas d’utilisation guident la MOE dans l’analyse, la conception, la réalisation et les tests.

Contrat

Ils sont sous la responsabilité de la MOA, ils sont la référence des validations et recettes.

Validation

Recette

Page 47: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

47

L’analyse des besoins

Les cas d’utilisation

Analysedu besoin

Analysedu problèmede la solution

Conceptionde la solution

Opportunité

Tests

La conception du système

Validation

Périmètre du projet

ImplémentationMise en oeuvre

Page 48: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

48

Cas d’utilisation

Chaque cas d’utilisation est accompagné d’un texte et éventuellement de diagrammes

Ceux-ci expriment les exigences du client

Les exigences constituent une partie du contrat entre le client (maîtrise d’ouvrage) et les développeurs (maîtrise d’œuvre)

Page 49: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

49

Cas d’utilisationExemple de rédaction

Titre: Préparation de la commande fournisseur But: Déterminer la date de passation de commande Version, date de rédaction Auteur de la rédaction Acteurs du cas d’utilisation: acheteur Préconditions:

Les demandes d’achat sont valides, elles ont été affectées à l’acheteur qui initialise le processus.

Postcondition:La date de passation de commande de la DA est prévue

Événement initial:Affectation des DA nouvellement arrivées à un acheteur

Description du scénario de base Description des flots alternatifs

Page 50: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

50

Diagrammes:Cas d’utilisation. Acteurs

Le domaine du projet est découpé en cas d’utilisation

Chaque cas d’utilisation représente une fonction du système informatique dont un acteur métier a besoin

Un acteur métier est un rôle.

Dans la démarche: on recherche d’abord les acteurs métier puis les fonctions dont ils ont besoin.

Commissions

Chef des ventes

Page 51: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

51

Diagrammes:Cas d’utilisation. Acteurs

WantedChef des ventes

Page 52: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

52

Diagrammes:Cas d’utilisation.

Le cas d’utilisation spécifie la façon dont le système est utilisé pour aider un client ou un utilisateur à atteindre ses objectifs. Il décrit un processus.

Page 53: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

53

Cas d’utilisation Spécifications de besoins, exigences

Le texte doit être bien structuré Il est sous la responsabilité de l’utilisateur Il peut être accompagné de diagrammes

UML Il décrit ce que doit faire le système et non

comment Rédaction des exigences

Chaque cas d’utilisation donne lieu à une description en texte

Page 54: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

54

Cas d’utilisation Spécifications de besoins, exigences

Le cas d’utilisation décrit un processus métier

Le processus est déclenché par un événement métier

Il se termine par un résultat intéressant pour l’utilisateur ou par un échec

Il comporte souvent plusieurs scénarios

Evénement RésultatTâches

Page 55: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

55

Diagrammes:Cas d’utilisation

Chaque cas d’utilisation est accompagné d’un texte et éventuellement de diagrammes

Ceux-ci expriment les exigences du client

Les exigences constituent une partie du contrat entre le client (maîtrise d’ouvrage) et les développeurs (maîtrise d’œuvre)

Page 56: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

56

Cas d’utilisationExemple de rédaction

Titre: Passation de la commande au fournisseur But: Transmettre une commande valide au fournisseur Version, date de rédaction Auteur de la rédaction Acteurs du cas d’utilisation: acheteur Préconditions:

Les demandes d’achat sont valides, elles ont été affectées à l’acheteur qui initialise le processus.

Postcondition:La commande est transmise, sa transmission est enregistrée

Événement initial:Affectation des DA nouvellement arrivées à un acheteur

Description du scénario de base Description des flots alternatifs

Page 57: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

57

Diagramme de cas d’utilisation

Relations

Les cas d’utilisation peuvent être fractionnés.

Puis reliés. relation « include » relation « extend » relation « generalise »

Nota: Les flux d’informations sont indiqués dans d’autres diagrammes

Page 58: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

58

Cas d’utilisationRelation « include »

Permet d ’identifier des sous-ensembles communs à plusieurs cas d ’utilisation

Règlement cotisations

comptable

Inscription activité

AccueilContrôle adhérent

«  include » « include  »

Contrôle adhérent est extrait de « Règlement cotisation » et de « Inscription activité » afin de ne le décrire qu’une fois

Page 59: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

59

Cas d’utilisationRelation « include »

Gestion force de vente

Chef des ventesGestion des

notes de frais

Gestion des notes de frais est aussi utilisé dans une autre application, on ne le décrit qu’une fois

La relation entre les 2 cas d’utilisation est exprimée dans le texte de Gestion des forces de vente

Include est un stéréotype d’un autre élément: la dépendance

« include  »

Page 60: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

60

Cas d’utilisationRelation « extend »

Permet de décrire séparément certaines partis alternatives, optionnelles ou exceptionnelles

Inscription activité

Accueil

contrôle adhérent

Inscription activité inexistante

« include »

« extend » extension

Page 61: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

61

Cas d’utilisationRelation « extend »

L‘extension peut être planifiée dans un autre incrément que le cas d’utilisation de base

L‘extension ne peut être activée directement

Inscription activité

Accueil

contrôle adhérent

Inscription

activité inexistante

« include »

« extend »

Texte: La relation est indiquée dans le cas extension, ici inscription activité inexistante

Page 62: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

62

Cas d’utilisationRelation généralisation

Plusieurs cas d’utilisation ont le

même but

Ils ont des fonctionnements

différents, Ce sont les variantes

d’une même fonction.

Page 63: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

63

Cas d’utilisation Relation Généralisation

Règlement cotisations

comptable

Règlement par courrier Règlement par Internet

« Généralisation »

adhérent

contrôle

« include » »

Page 64: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

ExerciceFaire le modèle de cas d’utilisation correspondant

aux fonctions suivantes: Contrôle des commandes client (la saisie des

commandes est faite chez le client par le commercial ou au siège à partir d’un formulaire)

Réception des règlements

Dans ces 2 cas l’identité du client est contrôlée

Traitement des anomalies commandes

Le contrôle des commandes est sous la responsabilité du commercial ou de l’administration des ventes.Le comptable est responsable de la réception des règlements

Page 65: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 66: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

66

ExerciceModèle de cas d’utilisation

Administration ventes

Réception règlement

Contrôle identité client

Traitement anomalies commandes

Prise de commandechez client

Contrôle commande

<<généralisation>> <<include>><<include>>

<<extend>>

Comptable

Saisie commandeau siège

Commercial

Page 67: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

67

Cas d’utilisationTraiter le passage en

caisse

exemple Titre : Traiter le passage en caisse

Résumé : un client arrive à une caisse avec des articles qu’il souhaite acheter. Le caissier enregistre les achats et récupère le paiement. A la fin de l’opération, le client part avec les articles.

Acteurs : principal caissier, secondaire client.

Pré conditions : la caisse est ouverte (donc en service) ; un caissier y est connecté

Post conditions: Le client a payé, la vente est enregistrée, le ticket de caisse a été donné au client.

Traiter le passage en caisse

Caissier

Page 68: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

68

Description du flot de base :

1. Ce cas d’utilisation commence quand un client arrive à la caisse avec des articles qu’il souhaite acheter.

2. Le caissier enregistre chaque article. S’il y a plus d’un exemplaire par article, le caissier indique également la quantité.

3. La caisse détermine le prix de l’article et ajoute les informations sur l’article, à la vente en cours. La caisse affiche la description et le prix de l’article en question.

4. Après avoir enregistré tous les articles, le caissier indique que la vente est terminée. La caisse calcule et affiche le montant total de la vente.

5. Le caissier annonce le montant total au client.

6. Le client choisit le type de paiement :

En cas de paiement cash, calculer la monnaie à rendre

7. La caisse enregistre la vente effectuée et imprime un ticket.

8. Le caissier donne le ticket de caisse au client.

9. Le client s’en va avec les articles qu’il a achetés.

retour

Page 69: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Pour éviter les Si dans le flot de baseLes flots alternatifs sont décrits à part

Flot alternatif 1: numéro d’identification inconnu Cette alternative démarre au point 2 du flot de base.- La caisse indique au caissier que le numéro d’identification de

l’article est inconnu. L’article ne peut alors être pris en compte dans la vente en cours.

Le flot de base reprend au point 2.

Flot alternatif 2 : client ne pouvant pas payerCette alternative démarre au point 6 du flot de base.- Le client ne peut payer le total avec aucun moyen de paiement

autorisé.- Le caissier annule l’ensemble de la vente et le cas d’utilisation se

termine en échec (post condition non réalisée)

Page 70: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Flot alternatif 3: client payant par chèqueCette alternative remplace le point 6 de la version de base.Le chèque est mis par le caissier dans le lecteur de chèque qui imprime le montant et la dateLe caissier fait signer le chèque.Le flot de base reprend au point 7

Les pointeurs sont écrits dans les flots alternatifs et non dans le flot

de base

Page 71: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

71

Exercice

Faire le cas d’utilisation de paiement par carte en créant un cas d’utilisation extension

Page 72: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 73: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Cas d’utilisation paiement par carte

Ce cas d’utilisation remplace le point 6 du cas d’utilisation: « Traiter le passage en caisse ». En cas de succès, le flot reprend au point 7; en cas d’échec il reprend au point 6 de « Traiter le passage en caisse »

Flot de base

1. Le client insère la carte dans le lecteur de carte et saisit son code

Flot alternatif échec: Le code saisit est faux 3 fois de suiteà la suite du point 1

Traiter le passage en caisse

Caissier

Payer par carte« extend »

Page 74: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

74

Diagramme cas d’utilisation

Le diagramme de cas d’utilisation montre le comportement d’un système, les services visibles de l’extérieur, fournis par le système dans le contexte de son environnement

Exemple: Téléphone mobile

Passer appeltéléphonique

Passer appelconversation à 3

Recevoir appel

Utiliseragenda

Recevoir nouvelappel

« extend »

« extend »

Réseaumobile

Utilisateur

Exemple

Page 75: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

75

Modélisation logique structurelle

Diagramme de classe

Architecturedu système d’informationdu système informatique

ObjetsClassesPaquetages

Page 76: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

76

Modélisation structurelle Les objets

Un objet est « une chose » qui peut être parfaitement identifiée; une personne précise, une organisation, une machine ou un événement peuvent être considérés comme des objets.  

Page 77: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

77

Modélisation structurelleLes objets

Un objet peut sauvegarder des valeurs, ces valeurs ont un nom (nom d’attribut)

.Ces valeurs constituent l’état de l’objet. l’état de l’objet peut changer 

Page 78: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

78

Modélisation structurelle Les objets

Un objet offre des opérations (son comportement) qui permettent d’examiner ou de modifier son état.  

L’état d’un objet garde le souvenir de l’exécution des opérations

Page 79: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

79

Modélisation structurelle Les objets

3 représentations possibles d’un objet:

Valérie

Date embauche =12-07-76

Valérie: Personne : Personne

nom de l’objet nom de l’objet ,nom de la classe

Objet anonyme

Un objet est une instance de classe

Page 80: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

80

 Modélisation structurelle Les Classes

Les objets sont groupés en ensembles appelés classes.

Les objets sont des instances de classe.

Salarié

nomPoste

salaire

payer()

Lili:Salarié

nom:Liliposte:DRH

3000 euros

Instance de

Page 81: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

81

Modélisation structurelle Les classes

Une classe est une abstraction qui représente l’idée ou la notion générale que l’on peut avoir d’un ensemble d’objets similairePar exemple tous les salariés d’une entreprise appartiennent à la classe « Salarié »

Tous les objets d’une classe partagent les mêmes attributs, le même comportement et les mêmes associations.Tous les salariés ont un salaire, chaque mois ils touchent leur salaire, ils travaillent pour une entreprise.

Page 82: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

82

Modélisation structurelle Les Classes

Pendant la phase d’analyse une classe est un concept du monde réel (ex : salarié, adhérent, prime)

Pendant la phase de conception elle peut être un concept technique (ex : pilote d’imprimante, fenêtre…) elle est affinée par des notions techniques (ex: visibilité)

Pendant la phase d’implémentation une classe est un élément du logiciel

Page 83: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

83

Modélisation structurelle Les Classes

Chaque classe est représentée sous la forme d’un rectangle divisé en 3 compartiments. Le 1er compartiment contient le nom de la classe, le second les attributs et le 3ème les opérations 

Personne

adressePrincipalenom

facturer ()

Analyse

Conception

Page 84: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

84

Modélisation structurelle

Les Attributs Chaque nom d’attribut peut être accompagné de

détails facultatifs tels que le type ou la valeur par défaut.

Le type et la valeur par défaut seront généralement mentionnés à partir de la phase de conception.

Personne

Nom : chaine Age : entier Solvabilité : Booléen=1

Conception

Page 85: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

85

Modélisation structurelle Les attributs dérivés

Un attribut dérivé peut être calculé à partir d’autres attributsOn le trouve:

soit dans le compartiment attribut précédé d’une barre oblique

soit dans le compartiment opérationC’est un choix de conception

Rectangle Longueur Largeur / Surface

Page 86: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

86

Modélisation structurelle Les opérations

Une opération spécifie une action qu’un objet doit exécuterUne méthode est une procédure qui implémente une opération

Généralement En phase d’analyse, on écrit seulement le nom de l’opération En phase de conception on écrit

La visibilité Les paramètres Le type de retour La portée

Page 87: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

87

Modélisation structurelle Les opérations

adressenomsolde

Facturer ( remise : Int = 0, montant : Int ) : montantDu

{auteur=Rémi}

« entité »

créer

Portée de classe

Portée d’instance

Personne

Page 88: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

88

Modélisation structurelle La visibilité

UML définit 3 niveaux de visibilité pour les attributs et les opérations  + Public qui rend l’élément visible à tous les clients de la classe ·       # Protégé qui rend l’élément visible aux sous-classes de la classe — Privé qui rend l’élément visible aux opérations de la classe seule

 

  

Page 89: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

89

Modélisation structurelle La visibilité

 

Client

— nom— adressePrincipale

— enregistrer()

# facturer()

+ consulter nom()

Page 90: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

90

Modélisation structurelle Les relations

L’association La généralisation La dépendance La réalisation

Page 91: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

91

Passe >

Modélisation structurelle L’association

Il existe des liens entre les objets

Exemple:

Les commandes sont liées aux clients

Commande

dateCommande

Client

raisonSociale 1 *

 

Page 92: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

92

Modélisation structurelle Multiplicité

Un objet peut être relié à plusieurs objets:

Un client peut être relié à plusieurs commandes.Mais une commande ne peut être reliée qu’a un seul client et elle est nécessairement reliée à un client.

Ces contraintes expriment la multiplicité d’une classe dans sa relation avec une autre ou avec elle-même

Page 93: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

93

Modélisation structurelle La multiplicité s’écrit :

1                  toujours 10..1 0 ou 1* ou 0..*0 à plusieurs1..* 1 à plusieursm..n de m à n (entiers naturels)

Page 94: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

94

Modélisation structurelle Classes d’association

Chaque lien de l’association est relié à un objet de la classe association.

Chaque objet de la classe association est identifié par les références aux classes reliées ; Il ne peut y avoir plusieurs liens entre les mêmes objets

On indique cette classe si le lien est porteur d’attributs ou d’opérations .

Une classe d’association peut être associée à d’autres classes

Personnenom

Diplôme

niveau

DiplômeObtenu date obtention

* * *

exercice

Page 95: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

95

*

Modélisation structurelle Rôle

Un rôle décrit la part prise par une classe dans une association, il est écrit sur l’association du coté de la classe correspondante

Le rôle permet de distinguer plusieurs associations entre les 2 même classes

*

Personne Ville*1

travailleur

 

résident

nom

Page 96: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

96

Modélisation structurelle Associations qualifiées

Le qualificatif permet de retrouver 1 ou n objets à l’autre bout de l’association il sélectionne certains objets)

Nom de fichier est un identifiant relatif pour Fichier

Banque

1 *compte Personne

1

1

Sans le qualificatif la multiplicité serait *

FichierRépertoire Nom de fichier

Page 97: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

97

Modélisation structurelle Associations qualifiées

Exercice

Comment modéliser les chambres d’une chaîne d’hôtels en indiquant que les hôtels ont la liberté de leur numérotation

Page 98: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 99: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

ChambreHôtelN°Chambre

11

Autre exemple

PersonneSociétéMatricule

1*

Emploi

Salaire

Page 100: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

100

Modélisation structurelle Contraintes d’intégrité sur

association

{ ou exclusif }

Musée

Statue

Site

Les contraintes d’intégrité sont de format libre, elles sont écrites entre accolades

Commune Personne habitant

Conseiller

municipal

*

*

1*

Sous-ensemble

Page 101: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

101

Modélisation structurelle Association réflexives

Un objet d’une classe peut être associé à un autre objet de la même classe

Personnel

1

chef

1

collaborateur

1..*

Page 102: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

102

Modélisation structurelle Associations n-aires

Des associations peuvent relier plus de 2 classes

Joueur

Record

Équipe Année

Gain

Un record est identifié par une équipe, un joueur,

une année

Page 103: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

N° place

Nom catégorie

Prix place

Date de représentation

Nom spectacle

Nom du metteur en scène

Nom acteur principal

Nom agence

Adresse de l’agence

N° de téléphone agence

N° billet

Nom du pompier de service

Heure de représentation

Date prise réservation

Exercice : Gestion des représentations d’un théâtre

Construire un diagramme de classes à partir des données suivantes :

Suite

Page 104: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

 

•Le théâtre propose des spectacles joués en une ou plusieurs représentations.Pour chaque spectacle, sont annoncés le nom du metteur en scène et du ou des acteurs principaux.

 

•Le théâtre peut offrir plusieurs représentations le même jour.

 

•Plusieurs spectacles peuvent être joués le même jour. En revanche, un seul spectacle est joué par représentation.

Suite

Respecter les règles de gestion suivantes 

Page 105: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

•Les agences de spectacles sont contractuellement autorisées à réserver des places par avance. Les autres clients doivent faire des achats fermes.

•Pour chaque place, à chaque représentation est attribué un billet lors de la vente.

•Le prix de la place est fonction de la catégorie de la place, et de la représentation

Page 106: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 107: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Billetnum billet

TarifPrix place

ActeurSpectaclemetteur en scène

1..*0..* 1..*0..*

principal

AgenceRéservationDate réservation

10..* 10..*

PlaceCatégorie1 *1 *

ReprésentationDate représentationHeure représentation 1* 1*

*

*

*

*

vendre

*

*

*

*

réserver*

1..*

*

1..*

Page 108: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

108

Modélisation structurelle L’agrégation

L’agrégation est une forme particulière d’association qui exprime un couplage plus fort entre classes.

L’agrégation permet de représenter les relations de type maître esclave, tout et partie, ou composé et composant.

Mission *

Agrégation simple

Développeur

Page 109: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

109

Modélisation structurelle Agrégation de composition

L’agrégat « possède » ses parties, Les partie sont « à l’intérieur » de l’agrégat ; Un

objet ne peut être l’élément de plusieurs agrégats. La destruction de l’agrégat entraîne la destruction

des parties

Commande LigneDeCommandequantitéCommandée

préparer

1..*11

ArticleréférenceArticle*datCom

Agrégation de composition

Page 110: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

110

Exercice

Un médecin veut modéliser des informations concernant ses patients, leurs consultations, leurs maladies.

Page 111: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 112: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

112

Exercice

Patient ConsultationDate

0..*1Nom

MaladieNom

0..*

0..*Atteint

de

Page 113: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

113

Modélisation structurelle Généralisation et

spécialisation

La généralisation consiste à factoriser les éléments communs (attributs, opérations, relations) d’un ensemble de classes dans une classe plus générale appelée super-classe.

Les sous-classes héritent des caractéristiques de leur super-classe

Page 114: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

114

Modélisation structurelle Généralisation et spécialisation

Fournisseur

régler()

Tiers

raisonSociale

Client

facturer()

Banque

Code

Fournisseur et client héritent de raison sociale et de l’association à banquefacturer est spécifique à Client; régler est spécifique à Fournisseur

Exemple:

Sous-classe

Super-classe

Page 115: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

115

Modélisation structurelle Généralisation et

spécialisation

Exemple:

Tiers

raisonSociale

Client

facturer()

Banque

Code

ClientNat ClientExport

TypeCrédit

Fournisseur

régler()

Devise

Page 116: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

116

Modélisation structurelle Généralisation et

spécialisation

ExerciceUne société d’archéologie vous demande de faire son diagramme de classe

Elle étudie des objets archéologiques, ces objets appartiennent à une nation; ils peuvent être des bâtiments, des statues ou des bijoux.

Tous ces objets peuvent se trouver dans un site, les statues et les bijoux peuvent se trouver dans un musée.Les bijoux peuvent aussi se trouver chez un particulier. On dispose d’informations sur les nations, les sites et les particuliers.

Page 117: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 118: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Objet Nation

Code

Bâtiment Musée

ParticulierStatue Bijou

ObjetMobile

Site

Exercice

0..1 * 1

* 0..1

0..1*

Page 119: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

119

Modélisation structurelleContrainte d’intégrité sur généralisation

Statue Bijou

Objet

Un objet archéologique ne peut pas être à la fois une statue et un bijou

{complétude}

Statue Bijou

Objet

Un objet archéologique ne peut être qu’une statue ou un bijou

{Ou exclusif}

Page 120: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

120

Modélisation structurelleClasse abstraite

Activité nom activité montant

planifier()

planifier()

Classe abstraite

Une classe abstraite ne peut être instanciée, ses sous-classes sont concrètes

{complétude}

lieu

planifier()

Entraineur

Classe concrète

Toutes les classes ont des propriétés spécifiques

Tennis Foot

Page 121: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

121

Modélisation structurelleReprésentation de l’architecture

Une bonne architecture doit permettre: La réutilisation La répartition du travail entre équipes L’étude d’impact lors des changements

fonctionnels, techniques et d’explitation

L’architecture est la description des différentes parties du système et de leurs relations

Page 122: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

122

Modélisation structurelleReprésentation de l’architecture

UML offre des notations destinées à découper

Le système d’information Le logiciel

À isoler les éléments du logiciel

Page 123: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

123

Représentation de l’architecture Les Paquetages

Un paquetage est un conteneur il permet de représenter l’organisation du système d’information et du logiciel.Il peut contenir tous les éléments de modélisation : des classes, des interfaces, des composants, des nœuds, des cas d’utilisation, des diagrammes, d’autres paquetages…

Page 124: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

124

Représentation de l’architecture Les Paquetages

Chaque élément est la propriété directe d’un paquetage unique.Le paquetage forme un espace de nommage Les paquetages sont représentés dans le diagramme de classe

Page 125: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

125

Modélisation structurelle Représentation de l’architecture

Architecture technique 1 paquetage= n éléments 1 composant=1 ou n classes

MétierCommande

Gestionarticles

paquetage

composant

classe

Page 126: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

126

Modélisation structurelleReprésentation de l’architecture

Les Paquetages livraison

(from vente)

article (from stock)

Commercial::Vente+ commande + client — livraison

java.io

Le paquetage venteappartient à commercial

dépendance

Paquetages leur contenu et leurs dépendances

Classe non visible à l’extérieur du paquetage

stock

+stockFaçade_article_ entrepôt

Classe livraisonappartient à vente

commercial

Page 127: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

127

Modélisation de la dynamique du système

Diagrammes d’interaction Diagramme de séquence Diagramme de communication

Diagramme d’activité

Diagramme État-Transition

Page 128: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

128

Modélisation de la dynamique du système

Les diagrammes d’interaction et d’activité précisent le texte du cas d’utilisation

Diagramme de classe

Cas d’utilisation

n diagrammes de séquence n diagrammes

d’activité

flot de base

Flots alternatifs

Texte

Lors de l’analyse des besoins,ils expriment les interactions entre les utilisateurs (acteurs) et le système.

Lors de l’analyse-conception, ils expriment les interactions entre les objets du système

Page 129: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

129

Modélisation de la dynamique Diagramme de

séquence

Un diagramme de séquence représente un ou plusieurs scénarios d’un cas d’utilisation (cas d’utilisation parent)

Pour un cas d’utilisation, il peut y avoir autant de diagrammes de séquence qu’il y a de scénarios 

Page 130: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

130

Modélisation de la dynamique Diagramme de

séquence

Le diagramme de séquence transforme la structure fonctionnelle, décrite par le cas d’utilisation en une structure objet

Il représente les messages que les objets doivent s’échanger pour réaliser la fonction.

Ces messages sont des appels d’opérations ou de groupes d’opérations. Ils sont effectués par des objets vers des objets.

Les objets sont des acteurs ou des objets logiciels.

Page 131: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

131

Modélisation de la dynamique Diagramme de

séquence

Acteur

: Accueil : activité : adhérent

Demande inscription activité

inscription

Demande supplément cotisation

Paiement

Un objet de la classe activité

MessageLa flèche est dans le sens du flux de contrôle

Ligne de vie de l’objet

Période d’activité de l’objet

retour

Page 132: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

132

Modélisation de la dynamique Diagramme de

séquence

Un objet ou un participant peut être anonyme, identifié, qualifié

: adhérent Martin : adhérent adhérent actif

Anonyme

QualifiéIdentifié

L’objet adhérent appartient à la classe adhérent

: adhérent

Adhérent est ici un objet du

logiciel

Page 133: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

133

Modélisation de la dynamique Diagramme de séquence, concepts

Acteur  Un acteur déclenche un scénario (il a été identifié dans le cas d’utilisation parent)

Scénario Un diagramme de séquence représente un ou plusieurs scénarios (flot de base, flots alternatifs). On peut représenter l’ensemble des scénarios d’un cas d’utilisation avec 1 ou plusieurs diagrammes de séquence

Page 134: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

134

Modélisation de la dynamique Diagramme de séquence, concepts

Événements (ou messages)Un diagramme de séquence montre les messages que les objets s’échangent.

Ces messages sont des événements : Ils déclenchent des opérations sur les

objets destinataires

Ligne de vie La durée de vie d’un objet est

matérialisée par une ligne verticale pointillée.

Page 135: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

135

Modélisation de la dynamique Diagramme de

séquence

ExerciceFaire le diagramme de séquence correspondant à cet

extrait du cas d’utilisation Règlement cotisations

Suite à un appel de cotisation (qui a été fait longtemps avant et qui, par conséquent est décrit dans un autre cas d’utlisation) les adhérents paient leur cotisation, le paiement est enregistré, les appels de cotisation correspondants sont mis à jour, un accusé de réception est retourné à l’adhérent

Règlement cotisationsAdhérent

Paiement

AppelCotisation

Quelles interactions doit-il y avoir entre les objets de ces classes pour réaliser le cas d’utilisation: Règlement de cotisation?

Page 136: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 137: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

137

Modélisation de la dynamique Diagramme de

séquence

unPaiement : Adhérent

unAppel Cotisation

paiementcotisation

accuséRéception

Page 138: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

: Client Client théatre : Activité

: Spectacle : Représentation

: Place Paiement

[client pas OK]Contrôle activité

[activité pas OK]

Contrôle client

[Réservation OK]

Flot de contrôle

Flot d’informations

Le flot d’informations est facultatif Il revient par le chemin inverse du flot de contrôle

Les messages sont synchrones par défautretour

Page 139: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

139

Diagramme de séquenceReprésentation des paramètres

: Client Client

Demande réservation(code client,code activité)

Opération

Paramètres

Le nom de l’opération peut être accompagné de ses paramètres

Client est un objet logiciel stéréotype

entité

Page 140: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

140

Diagramme de séquence, Représentation de plusieurs

scénarios

adhérent Un paiement Un appel cotisation

paiement

cotisation

Qualité du montant

Accusé réception

Avis solde

[Si montant OK]

[Else]

Alt

Par un cadre d’interaction

Page 141: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

141

Diagramme de séquence, Représentation de plusieurs

scénarios

Exercice

le service commercial doit la contrôlerSi elle n’est pas correcte, l’annulerSi elle est correcte,

Faire le bon de livraisonFaire la facture

Dans tous les cas mémoriser son état

A la réception de la commande:

Found message=la source du message est

indéterminée

Recevoir la commande

service commercial

Page 142: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 143: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Recevoir la commande

service commercial

Commande Livraison Facture

Contrôler

Refuser

Livrer

Facturer

Enregistrer l’état

Alt[Commande pas OK]

[else]

Page 144: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

15 octobre

Jardinier Plantoir Sol Bulbe

Prendre

Creuser

[Pour chaque bulbe]

Placer

Ranger

Diagramme de séquence, Représentation d’une itération

Par un cadre d’interaction

loop

Page 145: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

145

Diagramme de séquence, Représentation d’une itération

A la réception de la commande:le service commercial doit la contrôlerIl saisit la commandeIl contrôle que chaque article est en stockSinon, il annule l’articleSi la commande est OKIl fait la facture

Page 146: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 147: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Recevoir la commande

service commercial

Commande Article Facture

Saisir

Annuler l’article

En stock?

Facturer [Commande OK]

loop

[Article pas OK]

[Pour chaque article]

Page 148: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

148

Modélisation de la dynamique Diagramme de communication

Le diagramme de communication est une autre

forme de diagramme d’interaction

: Adhérent

:Paiement

: Appel cotisation

2:cotisation

1. paiement

3.Accusé de réception [montant O

K]

3.Avis de solde [écart]

Page 149: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

149

Modélisation de la dynamique Diagramme de

communication

                                  

adhérent

nom adhérent

activité

nom activitémontant

* ***

association

Correspondance avec le diagramme de classe

séquence

: Adhérent

:Paiement

: Appel cotisation

2:cotisation

1. paiement

3.Accusé de réception [montant O

K]

3.Avis de solde [écart]

Flux de contrôle

Message

Lien

Page 150: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

150

Modélisation de la dynamique Diagramme de

communication

Un lien est une connexion entre objets, qui indique

qu’une forme de navigation et de visibilité entre eux est possible, c’est une intance

d’association

: Adhérent

:Paiement

: Appel cotisation

2:cotisation

1. paiement

3.Accusé de réception [montant O

K]

3.Avis de solde [écart]

Flux de contrôle

Message

Lien

Page 151: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

151

Paiement

: Client

Client théatre : Activité

: Spectacle

: Représentation

: Place

1: Demande réservation

2: Contrôle client

3: [client pas OK]

4: Contrôle activité

5: [activité pas OK]

6:

7:

8: 9:

10:

11: 12:

13: 14: 15: [Réservation OK]

Modélisation de la dynamique Diagramme de communication

seqence

Représentation proche du diagramme de classe

Page 152: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

152

Diagrammes d’interaction et démarche

Diagramme de séquence Interactions entre les acteurs et le système (Analyse

des besoins) Interactions entre les objets logiciels (Analyse du

problème et conception)

Diagramme de communication Interaction entre les acteurs (Analyse des besoins) Diagramme de flux (Analyse des besoins) Interaction entre les objets logiciels

(Analyse du problème et conception) (surtout s’il n’y a pas de chronologie ou si on veut montrer les liens entre les objets)

classe système

Page 153: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

153

Modélisation de la dynamique Diagramme d’activité

Permet de représenter une logique procédurale, un processus métier, un workflowOn peut représenter le déroulement des actions dans des chemins alternatifs ou parallèles

Page 154: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

154

Modélisation de la dynamique Diagramme d’activité

Enregistrer

la commande

Contrôler Commande

Sortir article

Expédier Commande

Déroulement séquentiel des

actions d’’un processus

métier

Nœud initial

Action

Nœud final

Page 155: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

155

Diagramme d’activitéPartitions

Client Ventes Entrepôt

Enregistrer

la commande

Contrôler Commande

Sortir article

Expédier Commande

Workflow

Les partitions représentent les ressources qui réalisent les

actions

Ressource

Page 156: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

156

Diagramme d’activitéDécisions

Commander

Sortir article

Client Ventes Entrepôt

[OK]

[Pas OK]

Annulerla commande

Contrôler Commande

Sortir article

Expédier Commande

Chemins alternatifs

Enregistrer état Commande

OU

OU

Pour que l’action Enregistrer état commande s’exécute, il suffit q’une des actions précédentes soit terminée

Page 157: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

157

ExerciceLorsque le réveil sonne, prendre le petit déjeuner puis préparer le cartable (sauf le mercredi) puis, dans tous les cas, se laver

Modélisation de la dynamique Diagramme d’activité

Page 158: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 159: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Sonnerie réveil

Déjeuner

mercredi?

Préparer cartable

Se laver

non

oui

Page 160: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

160

Les diagrammes d’activitéBarre de synchronisation

Préparer Commande

Ventes Entrepôt

Contrôler Commande

[OK]

[Pas OK]

Commande expédiée

administration

Préparer bon livraison

Contrôler Commande

Préparer bonlivraison

Barre de synchronisation(fork)

Barre de synchronisation(joint)

Chemins parallèles

ET

Page 161: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

161

Les diagrammes d’activitéBarre de synchronisation

Explication du schéma précédent Si le contrôle de la commande est satisfaisant (OK) on peut faire le

bon de livraison et préparer la commande, dans n’importe quel ordre successivement ou parallèlement

Pour expédier la commande il faut que sa préparation soit terminée et que le bon de livraison soit fait

Chemins parallèles

Page 162: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

162

Exercice lorsque le réveil sonne

Lorsque le réveil sonne, l’homme commence par prendre sa douche.

Au sortir de la douche, il réveille sa femme et effectue sa gymnastique

Ensuite, il prépare le petit déjeuner pour sa famille, et enfin prépare la voiture pour le départ

  La femme, à son réveil, fait sa toilette matinale, puis

prépare les cartables des enfants – sauf le mercredi – et enfin prend son petit déjeuner avec les enfants.

Tout le monde se retrouve ensuite en voiture l’homme fait l’inspection finale et la mise en route.

Page 163: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 164: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Sonnerie réveil

Douche

Gym

Préparation petit déjeuner

Préparation voiture

Inspection et mise en route

Famille en route

Toilette

Préparation cartable

Petit déjeuner

Mercredi?

[ Non ] [ Oui ]

FemmeHomme

Exercice

Page 165: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

165

Les diagrammes d’activitéDécomposition d’une action

Les actions peuvent être décomposées en sous-activités.On peut ainsi décrire un processus globalement puis l’affiner progressivement

Page 166: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Réception commande

Exécution commande Envoi facture

Traitement paiement

Livrer

Clore l'ordre

Le rateau signifie que l’action est

décomposable en sous activités

Page 167: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Livrer

Livraison normale

Livraison urgente

Livraison normale

Livraison urgente

Exécution commande

Clore l'ordre

Page 168: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

ExerciceDétailler l’exercice: « lorsque le

réveil sonne »Pour préparer le petit déjeuner l’homme sort les

ingrédientsSi le café manque, il prend du thé.Il prépare soit le thé soit le caféIl dresse la table

Page 169: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Préparation petit déjeuner

Sortir ingrédients

Préparer café

Préparer thé

Dresser la table

Sortir ingrédients

Préparer café

Préparer thé

Dresser la table

Gym

Homme en forme

Petit déjeuner

Préparation voiture

Page 170: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

170

Les diagrammes d’activitéInvocation d’une méthode

Dans une action, on peut invoquer une méthode

Livrer

Livraison normale

Livraison urgente

Livraison normale

Livraison urgente

Exécution commande

Clore l'ordre

Ordre::SuppressOrder

Nom de la

classe

Nom de la

méthode

Page 171: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

171

Les diagrammes d’activitéSignaux

Signal temporelUne activité écoute ces signaux en permanence, ils constituent un événement d’un processus extérieur, le diagramme définit comment l’activité réagit à ces événements

Page 172: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Faire les bagages

Partir pour l'aéroport

Taxi arrive

2 heures

avant le vol

Je ne pars à l’aéroport que si mes bagages sont faits et si le taxi est arrivé

L’action Partir pour l’aéroport accepte le signal Taxi arrive

Une action peut aussi émettre des signaux

Signal tempor

el

Signal accepté

Page 173: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Réserver l’itinéraire

Retenir itinéraire

Annuler itinéraire

Itinéraire confirmé

Envoyer l’itinéraire

Signal émis

Signal accept

é

Attendre 48 heures

Page 174: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

ExerciceUne commande Fournisseur est rédigée puis envoyéeA la réception de l’accusé de réception, la commande est validée.Si 2 semaines après l’envoi de la commande, l’accusé de réception du fournisseur n’est toujours pas parvenu, la commande est annulée

Page 175: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 176: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Rédiger commande

Commande validée

Annuler commande

Accusé de réception

Envoyer commande

Attendre 2 semaines

Page 177: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

177

Région d’expansion

Une région d’expansion délimite dans un diagramme d’activité une zone ou les actions s’exécutent une fois pour chaque élément d’une collection

Page 178: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Choisir un thème

Ecrire l’article

Relirel’article

Publierla revue

« concurrent »

On écrit n article, chacun est relu. Les différents articles peuvent être écrits en même temps

Région d’expansion

Page 179: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Exercice

Contrôle d’une commande:

On contrôle le client

On contrôle l’existence et la présence en stock de chaque article

Si tout est correct, on établit une facture

Sinon on refuse la commande

Page 180: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Contrôle client

Existence de l’article

Contrôle stockde l’article

Etablirla facture

Page 181: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

181

Modélisation de la dynamique Les diagrammes d’activité

Activités et flot d’objets Dans un diagramme d’activité, il est

possible de faire apparaître clairement les objets créés, détruits ou modifiés, par une activité. .

Les objets modifiés sont indiqués par des flèches en pointillé.

CommanderEtablir Devis D : Devis[établi]

Page 182: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

182

Modélisation de la dynamique Les diagrammes d’activitéActivités et flots d’objets

Préparer commande

Client Ventes Entrepôt

[OK]

[Pas OK]

Commande annulée

Commande expédiée

Décisioncommande[préparée]commande[préparée]

commande[contrôlée]

Enregistrer

la commande

Contrôler Commande

Expédier Commande

Page 183: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

184

Modélisation de la dynamique Diagramme État-

Transition Concepts

État Un objet passe par différents états au cours de

son existence

Un état est une situation au cours de la vie d’un objet pendant la quelle il satisfait certaines conditions, exécute certaines activités ou répond à certains événements

L’état d’un objet est matérialisé par la valeur de certains de ses attributs et par ses liens

Page 184: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

185

Modélisation de la dynamique Diagramme État-

Transition Concepts

TransitionsUne transition représente le passage d’un état à un autre

ÉvénementsUn événement est un stimulus qui peut déclencher une transition d’état

Page 185: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

186

Modélisation de la dynamique Diagramme état-

transition

Le diagramme d’états-transitions représente:

Les différents états possibles d’un objet Les opérations qui peuvent être exécutées

dans cet état Les événements qui provoquent des

transitions d’un état à un autre.

Page 186: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Diagramme état-transition

commande

commande valide entry: mise en attente exit/^: bon de préparation

commande invalide

commande servie

commande en enregistrement entry: contrôle client

do: contrôle articleUrgence / prioritéexit: décision

prise en compte commande

[ non ] [oui ]

[ stock OK ] / ordre de servir

Etat initial

Etat final

Commande refusée

Evénement déclencheur

condition

Opération courte pendant la transition

Opération courte pendant l’état

Opération longueDurée de l’état

Événement qui ne change pas l’état

Activité

Envoi d’événement

Page 187: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

188

Modélisation de la dynamique Diagramme état-

transition

Plusieurs types d’opérations:  Une opération longue ou activité

se prolonge autant que dure l’état est précédée de la mention  do:

Opérations courtes ou actions pratiquement sans durée:

 

Page 188: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

189

Modélisation de la dynamique Diagramme état-

transition

Opérations courtes ou actions, pratiquement sans durée:

Précédées de entry lorsqu’elles s’exécutent au moment ou l’objet entre dans le nouvel état 

Précédées de exit lorsqu’elles s’exécutent au moment ou l’objet sort d’un état

Précédées de: / lorsqu’elles sont déclenchées par un événement

 

Page 189: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

190

Modélisation de la dynamique Diagramme état-

transition Conditions

Les conditions sont encadrées par des crochets

Une condition peut avoir une certaine durée alors qu’un événement est instantané

Condition:Je sors si le temps est beau

Événement: s’il se met à pleuvoir, je rentre

Page 190: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

191

Modélisation de la dynamique Diagramme état-

transition

Monter le diagramme d’états-transitions représentant les différents états que peut prendre, au sens de l’état civil, la classe INDIVIDU

Exercice

Page 191: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 192: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Exercice

CÉLIBATAIRE

Naissance

MARIÉ DIVORCÉ

VEUF

DÉCÉDÉ

Décès individu

Contrat de mariage signé

Jugement de divorce

Contrat de mariage signé

Contrat de mariage signé

Décès conjoint

PACSÉ

Contrat PACS signé

Contrat PACSE signé

Contrat PACSE signé

iDécès individu

Rupture contrat

Page 193: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

194

Modélisation de la dynamique Diagramme état-

transition Sous- état  

Un sous- état est un état emboîté dans un autre état.

Un état composé peut contenir soit des sous-états concurrents, soit des sous-états séquentiels

Page 194: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

195

Modélisation de la dynamique Diagramme état-transition Sous-état

Sous-état séquentiel

Plante en croissance

Plante non mure

Plante à maturité

on Disponibilité[ temps favorable ]: Récolter

do: Arroser

Plante récoltée

Plante non mure

Plante à maturité

Disponibilité[ temps favorable ] / Récolter

Page 195: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

196

Modélisation de la dynamique Diagramme état-transition Sous-état

Plante semée

Plante en hibernation

Plante en croissance

Plante récoltée

Bonne pratique

On fait d’abord un diagramme global, pour avoir une vision d’ensemble, puis on affine en recherchant les états emboîtés.

Page 196: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

197

Modélisation de la dynamiqueDiagramme d’états concurrents et

synchronisation

Préparation

Emission

do: Distribuer billetsexit: billets pris

do: éjecter carteexit: carte prise

Prêt à initialiserdo: Distribuer billetsexit: billets pris

do: éjecter carteexit: carte prise

Ce distributeur de billets fournit les billets ou la carte dans un ordre indifférent

Fork

joint

Page 197: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

198

La modélisation de l’implémentation Les Composants

Les composants sont des éléments physiques comme les exécutables, les composants Com, les EJB, les bibliothèques, les tables, les fichiers et les documents

Un composant peut réaliser une interface définie dans le modèle logique

Généralement, les services d’un composant sont disponibles uniquement à travers leur interface

Page 198: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

199

La modélisation de l’implémentation Les Composants, organisation

On peut regrouper les composants en paquetages

Les composants sont des éléments de la gestion de configuration.

On détermine les composants à partir des cas d’utilisation et des postes de travail. Les composants sont distribués sur les postes de travail

Page 199: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

200

La modélisation de l’implémentation

Les Composants

La distribution des composants permet un découplage entre les applications et le métier

et facilite La réutilisation La maintenance La flexibilité

Page 200: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

201

La modélisation de l’implémentation ……………….…... Développement par composants

On créé un système à partir de composants,

On le fait évoluer En ajoutant de nouveaux composants En remplaçant les anciens

Sans avoir à reconstruire le systèmegrâce aux interfaces

Page 201: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

202

La modélisation de l’implémentation

Diagramme de composants

Servir

disponibilité

Le composant Servir contient les classes Article et Entrepôt

Livraison

interfaces

Article

+contrôle stock()+contrôle stock()+préparation()

<<Interface>>disponibilité

Entrepôt

+préparation()

livraison

Page 202: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

203

Modélisation du déploiement

Nœud Un nœud représente une ressource de

calcul Un composant peut être déployé par un

ou plusieurs nœud

Page 203: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Diagramme de déploiement

Client 1

Serveur

Client 2

Livraison

Servir« support »

« support 

»« support »

Page 204: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.
Page 205: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

206

Description des processusDe l’analyse des besoins à la conception

: client : sol : plante : commande : client client : cotiser

Acheter

: végétal : client

systèsystème

effectuez votre choix

type de végétal

pourquoi?(de l'ombre?des fruits?des fleurs?)

des arbres

réponse

nature du sol

ensoleillement

Planche de fruits

idem

idem

idem

des fruits

choix de fruit

planche de fleurs

choix de fleurs

des fleurs

idem

planche de silhouettes

de l'ombre

choix de silhouette

liste de choix possibles

idem

idem

Diagramme de séquence système

Diagramme de séquence objet

logiciel

Le diagramme de séquence

retour

Page 206: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Représentation du dialogue entre l’acteur et le système.On représente les flux de données•Quelles données sont saisies•Quelles données sont affichées.•Eventuellement les traitements importants effectués par le système.

: clientsystèsystème

effectuez votre choix

type de végétal

pourquoi?(de l'ombre?des fruits?des fleurs?)

des arbres

réponse

nature du sol

ensoleillement

Planche de fruits

idem

idem

idem

des fruits

choix de fruit

planche de fleurs

choix de fleurs

des fleurs

idem

planche de silhouettes

de l'ombre

choix de silhouette

liste de choix possibles

idem

idem

Cas d’utilisation

Scénario

DiagrammeSéquence

1 1..*1

1..*0..* 0..1

Diagramme séquence système

Diagr. séquence objets logiciel

Opération système

Page 207: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Les opérations système

Opérations système

:système

: RespFormation

initialiserFormation (titre, durée, prix)

creerFormation( )

creerContenu( )

creerContenu( audience, prerequis, objectifs, outils, plan )

creerSession(date debut, lieu)

creerSession()

gestion Catalogue

Exemple

ConseilUn diagramme de séquence par fonction (Créer, Modifier, Supprimer, Editer, ../)

: RespFormation

Page 208: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

209

Identifier les opérations système

creerFormation()creerContenu()creerSession() creerFiliere()modifierFormation()modifierContenu()modifierSession()modifierFiliere()…..

:Système:système

: Utilisateur

initialiserFormation (titre, durée, prix)

creerFormation( )

creerContenu( )

creerContenu( audience, prerequis, objectifs, outils, plan )

creerSession(date debut, lieu)

creerSession

retour

Page 209: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

210

Page 210: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Description des données

Référence matière,Adresse de l'élève,Nombre d'heures,Nom de la classe,Nom de l'élève,Nom du professeur,Valeur de la note,Numéro de salle,Prénom de l'élève

Règles de gestion A chaque classe est attribuée

une seule salle de cour

Chaque matière est enseignée par un seul professeur

Pour chaque classe et chaque matière est défini un nombre fixe d'heures de cours

A chaque élève est attribuée une seule note par matière

L'établissement scolaire gère les emplois du temps des professeurs, des élèves et le contrôle des connaissances.

retour

Page 211: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

212

Page 212: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

Classe/Matière

NombreDheures

Elève

nomElèveprénom élèveadresseElève

Classe

nomClassenuméroSalle

1*

Matière

référenceMatièrenomProfesseur

1..*

*

*

0..*

Elève/Matière

ValeurNote

1*

1..*

* 0..*

*

appartient

Page 213: Unified Modeling Language 2 Plan du cours 1. Caractéristiques de lobjet Caractéristiques de lobjet 1. Modes de développement Modes de développement 2.

214